吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5514|回复: 48
收起左侧

[PC样本分析] pitou新变种快速传播 于系统加载前执行

   关闭 [复制链接]
火绒安全实验室 发表于 2024-2-28 18:02
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 火绒安全实验室 于 2024-2-28 18:08 编辑

近期,火绒威胁情报系统监到木马病毒pitou的最新变种正在快速传播。该病毒感染系统后,可以根据C&C服务器下发的配置信息发送邮件进行钓鱼攻击和广告推销。同时,该病毒还采用内核级对抗手段来规避安全软件的查杀,并且能够在操作系统加载前执行,其较强的隐蔽性和持久性对用户构成较大安全威胁。目前,火绒安全产品可对上述病毒进行拦截查杀,请用户及时更新病毒库以进行防御。
Image-0.png
查杀图

该病毒被运行后,先通过多段shellcode来加载最内层的恶意模块,随后劫持系统MBR绕过DSE保护,来加载恶意驱动模块,这使得它能够绕开操作系统级别的安全措施,最终再根据C&C服务器下发的配置信息,向外发送垃圾邮件进行钓鱼攻击和广告推销。该病毒执行流程,如下图所示:
Image-1.png
病毒执行流程图

在此,火绒工程师建议广大用户,对陌生人发送的文件或可执行程序保持警惕,如有必要先使用安全软件扫描后再使用。

一、样本分析
初始化阶段
病毒运行后,先通过多段shellcode来加载最内层的恶意模块,其中还携带混淆代码,这样做的好处是可以绕过杀毒软件的查杀,如下图所示:
Image-2.png
执行shellcode1

在shellcode1中会解密、执行shellcode2,再通过shellcode2来加载内层的恶意模块,相关代码,如下图所示:
Image-3.png
解密执行shellcode2

在shellcode2中会以创建傀儡进程的方式来加载内层的恶意模块,相关代码,如下图所示:
Image-4.png
加载最内层的恶意模块

在内层的恶意模块中通过直接操作PhysicalDrive0和调用SCSI接口两种方式来直接操作物理磁盘,相关代码,如下图所示:
Image-5.png
两种方式直接操作物理磁盘

通过这两种方式来将恶意MBR以及shellcode和恶意驱动模块进行加密并写入到物理磁盘中,相关代码,如下图所示:
Image-6.png
将相关恶意数据写入到物理磁盘中

恶意代码在物理磁盘的结构,如下图所示:
Image-7.png
恶意数据在物理磁盘中的结构

将恶意代码写入到磁盘后会进行重启,以便执行恶意的MBR,相关代码,如下图所示:
Image-8.png
重启执行MBR

恶意MBR运行后,会将第0x80扇区中的shellcode拷贝到0x5000解密并执行,在shellcode中会对INT 13进行HOOK ,并重新调用原始的MBR执行正常的引导逻辑代码,当被HOOK的INT 13 被调用时,会在BootMgr被加载后对其进行HOOK, 在HOOK后的恶意代码中,会通过匹配特征码的方式在Bootmgr(16位)中搜索实模式切换保护模式的代码进行HOOK来执行32位的代码。恶意MBR解密执行shellcode相关代码,如下图所示:
Image-9.png
解密、执行shellcode

shellcode中HOOK int13并执行原始MBR,相关代码,如下图所示:
Image-10.png
解密执行原始的MBR

hook int 13后的恶意代码中,会在Bootmgr被加载后,对Bootmgr头部进行HOOK,相关代码,如下图所示:
Image-11.png
hook Bootmgr

在Bootmgr头部被HOOK的代码中,通过特征码在Bootmgr搜索实模式切换保护模式的代码进行HOOK来执行一段32位的恶意代码,相关代码,如下图所示:
Image-12.png
HOOK Bootmgr执行32位代码

被HOOK的代码会在BootMgr(32位)代码被加载前,搜索Archx86TransferTo64BitApplicationAsm并对其进行HOOK,相关代码,如下图所示:
Image-13.png
HOOK Archx86TransferTo64BitApplicationAsm

在Archx86TransferTo64BitApplicationAsm被HOOK后的代码中,搜索winload.exe的OslArchTransferToKernel函数并对其进行HOOK来执行一段64位恶意代码,相关代码,如下图所示:
Image-14.png
搜索OslArchTransferToKernel函数

被HOOK后的OslArchTransferToKernel代码中,首先通过函数名哈希值获取InbvIsBootDriverInstalled函数地址,并在INIT节中通过特征码搜索StartFirstUserProcess中调用 InbvIsBootDriverInstalled处,对其进行HOOK ,相关代码,如下图所示:
Image-15.png
HOOK InbvIsBootDriverInstalled调用位置

StartFirstUserProcess被HOOK后,执行InbvIsBootDriverInstalled函数前,会先加载恶意驱动,具体操作:先会申请一块内存,shellcode复制到新的内存中,之后再创建一个新的线程负责将恶意驱动模块加载到系统中,相关代码,如下图所示:
Image-16.png
劫持InbvIsBootDriverInstalled来创建线程

创建的线程函数中会读取、加载扇区中的恶意驱动模块,相关代码,如下图所示:
Image-17.png
加载恶意驱动模块

驱动模块分析
对抗手段
保护壳
在恶意驱动模块中使用代码虚拟化壳对关键代码进行保护,被加密后的函数会从x86汇编字节码转换为虚拟字节码,由虚拟机进行执行,可以有效防止被安全人员分析。被虚拟化后的函数,如下图所示:
Image-18.png
虚拟化的函数

虚拟机是一个大循环会读取后面的虚拟字节码来执行对应的处理函数(handler),虚拟机执行流,如下图所示:
Image-19.png
虚拟机执行流

