PE_DOWNEXEC.O是一个感染型样本,该病毒会感染exe文件,并新加一个节,节名为hhqg,然后病毒会修改exe文件的eip,指向这个新节,执行完毕后重新跳回原来的eip。
下面我们将手工修复被病毒感染的文件。
OD载入,我们在text段加上内存访问断点:
然后按F9,执行到以下位置:
因此断定004012A0这个位置为eip。
下面我们来看看这个新节做了什么事情。
OD重新载入,单步到以下位置,发现一个函数:
F7进入,继续单步,发现函数:
F7进入,单步:
F7进入,单步:
F7进入,单步:
好,到这里我们发现了关键代码,新节里调用了Loadlibrary和GetProcAddress,先后获得了WinExeC和URLDownloadToCacheFileA函数,我们查看栈里面有什么内容:
好,这里就真相大白了,新节的目的就是从网上下载一个exe文件,然后调用winexe执行。
下面我们来手动修复:
使用LoadPE载入这个被感染的文件,选中这个新节,删除掉:
然后修复原来的EIP:
点击保存、确定。
到这里还没有完成,这样的exe是不能运行的,我们必须对EXE重建:
好了,这样简单的手工修复就完成了,点击运行,ok没问题,而且因为没了新节的代码,执行速度也快了很多: