恶意软件分析
初始文件mssecsvc.exe会释放并执行tasksche.exe文件,然后检查kill switch域名。之后它会创建mssecsvc2.0服务。该服务会使用与初次执行不同的入口点执行mssecsvc.exe文件。第二次执行会检查被感染电脑的IP地址,并尝试联接到相同子网内每个IP地址的TCP 445端口。当恶意软件成功联接到一台电脑时,将会建立联接并传输数据。我们认为这一网络流量是一种利用程序载荷。已有广泛报道指出,这一攻击正在利用最近被泄露的漏洞。Microsoft已在MS17-010公告中修复了此漏洞。我们当前尚未完全了解SMB流量,也未完全掌握这一攻击会在哪些条件下使用此方法进行传播。
tasksche.exe文件会检查硬盘,包括映射了盘符的网络共享文件夹和可移动存储设备,如“C:/”和“D:/”等。该恶意软件之后会检查具有附录中所列后缀名的文件,然后使用2048位RSA加密算法对其进行加密。在加密文件的过程中,该恶意软件会生成一个新的文件目录“Tor/”,在其中释放tor.exe和九个供tor.exe使用的dll文件。此外,它还会释放两个额外的文件:taskdl.exe和taskse.exe。前者会删除临时文件,后者会启动@wanadecryptor@.exe,在桌面上向最终用户显示勒索声明。@wanadecryptor@.exe并不包含在勒索软件内,其自身也并非勒索软件,而仅仅是用来显示勒索声明。加密由tasksche.exe在后台完成。
@wanadecryptor@.exe会执行tor.exe文件。这一新执行的进程将会启动到Tor节点的网络联接,让WannaCry能够通过Tor网络代理发送其流量,从而保持匿名。
与其他勒索软件变种类似,该恶意软件也会删除受害人电脑上的任意卷影副本,以增加恢复难度。它通过使用WMIC.exe、vssadmin.exe和cmd.exe完成此操作。
WannaCry使用多种方法辅助其执行,它使用attrib.exe来修改+h标记(hide),同时使用icacls.exe来赋予所有用户完全访问权限(“icacls ./grant Everyone:F /T /C /Q”)。
该恶意软件被设计成一种模块化服务。我们注意到与该勒索软件相关的可执行文件由不同的攻击者编写,而非开发服务模块的人员编写。这意味着该恶意软件的结构可能被用于提供和运行不同的恶意载荷。
加密完成后,该恶意软件会显示以下勒索声明。这一勒索软件非常有趣的一点是,其勒索屏幕是一个可执行文件,而非图像、HTA文件或文本文件。
组织应该意识到,犯罪分子在收到勒索赎金后,并无义务提供解密秘钥。Talos强烈呼吁所有被攻击的人员尽可能避免支付赎金,因为支付赎金的举动无疑就是在直接资助这些恶意活动的壮大。
规避与预防
希望避免被攻击的组织应遵循以下建议:
渀保所有Windows系统均安装了全部补丁。至少应确保安装了Microsoft公告MS17-010。
根据已知的最佳实践,具有可通过互联网公开访问的SMB(139和445端口)的任意组织应立即阻止入站流量。
此外,我们强烈建议组织考虑阻止到TOR节点的联接,并阻止网络上的TOR流量。ASA Firepower设备的安全情报源中列出了已知的TOR出口节点。将这些节点加入到黑名单将能够避免与TOR网络进行出站通信。
除了以上的规避措施外,Talos强烈鼓励组织采取以下行业标准建议的最佳实践,以预防此类及其他类似的攻击活动。
渀保您的组织运行享有支持的操作系统,以便能够获取安全更新。
建立有效的补丁管理办法,及时为终端及基础设施内的其他关键组件部署安全更新。
在系统上运行防恶意软件,确保定期接收恶意软件签名更新。
鸀施灾难恢复计划,包括将数据备份到脱机保存的设备,并从中进行恢复。攻击者会经常瞄准备份机制,限制用户在未支付赎金的情况下恢复其文件的能力。