一、目标
今天学习的是tutorial05,一个应用程序VisualSite Designer,需要除去的是它的限制使用的次数,还有关闭程序时的一个弹窗。
使用工具主要有:x32dbg,peid
文件结构如下图
(一).次数限制
(二)程序的主界面
(三)弹窗
关闭主界面的之后,程序的弹窗
二、过程
(一)寻找注册的区域
首先在x32dbg中载入程序,按f9跳转到入口点,如下图。
使用ctrl+F8让x32dbg自动跳转,等程序弹出窗口,如下图,在这函数调用的地方程序弹窗:
按F7步入此函数,在函数入口点下断电,重复此步骤,在接下来的几个函数处。
最后,追踪到
往上拖动会发现一个很长的跳转,疑似判断注册与否的函数。
在此处修改flag寄存器,实现跳转,发现不会弹窗,直接跳转到主界面,因此此处是判断弹窗的地方
因此nop掉它,或者修改为add al,1实现跳转
(二)清处弹窗
关闭主界面,出现弹窗
在调用堆栈窗口查看活跃的模块,进入这个模块,对两个函数调用下断点
会找到00480c24就是它的调用窗口的地方,直接nop掉即可。
三、总结
1.如何寻找程序的注册判断的代码区域?
2.写注释,来排除自己调试过的代码
3通过直接点击flag寄存器的值,来改变程序的跳转
4.对于交互的程序,要找到交互的代码区域的,先再x32dbg中按ctrl+f8,再在程序中进行交互,看x32dbg停在哪,那就是交互的代码区域。
5.从调用堆栈的区域找到窗口函数的调用区