“永恒之蓝”勒索病毒事件发生后,各大安全机构纷纷行动,对病毒样本进行收集和分析,通过将病毒源码片段与早前发现的恶意软件源码进行比对,结果显示,这次的病毒代码与之前朝鲜黑客使用的工具吻合度极高。我们初步推断,元凶很可能是来自朝鲜的黑客组织。
首先,各方矛头都指向朝鲜黑客,简单来说就是此次勒索病毒的源代码与之前朝鲜黑客组织Lazarus所使用代码有着惊人的一致[2][3][4]。Lazarus曾经使用的Joanap Malware恶意源码在此次病毒中也有发现,该勒索病毒代码在利用SMB缓冲区溢出攻击代码和硬编码口令上与Brambul 蠕虫代码(https://www.symantec.com/connect/blogs/duuzer-back-door-trojan-targets-south-korea-take-over-computers)也惊人一致[2]。以上这两款恶意工具也都在朝鲜黑客组织中被发现。
除了以上代码片段极具相似之外,通过对上百万条代码片段进行分析后,研究人员发现了这一勒索病毒的“基因”,该基因使用了一个非常独特的库文件,该库文件是由非常通用的“unzip 0.15 Copyright 1998 Gilles Vollant”库文件改写而来。研究人员已经将代码片段提交至VirusTotal,以便让更多的人可以快速识别病毒。[2]
该研究人员也表示他们通过使用Dionaea蜜罐将恶意程序从内存中提取出来,并通过特殊的路径将其提交到VirusTotal,例如“/var/dionaea/binaries/smb-gse1z2_a.tmp”,通过对这些样本的分析,从最早的WannaCry样本到目前的最新样本都使用了该独特的库文件。[2]
之外,卡巴斯基和谷歌的研究员也从其他代码偏度的对比中发现了很多相似之处。[3][4]
图示如下:
据了解,拉撒路组与2014年索尼黑客事件,以及孟加拉国SWIFT银行网络攻击事件有关联,两起案件分别造成索尼多部未上映电影资源和商业信息遭泄露,以及孟加拉国中央银行失窃8100万美元。
当然目前种种猜测还很多,能否抓到真凶,我们拭目以待。
我们可以做的:
科普——勒索软件加密逻辑[7]
发现很多人对于勒索软件使用AES+RSA加密的逻辑不清晰,这里用最简单的方式给各位同学科普一下。
首先,AES是随机生成的密钥,用来加密受害者硬盘文件,因为是对称加密,所以速度快。为了增加破解难度,大多数勒索软件(如WannaCry)会为每个文件都单独生成一个AES密钥,并将密钥保存在已加密文件的头部。
然后,骇客感觉直接将AES密钥保存在文件头部太不稳当,因此要生成一对RSA的私钥与公钥,用随机生成的RSA公钥分别加密每个文件头部的AES密钥,然后将随机生成的私钥上传到骇客的服务器上,这样就骇客就可以使用服务器上的私钥分别解密出每个文件头部的AES密钥,也就可以通过AES解密文件了。
最后,骇客感觉直接将随机生成的RSA私钥保存在服务器上也不太稳当,因为服务器也可能会被入侵,因此骇客自己准备了一对原始RSA密钥,将公钥写死在勒索软件中,用自己的原始RSA公钥加密被害者机器随机生成的RSA私钥,然后再将加密后的RSA私钥上传到服务器上,这样即便是得到服务器上的内容,手里没有原始RSA私钥,也无法解密。
原始RSA私钥:用于解密受害者机器上的随机RSA私钥;
原始RSA公钥:用于加密受害者机器上的随机RSA私钥;
随机RSA私钥:用于解密AES密钥;
随机RSA公钥:用于加密AES密钥;
AES密钥:用于解密受害者机器上的数据。
参考来源:
1.《二轮攻击来了:勒索病毒2.0每小时感染3600台电脑》:
https://www.easyaq.com/news/545468169.shtml
2. 《Intezer_WannaCry》:
http://www.intezer.com/wp-content/uploads/2017/05/Intezer_WannaCry.pdf
3. 卡巴斯基:https://securelist.com/blog/research/78431/wannacry-and-lazarus-group-the-missing-link/
4. 研究员Matt Suiche:https://blog.comae.io/wannacry-links-to-lazarus-group-dcea72c99d2d(需访问外国网站)
5. 《WannaCry蠕虫作者指向朝鲜》:http://mp.weixin.qq.com/s/4OJHC3P65OcSwB2GwP1GWQ
6. 《朝鲜黑客被怀疑是全球勒索病毒幕后黑手》https://mp.weixin.qq.com/s/PsEBr3Hp_JWzXJWFUwV_TQ
7. 《[原创]说人话之从WannaCry谈勒索软件产业链》:http://bbs.pediy.com/thread-217644.htm