第1章 安全通告
北京时间2017年6月27日晚,据外媒消息,乌克兰、俄罗斯、印度、西班牙、法国、英国以及欧洲多国正在遭遇Petya勒索病毒袭击,政府、银行、电力系统、通讯系统、企业以及机场都不同程度的受到了影响。
此次黑客使用的是Petya勒索病毒的变种Petwarp,使用的攻击方式和WannaCry相同,由于这次攻击有很强的定向性,所以欧洲感染较多。目前国内感染量较少,但是考虑到其定向性,未来存在较高风险在国内传播。360天擎(企业版)和360安全卫士(个人版)可以查杀该病毒。
据悉,该病毒和勒索软件很类似,都是远程锁定设备,然后索要赎金。据赛门铁克最新发布的消息显示此次攻击时仍然使用了永恒之蓝勒索漏洞,还会获取系统用户名与密码进行内网传播。
360安全监测与响应中心也将持续关注该事件进展,并第一时间为您更新该漏洞信息。
第2章 事件信息
事件描述
Petya和传统的勒索软件不同,不会对电脑中的每个文件都进行加密,而是通过加密硬盘驱动器主文件表(MFT),使主引导记录(MBR)不可操作,通过占用物理磁盘上的文件名,大小和位置的信息来限制对完整系统的访问,从而让电脑无法启动。如果想要恢复,需要支付价值相当于300美元的比特币。
被感染的机器屏幕会显示如下的告知付赎金的界面:
风险等级
360安全监测与响应中心风险评级为:危急
影响范围
由于本次Petya勒索病毒传播使用永恒之蓝漏洞,受永恒之蓝漏洞影响的系统均在该病毒威胁范围之内。使用开源(OpenVAS)或商业漏洞扫描工具检查内网,发现所有开放445 SMB服务端口的被认定存在漏洞终端和服务器,对于Win7及以上版本的系统确认是否安装了MS17-010补丁,如没有安装则受威胁影响;Win7以下的Windows XP/2003如果没有安装KB4012598补丁,则也受漏洞的影响。
第3章 处置建议
安全操作提示
从目前掌握的情况来看:
1. 有情报显示该样本有可能通过邮件方式投递,具体特征正在确认中,请大家不要轻易打开doc、rtf等后缀的附件,可以安装360天擎(企业版)和360安全卫士(个人版)等相关安全产品进行查杀。
2. 及时更新windows系统补丁,具体修复方案请参考“永恒之蓝”漏洞修复工具。
3. 内网中存在使用相同账号、密码情况的机器请尽快修改密码,未开机的电脑请确认口令修改完毕、补丁安装完成后再进行联网操作。
修复工具
360企业安全天擎团队开发的勒索蠕虫漏洞修复工具,可根本解决勒索蠕虫利用MS17-010漏洞带来的安全隐患。此修复工具集成免疫、SMB服务关闭和各系统下MS17-010漏洞检测与修复于一体。可在离线网络环境下一键式修复系统存在的MS17-010漏洞,工具下载地址:
https://b.360.cn/other/onionwormfix
缓解措施
关闭TCP 135端口
建议在防火墙上临时关闭TCP 135端口以抑制病毒传播行为。
停止服务器的WMI服务
WMI(Windows Management Instrumentation Windows 管理规范)是一项核心的 Windows 管理技术 你可以通过如下方法停止 :
在服务页面开启WMI服务。在开始-运行,输入services.msc,进入服务。或者,在控制面板,查看方式选择大图标,选择管理工具,在管理工具中双击服务。
在服务页面,按W,找到WMI服务,找到后,双击,直接点击停止服务即可,如下图所示:
第4章 技术分析
Petya样本分析
样本文件列表
病毒功能分析
样本(MD5:71b6a493388e7d0b40c83ce903bc6b04)为病毒的主要功能模块,该文件为仅有一个名为perfc_1导出函数的DLL文件,此函数为病毒执行起点。执行后进行如下操作:
1)替换系统MBR
首先病毒以物理方式打开硬盘:
读取原始分区信息:
读取原始MBR:
然后将原始mbr加密保存,加密算法是和7做异或运算:
然后分配200字节给病毒的mbr数据,然后将病毒的mbr写入缓存区:
MBR入口代码:
再分配22b1字节给引导区代码,将病毒的引导区代码写入缓存:
引导区代码如下:
最后把缓存区数据写入磁盘:
2)创建重启计划任务
病毒根据自身运行TickCount计算一个时间差,在这段时间差后采用计划任务的方式执行重启操作:
机器重启后控制权被改写后的MBR代码接管,伪造的MBR代码加密MFT,并阻止系统正常启动,提示用户支付赎金。
3)网络嗅探
病毒使用DHCP系列API遍历DHCP池中内网地址:
并通过Socket尝试建立连接判断地址是否可以联通:
病毒还使用NetServerEnum API遍历域控环境内的域控服务器:
通过此过程初步嗅探感染主机的内网环境,生成可感染内网主机列表,为下一步局域网感染做准备。
4)释放并执行Mimikatz
病毒解压缩ID为0的资源文件,写入临时目录,释放的文件为exe,该文件为Mimikatz代码移植而来,主要功能不变。病毒在执行该exe前创建命名管道,通过管道读取子进程数据输出:
5)释放Psexec
病毒紧接着解压缩ID为3的资源文件,写入Windows目录,命名为dllhost.dat,该文件位PsExec.exe:
6)枚举网络资源
病毒通过WNet系列API枚举网络资源,并使用CreadEnumerate API遍历系统保存的凭据,过滤类型位“TERMSRV”的凭据加入本地字典:
并使用此账号密码列表尝试访问之前的网络WebDav资源,并尝试写入自身:
随后构造命令行:
C:WindowsWbemwmic.exe /node:<NodeName> /user:<UserName> /password:<Password> process call create “C:WindowsSystem32rundll32.exe C:windows<SelfName> #1
该命令使用上步尝试成功的口令远程对名为NodeName的主机执行命令,该命令使用rundll32加载自身dll,执行入口导出函数,完成局域网的感染:
7)永恒之蓝传播
病毒随后开启线程进入利用永恒之蓝漏洞传播代码,病毒使用伪随机算法生成IP:
随后使用EternalBlue漏洞进行自身传播,此样本与Wannacry漏洞利用代码基本一致,不一样的地方在于,使用简单异或算法加密过程中用到的特征数据,减少特征数据。
8)本地文件加密勒索
紧接着病毒使用内嵌证书解密勒索功能配置,并初始化必要算法句柄后开始进入磁盘文件遍历循环,遇到指定后缀文件后开始加密:
加密完成后在分区根目录写README.txt说明文档: