如何在不使用黑客工具的情况下测试中间人攻击
本网络研讨会最初于2025年3月13日播出。在本视频中,Michael Allen讨论了如何在不使用黑客工具的情况下测试中间人攻击。他深入探讨了凭证收集的复杂性、多因素认证(MFA)的演变,以及攻击者如何调整策略以绕过安全措施。Michael提供了识别弱MFA方法的见解,并提供了加强安全的实用步骤,强调了使用FIDO2通行密钥作为对抗中间人攻击的强大防御的重要性。
凭证收集攻击的演变
凭证收集攻击的演变突显了攻击者不断适应安全措施(如多因素认证)的能力。中间人攻击利用攻击者的计算机拦截登录凭证,包括会话令牌,从而绕过传统的MFA安全措施。FIDO2通行密钥代表了MFA的重大进步,它使用公钥加密技术确保认证与用户物理拥有的设备绑定。
攻击者的适应策略
最初,攻击者创建了凭证收集攻击,通过设置虚假登录门户(如克隆真实网站或创建带有公司标志的虚假网站)来诱骗用户输入凭证。在多因素认证出现之前,这些凭证可用于访问VPN、虚拟桌面基础设施(VDI)、单点登录门户、电子邮件、SharePoint等。但随着MFA的普及,仅凭用户名和密码已不足以访问许多服务。
攻击者开始调整策略,例如在凭证收集页面添加虚假的MFA表单,或通过社会工程学手段(如SIM交换攻击)获取MFA令牌。但这些方法需要多次攻击同一用户,增加了失败的风险。另一种方法是寻找MFA部署的漏洞,但随着时间的推移,这些漏洞越来越小。
中间人攻击的工作原理
中间人攻击通过攻击者的服务器拦截受害者和真实登录门户之间的通信。攻击者的服务器充当反向Web代理,将受害者的请求转发到真实门户,并将响应返回给受害者。在这个过程中,攻击者捕获用户名、密码和会话令牌,从而绕过MFA。
会话令牌是Web应用程序用于识别用户身份的关键。攻击者通过捕获会话令牌,可以无需用户名和密码或MFA令牌即可访问用户账户,这种攻击称为会话劫持。
中间人攻击的工具类型
- 基于代理的工具:如Evil Jinx或Modlishka,攻击者的服务器充当反向Web代理,拦截和转发通信。
- 基于浏览器的工具:如Cuttlefish和Evil Novnc,受害者通过攻击者的浏览器登录真实门户,攻击者捕获会话令牌。
- 人工驱动工具:攻击者实时监控凭证收集页面,手动使用捕获的凭证登录真实门户,并通过社会工程学手段获取MFA令牌。
防御中间人攻击的关键
所有中间人攻击的共同点是登录请求始终来自攻击者的计算机。因此,防御的关键是识别登录是否来自攻击者的计算机。传统的检测方法(如识别可疑IP地址或设备)对高级攻击者无效,因为他们可以使用合法的IP地址和模仿受害者设备的工具。
真正的多因素认证应基于“所知+所有”的原则,但许多MFA方法(如一次性密码、推送通知)实际上并非基于“所有”因素。FIDO2通行密钥通过公钥加密技术真正实现了“所知+所有”的认证,确保只有物理拥有设备的用户才能完成认证。
测试MFA的安全性
通过模拟中间人攻击,可以测试MFA方法的安全性。例如,让远程用户使用你的凭证登录账户,并观察哪些MFA方法可以被绕过。测试结果显示,电话通知、一次性密码、推送通知加代码等方法均不安全,而FIDO2通行密钥(如Yubikey或智能手机)能够有效防御中间人攻击。
实施建议
- 识别组织中允许的弱MFA方法和安全MFA方法。
- 为所有用户启用安全MFA方法(如FIDO2通行密钥)。
- 禁用弱MFA方法,防止用户重新启用。
- 如果无法全面部署安全MFA,优先为高风险账户(如管理员、高管)启用。
- 替代方案包括禁止外部IP地址的Web登录或实施基于证书的设备认证。
结论
中间人攻击是绕过MFA的有效手段,但通过使用FIDO2通行密钥等安全MFA方法,组织可以显著提高安全性。测试和识别弱MFA方法是加强防御的第一步,建议尽快部署安全MFA以保护关键账户和数据。
本文内容基于Black Hills Information Security的网络研讨会,由Michael Allen分享的实用技术和见解。