15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第1张图片

退出程序弹出

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第2张图片

学习eXeScope工具,可以任意修改对话框程序结构及字符串

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第3张图片

可以找到退出的模态对话框句柄未103

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第4张图片

103的16进制未67

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第5张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第6张图片

发现前面并没有跳转,得到结论为这是一个函数,那么我们找是谁调用了此函数,查看堆栈信息,反汇编跟随,如下图 

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第7张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第8张图片

可以看到上面有一个跳转,那么上一个call就是注册的判断,得到返回值eax做判断跳转

我们进入这个call,函数很短

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第9张图片

我们修改 mov eax,dword ptr ds:[eax+02c]为  mov eax,1

发现会覆盖下一行指令,使用我们这样改,因为两行均为赋值eax

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第10张图片

成功。

 

 

升级版,另一种情况,关于注册表

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第11张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第12张图片

100的16进制为64

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第13张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第14张图片

当退出弹出注册对话框进入的断点才是正确的断点,其他可以删除掉了

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第15张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第16张图片

看到了这个跳转和上一个call,只要使eax等于1,那么就成功了,进入call

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第17张图片

此函数为注册表存放函数,就是软件的数据库,eax为0就是函数运行正常,接下来一连串注册表函数的使用,寻找键值,拿出数据。

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第18张图片

取这个键值,RegName3

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第19张图片

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第20张图片

修改此处,为了避免覆盖下面的代码,我们可以用等价的修改al低位为1就可以

15. OD-去除程序最后退出时弹出的注册模态对话框,eXeScope、Resource_Hacker工具的学习_第21张图片

成功。

你可能感兴趣的:(OllyDbg)