网络诈骗分子将隐写术融入Browlock活动中

来源:岁月联盟 编辑:猪蛋儿 时间:2020-02-16

Browlock介绍
Browlock是browser和lock的合成词,指的是技术型诈骗分子通过浏览器漏洞,伪造恶意网站警告页面进行的欺诈活动。Browlock不是恶意软件,也没有感染计算机。它是一种社会工程学技术,给人一种计算机病毒的错觉。
早期的Browlock活动相对简单,多出现在YouTube及其他社交媒体网站的恶意广告上,用户点击后,浏览器检测到网站可疑时会出一个红色的警告页面,诈骗分子可以利用漏洞创建一个伪造的警告页面,通过改变 URL 字符并附加哈希值内容伪装成合法的站点,显示文字警告并替换联系电话为诈骗电话,从而诱骗受害者进行汇款等操作。
 

图1.Browlock行动步骤
随着时间的推移,诈骗分子也在不断尝试新的技术来对抗浏览器的检测机制。近期,Malwarebytes安全团队注意到了一起特殊的Browlock行动,诈骗分子通过对目标流量的过滤和隐写术的使用创建了迄今为止最复杂的Browlock方案。
404Browlock
此次行动中,受害者所遭遇的情况也和以往类似。当用户打开MSN主页,或者浏览网页时,他们的屏幕会突然变红,并显示一条如下所示的警告消息:

图2:受害者看到的Browlock页面
但当研究人员手动检查页面时,会出现“404 Not Found”的错误消息,通过访问与受害者相同的门户网站来试图重现Browlock的重定向也没有成功,于是此行动也被称为“404Browlock”。

图3:研究人员看到的Browlock
大多数情况下,browlock页能在没有任何特殊的用户代理或地理位的情况下显示。Browlock本身并不复杂,其唯一的优势是可以快速迭代成百上千个不同的域名。
找到基础设施
单纯通过域名是无法找到服务器的,但研究人员发现,大多数域名是在. xyz TLD上注册的,并使用字典中按字母顺序抓取的单词进行命名。
2019-12-06,transfiltration[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
2019-12-06,transmutational[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
2019-12-06,tricotyledonous[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
2019-12-06,triethanolamine[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
2019-12-06,trigonometrical[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
2019-12-06,trithiocarbonic[.]xyz,158.69.0[.]190,AS 16276 (OVH SAS)
平均每个VPS服务器上托管了6个域名,域名在被毁时替换成新的。我们追溯到了2019年6月,发现一共有400多个唯一IP地址。

图4:域名和服务器
查看其他数据源,可以看到此行动至少在2017年12月就开始了。当时是别的托管服务商提供服务,并且域使用的是.WIN TLD。
 

图5:browlock已知的最早实例
在那时,直接访问browlock URL也会显示404页面。

图6:爬虫对browlock扫描结果
同样,基于开源数据,我们创建了一个粗略的时间线,记录了被诈骗分子滥用的基础设施——他们第一次在出现在彼得堡的网上,短暂地使用过DigitalOcean,然后从2019年1月30日开始换成OVH。
 

图7:托管服务商变化的时间轴
隐写术隐藏重定向机制
由于我们无法确定browlock是如何传播的,于是认为它一定是使用了一种非常规的技巧。
当browlock事件发生时,受害者报告的许多网站都包含视频,所以我们认为一个可能的载体是视频广告。这种形式的恶意广告比传统的横幅式的恶意广告要更为先进,诈骗分子有可能在媒体内容中隐藏了其恶意负载。
接着我们发现了一个包含混淆数据的PNG文件,在文件结束标记后包含了额外的数据,看起来很可疑。
 

图8:隐藏数据的图像
与往常混淆样本不同,此文件的额外数据看上去是清晰可见的,带有像是经过编码的字符串。而且显然,如果没有其他代码来加载每个受害者唯一密钥来解密图像,就无法对图像本身进行武器处理。
反bot和流量过滤
与PNG图像交互的JavaScript代码使用了一些简单的十六进制混淆和随机变量命名来隐藏其意图。
 

图9:用于识别用户和解码PNG的JavaScript
十六进制字符串/x57/x45/x42/x47/x4c解码为WEBGL,通过解码其余混淆变量,我们可以看到此脚本正在使用WEBGL_debug_renderer_info API收集受害者的视频卡属性。此举能让诈骗分子将真实的浏览器(真实用户)与爬虫程序/虚拟机进行区分,后者不会显示预期的硬件信息。Zirconium组织就曾使用过相同的API来过滤流量。

[1] [2] [3]  下一页