本文介绍微软在2019年发现的几种最著名的钓鱼攻击技术。
劫持搜索结果钓鱼
这些年,钓鱼攻击者通过将恶意特征隐藏在非恶意特征之下来绕过检测。该技术使用指向被黑的合法网站或多个看似无害的最终导致钓鱼的重定向器。研究人员在2019年发现了一个非常聪明的钓鱼活动,使用到Google搜索结果的链接,但是搜索结果被污染了,因此该链接指向的是攻击者控制的页面,因此最终会指向钓鱼页面。流量生成器确保了重定向页面是特点关键词的搜索结果。
图 1. 使用投毒搜索结果的钓鱼攻击
使用该技术,钓鱼者可以发送含有可信任域名的合法URL的钓鱼邮件,比如:
· hxxps://www[.]google[.]ru/#btnI&q=%3Ca%3EhOJoXatrCPy%3C/a%3E
· hxxps://www[.]google[.]ru/#btnI&q=%3Ca%3EyEg5xg1736iIgQVF%3C/a%3E
该攻击活动还使用基于位置的搜索结果来使得活动更加隐蔽。当欧洲的用户访问的时候,钓鱼URL会自行重定向器网站c77684gq[.]beget[.]tech。在欧洲以外的国家,相同的URL并不会返回搜索结果。在该例中,攻击者必须确保网站c77684gq[.]beget[.]tech是在特定区域关键词hOJoXatrCPy搜索结果的前几位。该网站的HTML代码是由重定向脚步和一系列的anchor元素组成的:
图 2. 重定向器代码
这些anchor元素是由搜索引擎用来爬取数据的,因此页面会成为攻击者想要的搜索特定关键词的索引和结果。
图 3. 含有特定搜索关键词的anchor标签
然后攻击者会设置一个流量生成器来污染搜索结果。因此钓鱼URL使用开放的重定向器功能,因此会被重定向到top搜索结果,也就是重定向页面。
被定制为钓鱼网站的404页面
钓鱼者使用的另一个绕过检测的方法就是在同一活动中使用多个URL和多个域名。攻击者使用子域名生成算法这样的技术来获取解决方案,钓鱼者可以生成很多的域名和URL。
2019年,研究人员发现有攻击者使用另一个方法来服务于钓鱼攻击,那就是使用定制的404页面。研究人员在一起钓鱼攻击活动中发现有用404页面伪造的钓鱼页面,这就给了钓鱼者看似无限的钓鱼URL。
图 4. 使用404页面进行钓鱼攻击
定制的404页面看起来就像是合法的微软账户登入页面。
图 5. 伪装成404页面的钓鱼页面
因为伪造的404页面服务于攻击者控制的域名中现在没有的URL,因此钓鱼者可以使用随机的URL。比如,下面2个URL就是钓鱼活动中使用的URL,攻击者在第二个URL中添加了一个字符就生成了一个新的URL:
· hxxps://skype-online8024[.]web[.]app/8cc1083b0ffdf1e5b9594c045c825b02d41d8cd98f00b204e9800998ecf8427e#ZG1jY2FubkBtb3Jicm9zLmNvbQ
· hxxps://skype-online8024[.]web[.]app/8cc1083b0ffdf1e5b9594c045c825b02d41d8cd98f00b204e9800998ecf8427e#ZG1jY2FubkBtb3Jicm9zLmNvbQs
研究人员还发现攻击者随机化域名,这样就指数级增加了钓鱼URL的数量:
· outlookloffice365usertcph4l3q[.]web[.]app
· outlookloffice365userdqz75j6h[.]web[.]app
· outlookloffice365usery6ykxo07[.]web[.]app
所有以上不存在的URL都会返回404错误页面,也就是钓鱼页面:
图 6. 访问钓鱼URL时,服务器就会响应404错误消息,也就是钓鱼页面
动态钓鱼攻击中的中间人组件
许多钓鱼攻击的目的不仅仅是监听,越是看似合法的钓鱼邮件,诱骗接收者的成功率就越高。对钓鱼攻击者来说,大小品牌都是他们的攻击目标。
研究人员在2019年的一起攻击活动中发现,攻击者并没有从伪造的合法网站中复制任何元素,而是有一个中间人组件用来获取该公司相关的信息,比如logo、banner、文本和背景图片。
钓鱼攻击者发送含有指向攻击者控制的服务器URL的邮件,用来服务器中间人组件,并模拟成微软登入页面。服务器可以基于接收者的邮件地址识别特定信息,包括目标的公司,然后收集该公司相关的信息。最终的结果就是与合法的登录页面非常相似,可以很大程度上降低他人的怀疑。
图 7. 滥用微软渲染网址的钓鱼攻击
使用相同的URL,但是钓鱼网站对不同的目标用户会进行不同的渲染。为了生成看起合法的钓鱼网址,服务器会使用以下代码来提取受害者所在公司的banner,具体信息是由于邮件地址的域名信息来获取的,响应就是该公司banner的URL:
图 8. 请求banner的代码段
服务器还会提取公司登入页面使用的文本,响应就是该目标受害者公司的真实文本:
图 9. 请求公司特定文本的代码段
为了完成看似合法的钓鱼页面,服务器还要使用以下代码来轻轻背景图像,响应就是到图像的URL:
图 10. 请求背景图像的代码段