专业丰富的破解论坛技术交流,提供软件安全,病毒分析,脱壳破解,安卓破解,加密解密等,由无数热衷于软件爱好者共同维护
 
发新帖
查看: 715|回复: 0

[技术文章] 四节 逆向病毒分析(实战)

[复制链接]
玉面飞龙之王 发表于 2020-9-16 13:09:20 | 显示全部楼层
seg000:004D500E nop
seg000:004D500F push 598h
seg000:004D5014 pop esi
seg000:004D5015 nop
seg000:004D5016
seg000:004D5016 loc_4D5016: ; CODE XREF:
seg000:004D5026j
seg000:004D5016 push dword ptr [edx+esi]
seg000:004D5019 xor [esp], ecx
seg000:004D501C pop dword ptr [edx+esi]
seg000:004D501F nop
seg000:004D5020 nop
seg000:004D5021 dec esi
seg000:004D5022
seg000:004D5022 loc_4D5022: ; DATA XREF:
seg000:004D5008o
seg000:004D5022 sub esi, 3
seg000:004D5025 nop
seg000:004D5026 jnz short loc_4D5016
seg000:004D5028 call sub_4D51AA

与上节的分析结果相比较,可以发现,解密后,从 004D5028 开始的指令已经发生明显的变化,更加“可读”了。同时,我们再留意一下“Functions window”,可以发现,IDA 识别出了以下 6 个函数。浏览一下反汇编窗口,不难发现,这 6 个函数加上一些“杂乱的”数据就是病毒 Loader 的全部内容了。因此,我们接下来的主要工作就是将这 6 个函数完全逆出来,分析出“杂乱”数据的含义,看看究竟这个 Loader 都做了些什么事情。

sub_4D51AA
sub_4D524A
sub_4D5356.
sub_4D53BE
sub_4D53F6
sub_4D5592
由于代码量不大,我们先查看一下这几个函数之间的调用关系。004D5028 处的一个 call将控制传递给了函数 sub_4D51AA,因此,函数 sub_4D51AA 是这里的“main”函数。我们就从 sub_4D51AA 开始分析这些函数的调用流程。右击 sub_4D51AA,选择“Chart of xref from”,得到的调用关系图如下:




11.png
快速回复 返回顶部 返回列表