官方公众号企业安全新浪微博
FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。
FreeBuf+小程序
一、病毒信息
病毒名称:骷髅病毒
文件名称:
d5dac2456fa6758480e946aa6a1597399bf0b9e7df1383c7ba568559b969a827
文件格式:
EXEx86
文件类型(Magic):
PE32 executable (GUI) Intel 80386, for MS Windows, UPX compressed
文件大小:
66.50KB
SHA256:
d5dac2456fa6758480e946aa6a1597399bf0b9e7df1383c7ba568559b969a827
SHA1:
c660516ceb64fb9373b297973f962398ee6d1879
MD5:
77031bafa4c641c28ab9f624a15766b0
CRC32:
79C2B4D8
SSDEEP:
768:CGBwjSgvnyXXQkZuzQEN8Fs+U5MV4nb42sWAw/CQd07d21a1XWCIqrY+9GbRa:PBzgvnyXgkwg0sl5Qd07k1sXvr
TLSH:
T1D0635C1BAD45D0A1E00600389519FAFF66A76C71C51EAA53FB80FD827CB8587F8B9D07
AuthentiHash:
4A58C42F188D69E5EC03A22F02C0C9AB8D6B8D0B39C01DD7CA05DD97074509A2
peHashNG:
15fe9808e4c7996169d2f7d72ab94995e16510faac3b23d090f9c6ccbcceaa0f
RichHash:
c5755a1d31fa664aef391971dfc1145d
impfuzzy:
24:MEpZQCB8u1wX1siuLVuLQjuyPq0jcfLGDQj1E5T0v+GO9CJI/qkbJnBevrzvoLWZ:prwX1Euljix02G+CJI/q0JBevrzri+
ImpHash:
ccbcdba127c40ad07597791950e62759
ICON SHA256:
ffac9d7025d1e7d091fc5449da7401928cff13c3083719ca38b4518042608ef9
ICON DHash:
336171172d330c0d
Tags:
exe,section_name_exception,lang_chinese
二、环境准备
系统 | 杀毒软件 | 调试器 |
Win7x86 | 火绒剑 | IDA,OD |
三、脱壳
样本拖到PEID中,可以看到是有UXP壳:
首先脱壳,样本拖入OD:
Ctrl+F,取消整个块,查找popad,并下断点:
F9运行,卡在断点这里,然后走过下面一个JMP,到了OEP
然后右键dump,保存为1.exe:
把1.exe拖进PEID:
脱壳成功。
首先我们需要将病毒样本加入火绒软件信任区,让火绒不要干扰病毒程序运行,接下来打开火绒剑:
点击开始监控,然后双击运行骷髅病毒,首先可以看到骷髅病毒本体已经不见:
接下来进行过滤:
在这里我们可以详细的看到骷髅病毒的所有行为,简单的根据动作过滤来看一下病毒行为:
可以看到这里是创建了一个新的EXE,最后通过cmd删除本体。
这里有一些对注册表项的修改写入等行为。详细行为都可以根据火绒剑进行分类查询。这里大致可以看出是在C:\Windows下生成另一个文件,然后对自身进行删除。
把脱壳后的1.exe拖入Ida,找到WInMain,F5:
这是主函数,相应注释都在上面:
然后进入sub_405A52(),就是简单判断自己创建服务是否已经被创建,服务名称是15654656:
如果服务没有被创建,进入函数sub_405B6E():
首先是获取许多函数地址,然后对比了文件目录,通过sub_406C30获取系统时间随机生成字符,产生随机名称,下面是sub_406C30函数:
回到上一层,继续往下看,生成随机名称,拷贝自身在Windows目录下:
接下来就是对服务的创建启动等操作:
最后来到sub_40355B:
跟进去,可以看到这是一个删除文件函数,根据之前的行为分析,这块就是对自己进行删除操作的函数:
这个病毒功能应该还有启动一项服务,然后会搞事情,但是在我环境中没有搞起来,只实现了对自身文件的拷贝,以及最后的自我删除。