Petya敲诈木马拆解

      Petya敲诈木马拆解无评论

近日,安全厂商G-Data发布报告说,发现了一种新的敲诈类木马Petya。此木马的特点是首先修改系统MBR引导扇区,强制重启后执行引导扇区中的恶意代码,加密硬盘数据后显示敲诈信息,通过Tor匿名网络索取比特币。这是第一个将敲诈和修改MBR合二为一的恶意木马。哈勃分析系统获取到了木马样本,重现了敲诈流程。

此木马的传播途径是通过邮件进行传播,邮件伪装成求职简历,目标是公司HR部门。木马通过链接的方式加入邮件中,链接指向dropbox上的一个共享文件。

dropbox上下载文件后,可以发现文件的名称也是简历相关,图标则伪装为自解压文件。

Petya敲诈木马拆解

此木马的恶意代码并未保存在可执行节中,而是运行后在内存中进行解压,然后再执行。这段代码的主要目的是改写磁盘MBR,然后强制重启。写MBR的方式是将“//./PhysicalDrive0”这个路径作为文件打开,然后向其中写入数据。

Petya敲诈木马拆解

大部分写入内容是512字节(标准扇区大小)的无效数据,“7777……”。

Petya敲诈木马拆解

真正有效的数据分为3段,以下简称S1S2S3

S1是标准的MBR扇区,可以看到其末尾的标志位55 AA,此数据被写入磁盘0扇区,作为系统重启后的引导程序。此引导程序会将存放于第34扇区的S2数据读入内存8000H基址处,然后跳转继续执行。

Petya敲诈木马拆解

S2数据的长度为0×2000字节,是进行加密和敲诈的恶意代码。此代码执行后,首先显示一个虚假的提示,让受害者以为系统正在进行磁盘扫描修复,实际上此时正在进行的是磁盘加密的程序。

Petya敲诈木马拆解

一旦加密完毕,此木马就开始露出它的狰容,有一个骷髅头在受害者屏幕上闪烁:

Petya敲诈木马拆解

按任意键后,屏幕上会显示敲诈文本,以及付款途径。同最近爆发的其它敲诈类木马一样,此木马要求在Tor匿名网络下,通过比特币支付赎金换取解密密码。在这段文字中,木马自称PETYA,这也是这类木马命名的由来。

Petya敲诈木马拆解

需要指出的是,这个页面上的文字,大部分是编码在S2的数据中,但与付款相关的部分,是从S3中动态读取的。

Petya敲诈木马拆解

这两个部分可以从先前S3保存的数据中找到。

Petya敲诈木马拆解

由此就可以弄明白木马写入的三段数据的关系:S1是引导程序,S2是恶意代码,S3相当于配置文件,可以在不修改S2的情况下调整执行参数,甚至包括加密密钥等。

 总的来看,自从木马作者从去年开始爆发的敲诈木马中尝到甜头以后,各种不同类型的敲诈木马开始大量涌现。除了利用邮件社工传播和利用匿名网络+比特币支付赎金这两个共同的特点之外,木马作者开始尝试将各种不同的技术融合进木马之中,以增强反检测能力。像这次修改MBR的技术是比较传统的一种病毒恶意手法,之前还只是用于玩笑程序等简单的尝试,而这次则是与敲诈流程串在一起,又发挥了新的用途。敲诈木马的这类演化趋势值得我们持续关注和警惕。

Petya敲诈木马拆解

 参考资料:

https://blog.gdatasoftware.com/2016/03/28213-ransomware-petya-encrypts-hard-drives

http://blog.trendmicro.com/trendlabs-security-intelligence/petya-crypto-ransomware-overwrites-mbr-lock-users-computers/

*投稿:腾讯安全管家(企业账号),转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

发表评论