回复: APT组织“蔓灵花”对巴基斯坦攻击事件报告
5. 攻击初期:shellcode解密出的dll分析
dll通过获取当前运行进程名,与进程名rundll32.exe进行对比判断,根据结果分为两种执行情况。第一种情况(攻击初期)是:进程名不为rundll32.exe,第二种情况(攻击后期)是进程名为rundll32.exe。此步骤为第一种情况(攻击初期),dll会在受害者机器上释放skydriveshell64.dll,并利用rundll32.exe执行skydriveshell64.dll,还会在Windows自启动菜单中创建执行skydriveshell64.dll的快捷方式。以下是对shellcode解密出的dll的详细分析过程。
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image14.png)
图:两种执行流程
5.1获取dll中所存放的pe数据,pe大小为0x12E00![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image15.png)
图:读取dll中的pe
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image16.png)
图:pe数据
5.2创建Common文件夹
①遍历进程,查询avgnt.exe进程是否存在。
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image17.png)
图:找寻avgnt.exe进程
②如果avgnt.exe进程存在,在%appdata%目录下创建Common文件夹。如果avgnt.exe进程不存在,在%programdata%目录下创建Common文件夹。
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image18.png)
图:创建Common文件夹
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image19.png)
图:创建Common文件夹
5.3 创建PE文件和快捷方式
在Common目录下创建PE文件skydriveshell64.dll,skydriveshell64.dll文件内容来自步骤5.1所获取的pe数据。在Windows启动菜单中创建名为OneDrive的快捷方式,快捷方式的作用是利用rundll32.exe执行skydriveshell64.dll中的IntRun函数。
文件名 | skydriveshell64.dll |
MD5 | 06AE12974694B6BBBADE3097EE25AFFF |
文件大小 | 75.50 KB (77312 bytes) |
文件格式 | Win32 DLL |
创建时间 | 2019-11-21 |
VT首次上传时间 | 2019-11-28 |
VT检测结果 | 25/68 |
设计URL | http://kerbosim.com/dramtun/miskder/kipr.jpg |
表:skydriveshell64.dll信息
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image20.png)
图:创建skydriveshell64.dll和OneDrive.lnk
![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image21.png)
图:示例图
5.4 利用rundll32.exe执行skydriveshell64.dll中的IntRun函数![](http://it.rising.com.cn/d/file/it/dongtai/20191210/image22.png)
图:执行skydriveshell64.dll