恶意代码分析实战 — Lab 19-02
Idapro载入程序,首先call sub_4010B0提权操作

之后程序调用sub_401000

这个函数主要是打开注册表位置HKEY_CLASSES_ROOT\http\shell\open\command,获取系统默认浏览器路径

回到main函数,程序调用sub_401180

此函数创建浏览器进程,并且wShowWindow设置为0表示隐藏窗口显示

调用sub_401230,将unk_407030处的shellcode注入浏览器进程

此处的内容为data

按c将其解析为code代码
此处代码将地址0x00407048入栈,初始化edi = 0x407048,设置循环次数ecx=0x18F,并将edi指向的地址与al = 0xE7 异或进行解码

编写解码程序
#include <idc.idc> static main() { auto ea = ScreenEA(),al=0xE7,edi,i; for(i=0x0;i<0x18F;i++) { edi = Byte(ea+i); edi = edi^al; PatchByte(ea+i, edi); } }
在地址0x407048处开始解码

Scdbg查看导入函数,connect连接了192.168.200.2:13330
