OD调试一个小程序的思考总结

最近用OD调试了一些小程序,有一些感悟,和大家分享一下

我用了一个多窗口的的程序(软件的试用),对如何去掉弹窗提供一些自己的看法,为大家提供一些思路

首先单步调试,会出现3个弹窗

OD调试一个小程序的思考总结_第1张图片

OD调试一个小程序的思考总结_第2张图片


1.通过对反汇编代码的分析,发现一个关键跳je,我们将je跳转改为jmp无条件跳转,使其直接跳过弹窗的程序

OD调试一个小程序的思考总结_第3张图片

2.修改窗口句柄的值,学习过win32的人都知道,hOwner是一个父窗口的句柄,将他的值改为push 0x1,使他的子窗口失效


3.修改PE文件,alt+m进入内存映射的窗口并双击PE文件的内部

OD调试一个小程序的思考总结_第4张图片

向下寻找,发现第一个窗口的入口地址



记下他的地址4000E8alt+c返回到我们刚才的界面,,找到数据窗口crtl+g修改到我们要的PE头文件地址4000E8,即程序的入口地址

OD调试一个小程序的思考总结_第5张图片

找到后对他值进行修改,修改为要跳转到窗口的地址401024,注意,修改的顺序为从右到左

OD调试一个小程序的思考总结_第6张图片

保存后重启会发现第一个窗口直接跳过

 

4.对标志寄存器的修改 Z/O/F使其发生跳转或者不跳转,这个也很重要,但在本程序里没有涉及

5.最直接的方法,直接nop使其不跳转

OD调试一个小程序的思考总结_第7张图片

我只是对破解提供一些思路,而且只是破掉了一个弹窗,希望能对大家有帮助,如有问题,还请大家多多提意见



你可能感兴趣的:(OD调试一个小程序的思考总结)