Nicky_home⛄

Nicky模拟人生.Log

经典样本熊猫烧香分析

2024-02-06

基本信息

File:xiongmao.vir

SHA1值:CA3A1070CFF311C0BA40AB60A8FE3266CFEFE870

样本行为

释放 C:\Windows\SysWOW64\drivers\spo0lsv.exe,spo0lsv.exe与病毒本体sha1一致,病毒是自我复制到系统目录下。关闭火绒剑窗口。

202408051827410

试图在各个文件夹下释放并隐藏Desktop_.ini

image-20240807104044054

外联

image-20240807111821580

设置自启动

样本信息

image-20231126213116538

FSG是压缩壳

FSG脱壳

用ESP定律找OEP手脱

实际操作:

F8—>寄存器窗口只有EIP和ESP显示为红色

image-20231126221248335

右键ESP后面那个地址,然后选择在数据窗口中跟随

image-20231126221436753

或者直接在Command窗口中输入dd 0018FF88 后回车

在数据窗口中跟随到 0018FF88 这个地址后,在该地址的任意HEX右键,设置断点→硬件访问→word型

image-20231126221826778

F9运行–>把断点清理掉,【调试→硬件断点→删除】–>F8单步跟到OPE

观察发现,004001D9在处dll在载入,在004001D9处下断点

在EDI数据跟随,左下窗口右键选择【长型–>地址】,F9观察地址变化

当遇到7FFFFFFF时候改成00000000,

因为如果直接到improtREC修复IAT会发现,improtREC不能识别所有导入函数。这是因为模块之间被填充成7FFFFFFF,把7FFFFFFF时候改成00000000重新获取就能都识别到了。

在FFFFFFF时候,dll载入结束,此时F8即可跳转OPE处

image-20240807111821580

跳转到如图,不慌,右键【分析–>从模块删除分析】

202408081811681

image-20231126223751594

右键【用OllyDump脱壳】或者插件【OllyDump–>脱壳在当前调试的进程】

image-20231126224143597

(不要勾选重建输入表)【脱壳】文件保存为1.exe

image-20240808224822730

深度扫描,获知1.exe语言是Delphi 6.0-7.0

image-20240808232252363

使用ImportREC,导入原文件 xiongmao.vir

OEP需要和从OD里dump出来时的值相同,【IAT自动搜索–>获得导入表】

image-20240808225409012

【显示无效–>删除指针–>修正转储(选择之前从od dump下来的文件1.exe)】

image-20240808225503625

1.exe是修复前的 1_.exe是修复后的

image-20240808230130829

以上脱壳完成。ヾ(≧▽≦*)o

静态分析

IDA打开修好的1_.exe,添加签名

image-20240808231600793

没有delphi的签名库,右键添加

image-20240808231921359

里面也有Delphi1的库,注意这里添加bds更准确

image-20240808232109890

进入主函数

main

第一个函数是载入模块

image-20240810192426546

第二个函数

sub_403C98

image-20240810193238886

sub_405250

xboy 和 whboy 都是解密字符串,sub_405250函数是解密字符串的函数

image-20240810201600321

sub_40819C

在每个目录下创建Desktop_.ini

image-20240810202739500

在系统目录下释放病毒文件C:\Windows\SysWOW64\drivers\spo0lsv.exe

image-20240812141203494

sub_405FC4

image-20240812142419760

sub_407B68()

image-20240812142711721

<

image-20240812133641745

sub_40D18C()

image-20240812155405550

sub_40A5B0()

创建线程 循环执行 遍历感染

sub_40C374()

image-20240812145121321

TimerFunc

image-20240812154031236

sub_40BACC()

image-20240812154205086

sub_40BA8C()=>sub_40B864()

image-20240812155259953

sub_40D088()

这个函数中调用了6个定时器: 1.定时器1,sub_40CEE4,添加启动项、修改注册表 2.定时器2,sub_40D040,下载恶意代码 3.定时器3,sub_40D048,下载恶意代码、执行cmd命令 4.定时器4,sub_407430,删除杀毒软件启动项、关闭杀软服务 5.定时器5,sub_40CC4C,打开解密之后的网页 6.定时器6,sub_40C728,下载恶意代码

image-20240812155755560

定时器1,sub_40CEE4

添加启动项、修改注册表

image-20240812162930782

定时器2,sub_40D040

下载恶意代码

image-20240812170354168

定时器3,sub_40D048

下载恶意代码、执行cmd命令

image-20240812170551056

sub_40CDEC

image-20240812170738858

定时器4,sub_407430

删除杀毒软件启动项、关闭杀软服务

image-20240812173049379

定时器5,sub_40CC4C

以xboy为密钥解密出网址,打开解密之后的网页

image-20240812164333052

定时器6,sub_40C728

下载恶意代码

image-20240812165249390

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注