-
-
[原创]一个处理SVKP1.32 Stolen code的小脚本,自学用
-
-
[原创]一个处理SVKP1.32 Stolen code的小脚本,自学用
我在看3800cc的教程,其中中级的第九篇脱的是SVKP 1.32的壳。看完教程后,一头雾水,最后是脱成功了,感觉最难的部分是找stolen code那里。所以这个小脚本就是按照教程把一些手工的东西变成自动,最后把stolen code那部分要分析的代码放在运行跟踪里面。这是第一次写的脚本,也算是一次学习吧。
//
// im only a beginner...
//
var addrGetModuleHandleA
GPA "GetModuleHandleA", "Kernel32.dll"
mov addrGetModuleHandleA, $RESULT
BP addrGetModuleHandleA + 9
RUN
BC addrGetModuleHandleA + 9
RTU
// 来到IAT特殊处理的地方
// 特征码:
// cmp dword ptr ds:[ebx],2D66B1C5
FIND eip, #813BC5B1662D#
mov [$RESULT+6], #eb5890909090#
mov [$RESULT+7e], #eb4c90909090#
// 特征码:
// mov dword ptr ds:[edi],eax
// popad
FIND eip, #890761#
mov [$RESULT], #618907#
bp $RESULT
RUN
bc $RESULT
BP addrGetModuleHandleA + 9
RUN
BC addrGetModuleHandleA + 9
RTU
// 下硬件断点在12ffb0,断三次后取消开始trace
BPHWS 12ffb0, "r"
RUN
RUN
RUN
BPHWC
TICND "ebp==12FFC0"
StO
// 开始处理特征码
bp 4052B6
TC
TOCND ""
// 脚本结束,可以在运行跟踪窗口中分析stolen code
RET
[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!