EvilProxy AiTM—第二部分:检测技术
中间人攻击(Adversary in the Middle)利用EvilProxy作为钓鱼威胁正在持续增长,其能够窃取MFA令牌的能力使其快速成为钓鱼的主要手段。
这是系列博客的第二部分——第一部分可通过以下链接查看我在蜜罐租户中的攻击演练: https://medium.com/@martinconnarty/adversary-in-the-middle-part-1-walkthrough-2c91fb00197
以下是我总结的一些检测思路。随着不断学习,这些方法将持续演进。
租户背景图像检测
我观察到多数中间人攻击页面会利用一项功能加载受害者租户的背景图像(当然前提是存在该图像)。作为防御方,如果我们拥有适当类型的日志(包含URL和引用来源的Web代理日志),就能实现一些检测!
AiTM页面通常会直接从authcdn拉取图像:
https://aadcdn.msauthimages.net/<唯一租户ID>/logintenantbranding/0/illustration?ts=
如何查找租户ID?
- 访问 https://login.microsoftonline.com
- 打开开发者工具(Ctrl+Shift+I)
- 切换到网络标签页
- 输入或选择邮箱——这将触发背景加载
- 选择‘illustration?ts…’的URL——右键点击‘复制链接地址’
- 您将获得类似格式的URL:
https://aadcdn.msauthimages.net/52ksdjfklj-kdr3246598sgljsdlfk-j2-k287s84lsj3j/logintenantbranding/0/illustration?ts=638307426057595200
- 唯一租户字符串即为:
52ksdjfklj-kdr3246598sgljsdlfk-j2-k287s84lsj3j
优先缓解——在背景图像上添加覆盖层
建议首先在背景图像上设置覆盖层(配置地址:https://entra.microsoft.com/#view/Microsoft_AAD_UsersAndTenants/CompanyBrandingOverview.ReactView)
如果能让用户每次看到登录页时检查URL,或许能阻止大量此类攻击。可参考以下设计: (自由取用!)
效果类似: ![示例覆盖层设计]
检测可疑引用来源——直接访问场景
通过对Web代理日志中的引用来源建立基线,我们通常观察到它们来自合法的Microsoft页面,如https://login.microsoftonline.com/
发现其他来源时应立即调查并创建新规则:
|
|
检测代理请求——中转访问场景
|
|
注意:预计未来AiTM工具包会相应调整,因此防御策略也需持续演进。培养用户检查URL栏的习惯将是更可靠的防护措施。
Azure日志中的请求检测
这种方法较为复杂,但在已观察的案例中,尝试登录通常来自非常规应用或地理位置。常见模式是在短时间内出现多个地理位置,且与钓鱼点击时间吻合。
待开发——用于检测用户地理位置异常波动的Splunk规则(示例草案):
|
|
检测工程仍在持续进化,与威胁对抗的过程需要不断调整策略。用户安全意识教育结合技术检测才能构建纵深防御体系。