网络犯罪分子一般使用的较为复杂的方法来安装勒索软件就像Cryptolocker,Locky和teslacrypt等等。但是在某些情况下,安装无需用户点击,是悄无声息的发生,比如Petya Ransomware。
作者:李东宏 李丹 雷远晓
基本概念
什么是勒索软件?
勒索软件是黑客用来劫持用户资产或资源并以此为条件向用户勒索钱财的一种恶意软件。
用百度百科来解释,勒索软件通常会将用户系统上文档、邮件、数据库、源代码、图片、压缩文件等多种文件进行某种形式的加密操作,使之不可用,或者通过修改系统配置文件、干扰用户正常使用系统的方法使系统的可用性降低,然后通过弹出窗口、对话框或生成文本文件等的方式向用户发出勒索通知,要求用户向指定帐户汇款来获得解密文件的密码或者获得恢复系统正常运行的方法。
什么是MBR?
MBR,即主引导记录(Master Boot Record),是对IBM兼容机的硬盘或者可移动设备分区时,在驱动器最前端的一段引导扇区,位于磁盘的0柱面、0磁头、1扇区(每个扇区为512个字节)。
MBR描述了逻辑分区的信息,包含文件系统和组织方式,以及计算机在启动第二阶段加载操作系统的可执行代码或连接每个分区的引导记录,通常被称为引导程序。
MBR结构如下:
Petya Ransomware样本分析
Petya Ransomware样本信息
Petya Ransomware样本行为
样本将自己的图标伪装成PDF和RAR自解压的可执行文件,攻击者通过邮件将恶意代码发送给攻击目标,利用社会工程学引诱攻击者进行运行。
木马运行后通过内部调用系统硬件异常,导致系统蓝屏重启。
系统重启后会提示用户进行磁盘检查,实际上此时在执行磁盘加密功能。
执行完毕后主机会看到闪烁的屏幕,由一些ASCII码组成。
根据提示按任意键后,屏幕上回显示勒索信息,按照信息提示支付比特币才能解决问题。
用diskgenius查看加密后的情况,发现样本并未进行全盘加密,而是加密了系统分区。
Petya Ransomware执行概要
该样本主文件是一个外壳程序,静态无法检测到恶意代码,执行过程中会申请新的内存空间,释放主功能代码,写入到物理磁盘的启动位置,修改MBR,之后强制系统重启。具体流程图如下:
Petya Ransomware行为分析
样本文件的行为
红色部分为32个字节经过加密的KEY,蓝色部分为设备唯一ID号,粉色部分为提示用户在勒索网站需要填入的解密字符串。
MBR代码
0x7C21处将样本的主功能代码加在到内存0x8000处,然后在0x7C30处跳转到恶意代码进行加解密操作。
加密代码
解密代码
Petya Ransomware技术分析
调试方法
此样本利用MBR进行攻击,因此针对MBR的调试不能在用户层进行调试,需要进行深入的调试,可以利用虚拟机进行MBR的调试,这里使用的是IDA+VMWARE的解决方案。
VMWARE提供的GDB Stub分两个部分,一个用于支持X86,一个用于支持X64。当处于调试状态的VMWARE虚拟CPU运行在16/32位模式下时,32位支持的GDB Stub生效,监听8832端口。当处于调试状态的VMWARE虚拟CPU运行在Long-Mode位模式下时,64位支持的GDB Stub生效,监听8864端口。当在虚拟机的主配置文件(.VMX)中加入如下代码:
debugStub.listen.guest32.remote = “TRUE”
debugStub.listen.guest64.remote = ”TRUE”
monitor.debugOnStartGuest32 = “TRUE”
debugStub.hideBreakpoints = “TRUE”
bios.bootDelay = “3000”
启动虚拟机后,IDA通过附加Remote GDB debugger,设置如下进行调试:
检测结果
数据恢复
1) 绿盟科技获取PetyaRansomware系统恢复光盘。
2) 从光驱启动或者制作成U盘启动。
3) 记录下程序提示的Key,并重启主机,从原始硬盘启动,在提示界面输入之前记录的Key。
4) 输入后系统开始进行解密。
5) 解密完成后提示重新启动系统。
6) 重启后可以正常进入系统。
Petya Ransomware解决办法
针对个人用户
1) 安装杀毒软件并更新到最新。
2) 运行绿盟科技PetyaRansomware系统恢复软件。
针对企业用户
1) 安装终端安全软件,并更新到最新。
2) 绿盟科技TAC+IPS+NGFW联合解决方案。
3) 绿盟科技安全邮件网关。
4) 绿盟科技PetyaRansomware系统恢复软件。
如果您需要了解更多内容,可以
加入QQ群:486207500
直接询问:010-68438880-8669