?

两款可绕过双因素认证的钓鱼攻击工具

研究人员发布了两个工具——Muraen和NecroBrowser。它们可以自动绕过2FA进行钓鱼攻击,大多数防御措施都无法抵御它们。

钓鱼攻击

渗透测试人员和攻击者为他们的武器库添加了一个新的工具,这种工具可以绕过双因素身份验证(2FA) 自动化钓鱼攻击,而此过程不易被检测和阻止。该工具使此类攻击更容易部署,因此组织机构应该相应地调整其反钓鱼培训。

这个新工具包在上个月阿姆斯特丹举办的黑客大会 (Hack in the Box) 上发布,几天后在GitHub上发布。它有两个组件:一个被称为Muraena的透明反向代理和一个被称为NecroBrowser 的Docker容器(用于自动化无头Chromium实例)。

中间人式攻击

大多数人所熟悉的传统网络钓鱼攻击是由虚假登录页面组成的,这些页面在攻击者控制的web服务器上,并由与目标网站名称相似的自定义域名提供服务。然而,这种静态攻击对使用双因素身份验证的在线服务无效,因为没有与合法网站进行交互来触发生成一次性代码。没有这些代码,攻击者就无法使用钓鱼凭证登录。

为了绕过2FA,攻击者需要让他们的钓鱼网站充当代理,代表受害者转发请求到合法网站,并实时回传。最终目标不仅是为了获取用户名和密码,而是真正网站用来关联登录账号的活动会话令牌(也被称为会话cookie)。通过将这些会话cookie放在浏览器中,可以直接访问与它们关联的帐户,而不需要进行身份验证。

这种基于代理的技术并不新鲜,人们一直知道它们的存在,但是进行这样的攻击需要技术知识,并且需要配置多个独立的工具,比如将NGINX web服务器当做反向代理使用。准备好工具后,攻击者需要在窃取的会话cookie过期之前手动使用它们。此外,有些网站使用子资源完整性 (Subresource Integrity, SRI) 和内容安全策略 (Content Security Policy, CSP) 等技术来防止代理,有些网站甚至会根据标题来屏蔽自动化的浏览器。

Muraena和NecroBrowser的出现是为了破解这些防御措施,并使大部分过程自动化。这意味着现在很多攻击者可以发起绕过2FA的钓鱼攻击。这些工具是由浏览器开发框架项目 (Browser Exploitation Framework Project , BeEF) 的前核心开发人员Michele Orru和Bettercap项目的成员Giuseppe Trotta共同开发的。

Muraena和NecroBrowser是如何工作的?

Muraena是用Go编程语言编写的,这意味着它可以在任何Go可用的平台上被编译和运行。一旦部署完成,攻击者就可以配置他们的钓鱼域名,并为其获得合法的证书——例如,通过非营利性的Let's Encrypt证书颁发机构。

该工具包含一个充当反向代理的小型web服务器和一个爬虫程序。该爬虫程序可以自动确定从合法网站代理哪些资源。代理在传递来自受害者的请求之前重写这些请求。

爬虫程序会自动生成一个JSON配置文件,然后可以手动修改该文件来绕过更复杂网站上的各种防御机制。该软件包包括对谷歌、GitHub和Dropbox的示例配置文件。

一旦受害者登陆一个由Muraena提供支持的钓鱼网站,登录过程就会和真正的网站完全一样。网站会要求用户输入他们的2FA验证码。当他们提供验证码并完成身份验证之后,代理会窃取会话cookie。

会话令牌通常由浏览器存储在一个文件中,并在后续请求中提供服务。这种方法可以使网站自动向浏览器提供一段时间内不需要密码登陆而(会话长度)访问帐户的权限。Muraena可以自动将收集到的会话cookie传送给它的第二个组件NecroBrowser,而NecroBrowser可以立即开始滥用这些cookie。

NecroBrowser是一个可以通过API进行控制的微服务,进行配置以后可以通过在Docker容器内运行的Chromium无头实例执行操作。根据可用的服务器资源,攻击者可以同时生成数十个或数百个这样的容器,每个容器都有一个从受害者那里窃取的会话cookie。

僵尸浏览器实例执行的操作可以完全自动化。例如,根据账户类型的不同,可以对电子邮件进行截屏、启动密码重置、将恶意密钥上传到GitHub或者在邮箱添加恶意转发地址。浏览器实例还可以用来收集社交网络上联系人和朋友的信息,甚至可以通过类似蠕虫的攻击向这些朋友发送钓鱼信息。

如何防范自动钓鱼攻击

不幸的是,很少有技术解决方案能够完全在服务器端阻止这种钓鱼攻击。Muraena的出现说明SRI和CSP等技术的效果有限,攻击者可以以自动化的方式绕过它们。此外,该工具表明2FA不是一个完美的解决方案。

相关推荐
新闻聚焦
猜你喜欢
热门推荐
  • 微软AI面试题有多难?这里有一份样卷

      究竟什么样的AI人才能被微软这样的巨头聘用呢?今天,文摘君就淘来了几道微软AI 面试题,同时给出了最基本的解答......

    06-25????来源:澎湃新闻网

    分享
  • 全球最聪明的大脑怎么看AI?他们预测了

      2017年AI领域取得了诸多成果。2018年AI又将何去何从?以下是来自世界顶级研究人员和行业领军人物对2018年AI领域发展作......

    02-20????来源:虎嗅网

    分享
  • 2017JavaScript框架战报 - React分战场

      我们来看看与React有关的软件包的生态系统。当Facebook构建React时,就有许多来自开源社区的第三方软件包。为提供完......

    02-27????来源:湖北新闻网

    分享
  • 小白学数据:教你用Python实现简单监督学

      监督学习作为运用最广泛的机器学习方法,一直以来都是从数据挖掘信息的重要手段。即便是在无监督学习兴起的近......

    03-05????来源:今日头条

    分享
  • 现代编程语言Swift、Kotlin等十大有趣功能

      最近学习了一些现代编程语言,比如Reason,Swift,Kotlin和Dart。这些编程语言提供了许多新功能,本文主要分享了我认......

    04-29????来源:祁东新闻网

    分享
  • 领域场景分析的6W模型

      组成场景的要素常常被称之为6W模型,即描写场景的过程必须包含Who,What,Why,Where,When与hoW这六个要素。......

    04-30????来源:砍柴网

    分享
  • 开源应用服务器WildFly 12发新季度交付模式

      WildFly 12 Final版本现在已经可以下载了,WildFly是一款灵活的开源应用服务器,支持开发人员构建轻量级应用程序。支持......

    05-10????来源:青岛新闻网

    分享
  • 基于Spring Cloud的微服务落地

      微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务。但如果要将微服务架构运用到生产项目上,......

    06-04????来源:广西新闻网

    分享
  • 为什么阿里工程师纷纷在内网晒代码?

      前阵子,在阿里一个小黑屋里,5名对代码有着极致追求的工程师参与阿里代码领域最高荣誉“多隆奖”的最终角逐。......

    06-08????来源:四川新闻网

    分享
  • 超级大汇总!200多个最好的机器学习、

      我把这篇文章分为了四个部分:机器学习,自然语言处理,python和数学。在每个部分中我都列举了一些主题,但是因......

    09-25????来源:洛阳新闻网

    分享
返回列表
Ctrl+D?将本页面保存为书签,全面了解最新资讯,方便快捷。