逆向调试入门-去除NAG窗口

网友投稿 212 2022-10-21


逆向调试入门-去除NAG窗口

NAG窗口:

nag窗口在软件试用期过后,很可能屏蔽软件的正式窗口或某些具有重要功能的重要功能的窗口,从而使软件不能正常使用。

使用OD调试工具

还是老方法,先运行一遍程序。

运行程序全弹出一个窗口

然后是主程序运行

关掉主程序之后,还是弹出nag窗口。

载入OD,进行调试

我们可以发现,当程序到第一个call函数的时候,就弹出的nag窗口

到了中间这一块,我们发现,主程序在这个call函数中。

最后在退出程序前,调用了一次call函数,使得nag窗口弹出。

思路

1、我们可以在messagebox函数之前,跳过该函数,不调用nag窗口。

2、我们可以参考messagebox函数,让其中的参数不合法,使得messagebox函数失效。

第一种方法,简单粗暴。

将汇编指令

je short 00401024

改为

jmp short 00401024

跳过call函数

将call函数

call 004011EA

改为

nop

就可以爆破nag窗口。

第二个方法,参数不合法

我们先了解这个函数的用法

再者,我们了解到一个函数在call之前,都会push参数进去

我们发现第一个参数的值为窗口句柄。

于是我们修改为1

push 0 改为 push 1

由于参数不合法,messagesbox函数不会弹出。

下节我们分析文件的PE结构,并且修改PE结构,从而爆破程序。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:逆向调试入门-PE结构详解01/07
下一篇:带你快速了解Java开发利器:Maven
相关文章

 发表评论

暂时没有评论,来抢沙发吧~