关于OD脚本编写

前言:OD脚本编写笔记

OD脚本编写

脚本的用处非常的大,比如有定位OEP,修复IAT,绕过调试,如果每次都需要手动调试就比较麻烦,而通过使用自动化脚本将大大减小我们的工作量

UPX定位OEP脚本

var addr // 定义一个变量addr
sto // 单步,也就是F8
MOV addr,esp // 把此处ESP的地址给变量addr
BPHWS addr,"r" // 下硬件读取断点,也就是硬件访问断点
run // 运行,也就是F9
BPHWC addr // 取消断点
FIND eip, #E8??#
cmp eip, 0
je _FAIL
_SUCCESS:
sto
CMT eip,"这里就是OEP" // 脱壳完成
ret // 结束脚本
_FAIL:
ret

ACProtect 1.09的绕过硬件断点到达OEP脚本

var user_proc
bphws 4271B5, "x"
_start:
EOB _if_parse
run
_if_parse:
cmp eip,7C92E47C
je _set1
cmp eip,7C92E493
je _set2
cmp eip,user_proc
je _set3
jmp _exit
_set1:
bphwc 4271B5
jmp _start
_set2:
mov user_proc,[esp]
add user_proc,0b8
mov user_proc,[user_proc]
bp user_proc
jmp _start
_set3:
bphws 4271B5, "x"
jmp _start
_exit:
ret

ACProtect 1.09修复IAT重定位脚本

具体的ACProtect 1.09脱壳过程参考文章: https://www.cnblogs.com/zpchcbd/p/16007868.html

var funcAddr
bpwm 460818,710
_start:
eob _fix
run
jmp _exit
_fix:
sto
cmp eax,500000
ja _start
mov funcAddr,esp
sub funcAddr,0C
mov funcAddr,[funcAddr]
mov [edi],funcAddr
jmp _start
_exit:
ret

posted @   zpchcbd  阅读(818)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示