骷髅病毒分析

一、病毒信息

病毒名称:骷髅病毒

文件名称:

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壳:

骷髅病毒分析_第1张图片
骷髅病毒分析_第2张图片

首先脱壳,样本拖入OD:

骷髅病毒分析_第3张图片
骷髅病毒分析_第4张图片

Ctrl+F,取消整个块,查找popad,并下断点:

骷髅病毒分析_第5张图片
骷髅病毒分析_第6张图片

F9运行,卡在断点这里,然后走过下面一个JMP,到了OEP

骷髅病毒分析_第7张图片
骷髅病毒分析_第8张图片

然后右键dump,保存为1.exe:

骷髅病毒分析_第9张图片
骷髅病毒分析_第10张图片

把1.exe拖进PEID:

骷髅病毒分析_第11张图片
骷髅病毒分析_第12张图片

脱壳成功。

四、行为分析

首先我们需要将病毒样本加入火绒软件信任区,让火绒不要干扰病毒程序运行,接下来打开火绒剑:

骷髅病毒分析_第13张图片

点击开始监控,然后双击运行骷髅病毒,首先可以看到骷髅病毒本体已经不见:

骷髅病毒分析_第14张图片

接下来进行过滤:

骷髅病毒分析_第15张图片

在这里我们可以详细的看到骷髅病毒的所有行为,简单的根据动作过滤来看一下病毒行为:

骷髅病毒分析_第16张图片

骷髅病毒分析_第17张图片

可以看到这里是创建了一个新的EXE,最后通过cmd删除本体。

骷髅病毒分析_第18张图片

骷髅病毒分析_第19张图片

这里有一些对注册表项的修改写入等行为。详细行为都可以根据火绒剑进行分类查询。这里大致可以看出是在C:\Windows下生成另一个文件,然后对自身进行删除。

五、静态分析

把脱壳后的1.exe拖入Ida,找到WInMain,F5:

骷髅病毒分析_第20张图片
骷髅病毒分析_第21张图片

这是主函数,相应注释都在上面:

骷髅病毒分析_第22张图片

然后进入sub_405A52(),就是简单判断自己创建服务是否已经被创建,服务名称是15654656:

骷髅病毒分析_第23张图片
骷髅病毒分析_第24张图片

如果服务没有被创建,进入函数sub_405B6E():

骷髅病毒分析_第25张图片
骷髅病毒分析_第26张图片

首先是获取许多函数地址,然后对比了文件目录,通过sub_406C30获取系统时间随机生成字符,产生随机名称,下面是sub_406C30函数:

骷髅病毒分析_第27张图片
骷髅病毒分析_第28张图片

回到上一层,继续往下看,生成随机名称,拷贝自身在Windows目录下:

骷髅病毒分析_第29张图片
骷髅病毒分析_第30张图片

接下来就是对服务的创建启动等操作:

骷髅病毒分析_第31张图片
骷髅病毒分析_第32张图片

最后来到sub_40355B:

骷髅病毒分析_第33张图片
骷髅病毒分析_第34张图片

跟进去,可以看到这是一个删除文件函数,根据之前的行为分析,这块就是对自己进行删除操作的函数:

骷髅病毒分析_第35张图片
骷髅病毒分析_第36张图片

这个病毒功能应该还有启动一项服务,然后会搞事情,但是在我环境中没有搞起来,只实现了对自身文件的拷贝,以及最后的自我删除。

你可能感兴趣的:(漏洞,网络,二进制,c语言,c++)