病毒分析

常用工具:

PCHunter.exe:看Hook挺方便

API Monitor.exe :可以用来监控三环API的调用

ProcessMonitor.exe:这个比火绒安全软件强在查看调用堆栈上,火绒做的似乎有点bug

软件系统安全赛——钓鱼邮件

题目:生日礼物.exe 生日礼物.bin

要求是找到通信的IP和端口

不过事实上直接丢到沙箱就跑出来了

1736173244958

但是还是想抱着完全分析的角度,所以我对这个程序进行了一次比较久的分析

1736173291018

沙箱说这是一个UPX的壳子,那我们就手动脱一下吧

这是OEP入口点,开局就是四个push

1736173430594

一般的start函数都是长这样,那确实是加壳了

1736173535042

我们猜测它是一个压缩壳(虽然沙箱明说了是压缩壳),那么我们就直接用大名鼎鼎的ESP定律法即可

单步执行完四个push,然后在内存转到rsp,然后在这里下一个硬件访问断点

img

然后发现有一个大跳,猜测是真正的OEPimg

感觉确实像,有个0x28的特征img

然后直接dump,找到导入表,修复导入表等等常规操作img

应该确实没毛病了,直接能搜到main函数

1736173809028

但是奇怪,脱了壳跑不起来,留个坑,后续解决了来唠唠

因为题目是去找通信IP和端口,所以常规思路,打开x64dbg,直接在ws2_32.dll的connect,send这些函数下断

但是离奇的是这些都没有断下来,后来我断了其它网络库,但是都没有断下来…..

真是奇了怪了,于是这里介绍有个很好用的软件,就是API Monitor,它可以通过Hook监控到所有三环API的调用

打开APIMonitor.exe,发现界面长这样

1736174239539

勾选全部的网络库

1736174227066

开启新的进程进行监控

1736174392221

通过监控到的API来看,确实没有调用例如connect,send这些常规API

1736174495280

我们再用ProcessMonitor,那里可以监控到详细的行为

添加文件名

1736174595239

监控到信息,只保留网络的选项

1736174680733

双击可以看到函数的调用堆栈,猜测用的不是三环的API,直接syscall了?所以导致我们直接抓普通三环函数抓不到

1736174710201

当然还有方法就是我们自己写一个过滤驱动去拦截TCP请求,后续请关注网络防火墙的博客