之前我阅读过一篇关于AdBlock的文章,这篇文章对我的启发很大。由此,我发现了一种基于利用此活动在.txt中进行域比较的独特哈希用法的广告检测方法。具体来说,就是在我最初通过Chrome扩展站点crx.dam.io/手动识别的28个不同插件中重复使用了许多哈希值。为了使我发现的检测方法能够正常工作,我必须从该网站下载550GB的数据,用一个程序来自动解析它,以便从.txt文件中搜索zip文件以查找其中一个样本哈希值。
为了找到下载这么多数据和链接的最佳方法,我花费了相当长的时间。然而,在多次尝试不同的程序之后,我感觉最好的方法是wget2。这使我可以同时从多个线程的网站上下载,这加快了网站本身的下载过程。而导致其他方法失败的原因有很多,比如没有足够的系统内存,大量的下载导致seg故障。
然而,一旦我试图在多个程序中试图解析这些数据,那就会造成下载的数据无法阅读。在我搜索数据时,一个名为“FileSeek”的程序被确定为基于我的测试的最佳程序。我花了几天时间才把它存储在DAS上的旋转磁盘上,但当它完成时,我对这个活动中使用的独特插件的数量感到惊讶。
为了查看有关这方面的原始数据,请访问以下Google文档页面,里面显示了有关各个插件的所有详细信息:
https://docs.google.com/spreadsheets/d/1JI81z-5bELML2tUl_-MXHTq4STNli9T1XDKS4KnN-CY/edit?usp=sharing
下图就是搜索程序的屏幕截图以及一些结果:
一开始,我并不相信在本次活动中有50个恶意插件及133个恶意版本。因此,为了弄清事实,我开始深入研究这些挖掘结果,并最终得出了这样的结论,即每个挖掘结果不仅包含恶意代码,还包含带有插件本身的查找哈希列表的.txt文件。
以下就是一个.zip文件的屏幕截图:
以下就是用于域查找的.txt文件中的一个的屏幕截图(基于已添加的md5哈希):
以下是用于域查找的其中一个.txt文件的内部屏幕截图:
值得注意的是,域名本身的公开资源情报计划(Open source intelligence,OSINT )引起了一些有趣的结果。尽管没有任何证据会将域名注册人与攻击者联系起来,但这些插件的攻击者在以下名为“What’s in a Name… Server?”的ThreatConnect报告中出现了“额外的可疑域”。然而,有趣的是,这份报告特别提到了DNC的漏洞,以及关于APT 28/APT 29的OSINT和它们在入侵期间的ttp。
Whois信息的屏幕截图——cloudfiare[.]com:
Whois信息的屏幕截图——g[.]qyz[.]sx:
我个人认为,虽然它可能不是一个APT,但它比我之前看到的大多数恶意插件更先进。具体来说,经过加盐处理的MD5哈希域会解密其中插件,使用合法的插件代码,定期使用后门,隐藏当前版本在应用商店中备份(可能以避免检测),使用隐写术,代码被分成多个JavaScript和编码,所以乍一看它不是一个很大的base64编码代码集。当我用经过盐处理的MD5哈希对Alexa排名前1百万的网站进行分析时,它只解码了19000个域名。
以下.txt文件是从MD5列表中获取的19000个解密域,以便你用于查找以确定要监控的域:
https://drive.google.com/open?id=0B2lxMphiu9fcOXVwT0JvOGkyUkswWFU5NklobUZqay1yb1pN