在虚拟机的入口中,会先保存寄存器上下文环境,通过rsi寄存器进行访问,如下图所示:
Image-20.png
虚拟机入口

解析虚拟字节码取出handler编号并执行对应handler,相关代码,如下图所示:
Image-21.png
执行handler

以XOR指令为例, XOR的虚拟字节码为04,虚拟指令XOR的执行过程,如下图所示:
Image-22.png
虚拟指令xor执行过程

为了更好地分析病毒,需要对该虚拟机进行还原,幸运的是虚拟机没有使用代码膨胀花指令等混淆手段,已经有相关安全人员对该虚拟机进行过还原并给出还原脚本,详见(https://bin.re/blog/the-dga-of-pitou/),该变种虚拟机Handler相较之前变种,handler编号进行了改变,需要分析所有类型handler 的编号,对脚本进行修改就可以进行还原,新老变种编号对比,如下图所示:
Image-23.png
handler编号

需要分析出所有类型handler对应编号,再修改脚本中对应handler的编号就能对虚拟化后的函数进行还原。还原脚本handler编号位置,如下所示:
Image-24.png
还原脚本handler编号位置

以下大部分内容都是基于还原后的代码进行分析。

反沙箱和虚拟机
该病毒通过检测bios信息来判断是否处在虚拟机中,相关代码,如下图所示:
Image-25.png
检测虚拟机代码

会被检测的列表,如下图所示:
Image-26.png
检测列表

禁用杀毒软件以及一些安全组件
该病毒还会通过删除系统更新和组件以及杀毒软件的服务和注册表,相关代码,如下图所示:
Image-27.png
禁用安全组件和杀毒软件
DGA算法
该病毒使用DGA算法以当前时间为种子来计算域名,相关代码,如下图所示:
Image-28.png
DGA生成域名

在调试该样本时生成的域名列表,经过测试这些域名目前还未被黑客注册,黑客可随时对这些域名进行注册来进行通讯,如下图所示:
Image-29.png
生成的域名列表
恶意功能
HOOK 网络相关函数
该病毒会对ndis层相关的函数进行HOOK来和C&C服务器进行通讯,因为 ndis较为底层可以绕过很多防火墙的监控,还可以避免被防火墙流量拦截,在win10中会被HOOK的ndis函数列表,如下图所示:
Image-30.png
win10被HOOK的ndis相关函数

病毒通过HOOK NdisMSendNetBufferListsComplete函数来向C&C服务器发送消息,相关代码,如下图所示:
Image-31.png
发送数据

病毒通过HOOK NdisMIndicateReceiveNetBufferLists函数来接收C&C服务器发送的消息,相关代码,如下图所示:
Image-32.png
接收数据

DGA算法生成的域名还未被黑客注册成C&C服务器,后续没法进行动态调试,不排除后续黑客对这些域名进行注册,以下为静态分析的结果。病毒会根据C&C服务器的配置信息,通过MIME协议向外发送垃圾邮件,pitou支持四种类型MIME,如下图所示:
Image-33.png
支持的MIME协议

以multipart/related邮件类型为例,接收到C&C服务器的配置信息之后,构建邮件代码,如下图所示:
Image-34.png
构建multipart/related类型的邮件

二、附录
HASH:
Image-35.png

免费评分

参与人数 23吾爱币 +23 热心值 +19 收起 理由
seyzn + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
kingbinvip + 1 + 1 用心讨论,共获提升!
oysf179354755 + 1 + 1 看着像是惯犯,团伙
max2012 + 1 + 1 我很赞同!
snowhee + 1 我很赞同!
凉游浅笔深画眉 + 3 + 1 厉害厉害,下面由我来补充几点....
timeni + 1 + 1 用心讨论,共获提升!
posheng + 1 + 1 用心讨论,共获提升!
allspark + 1 + 1 用心讨论,共获提升!
xiawenqiwa + 1 + 1 我很赞同!
暗夜揽月 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
slslsl + 1 我很赞同!
抱歉、 + 1 用心讨论,共获提升!
wuzinan52 + 1 + 1 我很赞同!
visaction + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
99910369 + 1 + 1 我很赞同!
PEKO16 + 1 我很赞同!
gqdsc + 1 难得还有这样的技术文章
ll090822 + 1 + 1 热心回复!
Cool_Breeze + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
yp17792351859 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
qqycra + 1 + 1 用心讨论,共获提升!
water201 + 1 这是高手局,感谢分享

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

醉红尘0 发表于 2024-2-29 09:05
有个疑问,楼主文内描述中多次提到了劫持系统MBR,是否意味着如果客户机所有硬盘设备均采用GUID的分区,能够一定程度上免疫该病毒?

免费评分

参与人数 1吾爱币 +1 收起 理由
vaguem + 1 我很赞同!

查看全部评分

头像被屏蔽
hackerSQL 发表于 2024-2-28 18:28
zhaublitz 发表于 2024-2-28 18:13
qqycra 发表于 2024-2-28 19:45
好贴,赞个。这帖子又是矛又是盾
alexsanda 发表于 2024-2-28 20:05
一直用火绒,点个赞
fangxiaolong 发表于 2024-2-28 21:54
学习一下
Tomatoman 发表于 2024-2-28 21:58
一直用火绒,真的很不错,学习病毒分析,感谢分享!
hao6988456 发表于 2024-2-28 22:32
学习学习,感谢分享
ltgb 发表于 2024-2-29 06:23
还是火绒好用
Corgibro 发表于 2024-2-29 07:12
一直在用火绒,这个传播方式看着还挺吓人
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 10:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表