Petya与Wanncry的差异分析

  • A+
所属分类:web安全 系统安全

Petya与Wanncry的差异分析

经历了Wanncry的“惊魂未定”,Petya勒索软件再一次利用“永恒之蓝”漏洞大规模地进行传播和感染,又引起了不小的恐慌。

S问Peter,既然网友这么关心MalwareBenchmark在安全事件中的观点,我们该写点儿什么特殊视角的东东呢?Peter 和 Rand 不约而同的想到:Petya与Wanncry比较起来有哪些不一样呢?

区别1:Petya属于通杀型

Wanncry在感染目标主机之前,留了一个kill switch选项,Matt Suiche称,他们利用这个选项,成功阻止了Wanncry感染了8万台主机。

然而,Petya并没有这个选项,所以,感染即中招。

区别2:Petya的渗透方式更多

Petya与Wanncry的差异分析Petya与Wanncry的差异分析

上图为WanaCry渗透模块CFG结构图和Petya渗透模块CFG结构图。WanaCry和Petya两者都采集到445端口的数据包,都用到了『永恒之蓝』漏洞进行渗透。

但是Petya还具有了某些APT的横向移动属性,利用管理共享在局域网内传播,而后通过wmic来实现远程命令执行。这个比WanaCry的渗透能力要高一截。

区别3:Petya直接加密磁盘

WanaCry在TaskStart函数中采用获取所有文件路径,而后进行逐个文件加密,生成新文件,并移除旧文件的方式,进行加密勒索。

而Petya采用磁盘加密的方式进行加密勒索。

Petya与Wanncry的差异分析

区别4:Petya更加的小巧精悍

WanaCry是一个3.4MB左右的.exe文件,而Petya为一个354KB的.dll文件。

WanaCry含有的资源文件很多,相互关系比较复杂,总结而言是一个三层结构。

第一层的WanaCry是一个带有『永恒之蓝』渗透能力的壳程序。其功能有两个,一个是负责启动大量子线程,利用MS17-010的SMB漏洞进行局域网和公网的扫描感染;另一个功能是从资源段释放另一个.exe文件当,即WanaCry第二层。

当该.exe文件被运行后,会继续释放众多文件,大部分以.wnry结尾。值得注意的是,其中有一个t.wnry文件,是一个以WANACRY!开头的加密文件。

第二层WanaCry将该文件读入,导入RSA公钥进行解密(因此明文在内存中,长度65536字节),我们将该文件dump出后,发现是一个dll文件(实质上该文件只存在于内存中),也就是第三层文件,其中包含加密模块的代码。

第二层WanaCry动态布置堆栈结构,而后调用该dll中的TaskStart函数进行文件遍历和加密。

Petya与Wanncry的差异分析

而petya要比WanaCry简洁的多,其为一个dll文件,大小只有354KB,不能直接启动,必须其他程序调用。

如果我们需要启动它,指令可为:rundll32petya, #1。其大量功能都集中在一个名为perfc_1的函数中,其中有sub_1000A274和sub_10007D6F两个函数涉及网络传输与渗透利用,这两个函数最终都调用了sub_10005A7E函数。

Petya与Wanncry的差异分析

俗话说,螳螂捕蝉、黄雀在后。其实Petya的第一个版本在2016年就已经出现。如下图所示:

Petya与Wanncry的差异分析

这次Perya之所以能够大规模爆发,可以说是受到了Wanncry的启发,进一步地增强了自身的感染和渗透能力。

那么黄雀后面是否还有老鹰?谁是究竟幕后“始作俑者”?敬请期待... ...

发表评论

您必须才能发表评论!