钓鱼手法鉴赏 | 绕过微软账号的多因素认证

admin 2023年7月24日11:37:34评论24 views字数 2781阅读9分16秒阅读模式
钓鱼手法鉴赏 | 绕过微软账号的多因素认证

背景

多因素身份认证,是一种验证用户身份的方式。当我们需要登录网络账户时,通常通过用户名和密码完成身份验证, 而多因素身份认证相对于传统的身份认证,需要两个或以上的身份验证因素,常见的如手机号验证、手机APP验证等。本文将以微软账号为例,从网络钓鱼攻击的角度探讨多因素认证的安全性。


01 AiTM网络钓鱼

AiTM Phish是微软起的,全称是adversary-in-the-middle Phish,如下图,简单理解就是通过“中间人”进行网络钓鱼。其中比较典型的是利用反向代理服务构建“中间人”,利用反向代理服务器的特性,攻击者可以搭建以假乱真的钓鱼网站。当受害者成功登录后,攻击者能通过“中间人”钓鱼网站,获取登录过程中的会话信息从而绕过多因素认证。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  AiTM Phish拦截身份验证过程


在开源社区中已有相当成熟的反向代理钓鱼利用工具包,其中较为著名的是Evilginx2,这类工具包功能强大的同时也易于部署,也让攻击成本更低廉、并且更加自动化。下面的例子中使用Evilginx2尝试搭建百度网盘的钓鱼网站,验证后成功登录百度网盘,并在后台捕获到百度网盘的会话日志。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  反向代理百度网盘登录页面


钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  捕获百度网盘登录会话日志


但是当我代理并访问live.com时,发现无法正常打开微软账号登录页面,明显是微软对该类型的攻击采取了安全措施。除此之外还可以利用“间接反向代理”,区别于“传统反向代理”,如下图“间接反向代理”并不是直接转发受害者和目标网站之间的流量,而是通过构建单独的登录页面和MFA请求页面诱导受害者进行身份验证,在捕获到受害者凭据的同时进行目标网站模拟登录,然后向受害者提供伪造的多因素验证界面,当受害者通过多因素认证后再自动向目标网站提交额外的验证代码,最终攻击者成功截获会话Cookie并将受害者重定向到其他页面。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  “间接反向代理”拦截身份验证过程


该方式相比传统的反向代理钓鱼,由于需要提交凭据和多因素认证自动登录目标网站,所以无法做到同时适配多个网络钓鱼,但是在针对某个网站进行定向钓鱼时,极难被安全措施阻止,下图是针对微软账户的“间接反向代理”网络钓鱼。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  针对微软账户的“间接反向代理”网络钓鱼


02 OAUTH协议利用

OAUTH(Open Authorization)协议为用户身份认证授权提供了一个安全的、开放而又简易的标准。很多大公司都提供了OAUTH认证服务。OAuth授权有如下几个阶段,如图:

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  qq oauth协议授权过程


攻击者通过注册合法的第三方OAUTH服务器,通过发送正常的授权url,诱导受害者点击允许后攻击者将获得相关访问权限。如图,为微软账号的OAUTH授权页面,受害者点击允许后,攻击者会获得授权码,进而接管账户权限。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  微软oauth授权认证页面


03 WebView2技术利用

WebView2是一种将Web技术(HTML,CSS和JavaScript)嵌入到本机应用程序中的技术。WebView2 技术可用于创建可执行文件,该可执行文件可以像浏览器一样与 Web 应用程序进行通信。


攻击者可以使用WebView2技术将任意网站封装成看似正常的应用程序,在用户进行身份验证后提取 Cookie,最终绕过MFA的防护。如下图,攻击者将office.com封装进了WebView2应用程序,当受害者双击运行该WebView2应用程序登录自己的office账户时,攻击者利用WebView2的特性盗取了用户的Cookie。


攻击者利用WebView2还可以盗取浏览器保存的所有认证数据,只需要给Webview2指定在UDF下启动,并在双击启动后把保存cookie的文件传输回攻击者服务器,UDF保存了浏览器的密码、cookie、会话、书签等。如:chrome浏览器的默认UDF是C:Users\AppDataLocalGoogleChromeUser Data,当 WebView2 程序使用此配置文件启动时,即可盗取chrome浏览器保存的所有网页认证数据,最终导致所有相关网站的MFA防护被绕过。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  WebView2应用程序登录过程的会话被盗取


04 基于Web的桌面共享利用

简单来讲,攻击者通过利用基于Web的远程桌面协议(例如:noVNC/teamviewer等),将自己的服务器桌面通过链接的形式共享出去,受害者访问链接就会访问到攻击者的服务器桌面,如下图。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  访问通过noVNC共享的远程桌面


此时只需要在远程桌面会话中启动微软账户登录页面,然后将页面全屏,让受害者误以为访问链接后进入了微软账户登录页面即可,如下图。一旦受害者进行登录操作,就等同于在亲自在攻击者的电脑上登录了自己的账户。攻击者可以在其认证成功后断掉vnc连接,也可以在浏览器中盗取Cookie或者键盘记录等等......


当然攻击者还可以进一步优化攻击过程,比如:修改浏览器访问vnc的显示样式、注册高仿域名、搭配浏览器的Kiosk模式,完全可以达到以假乱真的效果。

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

图  通过noVNC共享的微软登录页面


05 写在最后

文中的几种方法多是对正规技术的恶意利用,所以无法从技术方法上形成有效的拦截,而这也是社会工程学攻防的魅力所在。但这并不意味着多因素身份认证毫无用处,相反多因素身份认证(MFA)的广泛应用,极大的减少了因账号密码失窃导致的风险,但是过分依靠MFA机制显然是不可取的,随着网络技术迭代,多因素身份认证可能也将面临新的挑战。


技术交流

知识星球

致力于红蓝对抗,实战攻防,星球不定时更新内外网攻防渗透技巧,以及最新学习研究成果等。常态化更新最新安全动态。专题更新奇技淫巧小Tips及实战案例。

涉及方向包括Web渗透、免杀绕过、内网攻防、代码审计、应急响应、云安全。星球中已发布 300+ 安全资源,针对网络安全成员的普遍水平,并为星友提供了教程、工具、POC&EXP以及各种学习笔记等等。(点我了解详情)

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

学习圈子

一个引导大家一起成长,系统化学习的圈子。如果看到这里的师傅是基础不够扎实/技术不够全面/入行安全不久/有充足时间的初学者...其中之一,那么欢迎加入我们的圈子。在圈子内会每周规划学习任务,提供资料、技术文档,供大家一起学习、交流,由浅入深、层层递进。(点我了解详情

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

交流群

关注公众号回复“加群”,添加Z2OBot好友,自动拉你加入Z2O安全攻防交流群(微信群)分享更多好东西。(QQ群可直接扫码添加)

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

钓鱼手法鉴赏 | 绕过微软账号的多因素认证

关注我们

关注福利:

回复“app" 获取  app渗透和app抓包教程

回复“渗透字典" 获取 针对一些字典重新划分处理,收集了几个密码管理字典生成器用来扩展更多字典的仓库。

回复“书籍" 获取 网络安全相关经典书籍电子版pdf

回复“资料" 获取 网络安全、渗透测试相关资料文档


点个【 在看 】,你最好看

原文始发于微信公众号(Z2O安全攻防):钓鱼手法鉴赏 | 绕过微软账号的多因素认证

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年7月24日11:37:34
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   钓鱼手法鉴赏 | 绕过微软账号的多因素认证https://cn-sec.com/archives/1901249.html

发表评论

匿名网友 填写信息