dbsx 发表于 2009-2-10 15:48:59

什么情况下用修改标志位来修改跳转

总所周知,一些跳转指令受标志位影响,双击标志位即可修改跳转,本来以为这是比修改代码更加轻松的方式,后来发现错了,在爆破时用修改标志位来达到破解目的不现实,实际数据并没有更改。那么一般什么情况下用修改标志位来修改跳转?(即为了达到哪种目的呢)

千里之外 发表于 2009-2-10 16:17:59

CALL
CMP AL,1‘未破解前AL=0 AL的数值是CALL的返回
JNZ
----------------
有3中办法修改
1.JNZ 修改为 JZ缺点:破解可能不完全
2.将CMP AL,1 修改为MOV AL,1 缺点:同1
3.进CALL里面 MOV AL,1 RETN 或者进一步分析CALL 看看影响AL的条件是什么 缺点:有的程序会校验这个CALL 不过总体来说 3比较好
随便说说 不对的地方大家讨论

Luckly 发表于 2009-2-14 15:26:08

软件在关键call中置了全局变量 在多处被引用检测是否注册 并且此call在多处调用


你不可能每一处都nop or jmp

kqwy 发表于 2009-2-14 17:29:48

在多处被引用检测是否注册 并且此call在多处调用
页: [1]
查看完整版本: 什么情况下用修改标志位来修改跳转