OD调试4--绕过nag窗口

先看一下程序的运行情况

先跳出了一个nag窗口

点确定

又跳出了一个NAG窗口,这是一些程序编写的时候常用的方法,设法让你购买正版软件,

于是今天呢,学会了四种绕过NAG的方法

我们先用OD加载进入这个程序

F8单步调试,会发现一个跳转,我们可以用*第一种老办法,将je改为jmp无条件跳转就可以绕过第一个nag。

那么*第二种方法就是用nop填充。

着重讲一下*第三种方法,就是messagebox这个函数 它有一个父句柄,那么如果父句柄呗消灭,那么它的子程序

就会被消灭

我们看到它的父句柄为NULL,那如果将push 0改为push 1的话,也就是使其父句柄无意义,那么也就不执行这个nag了

*第四种方法,用到PE结构一些的知识,那么我们可以这样

找到PE文件头 进去

发现Addressofentrypoint这个入口点的地址,

把它的入口点改为401024,那不就直接跳过了第一个nag

然后我们把下面的另外一个NAG直接用nop填充

就绕过了两个NAG

然后保存程序

就OK了。

来自为知笔记(Wiz)

时间: 2024-10-25 21:25:31

OD调试4--绕过nag窗口的相关文章

OD调试4----去除nag窗口的几种方法

本实验所用程序如下,一个主窗口,两个nag窗口.nag本意为烦人唠叨的意思.在这里指的是不断弹出来窗口,例如注册窗口. 这里第一个和第三个为烦人的nag窗口,这里我们要将它去除.接下来就介绍四种方法,为了简单就以第一个窗口为例. 加载程序,(F8)运行.到达一个je跳转,下面包含着是第一个对话框的内容. 再来看下运行信息提示: 分析下,这是一个je跳转.但跳转没有实现,所以就会执行到第一个对话框.只需我们修改下je这个地方就行了. 第一种方法. 修改标志位寄存器.对于je来说,当z标志位为1时跳

OD调试学习笔记7—去除未注册版软件的使用次数限制

OD调试学习笔记7—去除未注册版软件的使用次数限制 本节使用的软件链接 (想自己试验下的可以下载) 一:破解的思路 仔细观察一个程序,我们会发现,无论在怎么加密,无论加密哪里,这个程序加密的目的就是需要你掏腰包来获得更多的功能或者解除限制.那么我们就可以逆向的来思考,如果该程序成功的注册后,那么程序的行为必将发生变化,如NAG去除了,如功能限制没有了等等.也就是说,程序的代码的走法也会跟未注册的时候截然不同.因为程序的行为改变了,那么决定它所有行为的代码走法也会发生变化. 二:认识OD的两种断点

OD调试17

程序先出现一个nag 然后出现主窗口 然后出现第二个nag窗口        我们查个壳   没有壳 那就载入OD看看,继续用调用堆栈的方法 发现一直执行用的都是这一个call,最后执行到程序结束.之后往上看见一个跳转,下个断点看看 如果一步一步,一次一次改就完全可以避免了,但是不可能,每一次都打开来改.那我们是不是能够写一段代码if第一次就跳,第二次就不跳,第三次也跳   那我们就想到了inline patch,点M   看看PE,可以在数据段写入 找到一个都是用0填充的 找个地方,储存我们想

OD调试16

今天还是15的那个程序,但是呢,换一种方法去掉NAG窗口 用OD载入,暂停,查看调用的堆栈 先看最后一个    查看调用,下断点 往上看看,找到入口的地方,设下断.点,重载,运行,单步 通过单步发现   它要两次经过很多跳转,第一次的跳转与第二次的还不一样,说明问题出在跳转上,我们可以把有问题的比较靠前的跳转NOP掉.看看,保存看看 发现成功了! 来自为知笔记(Wiz)

OD调试篇12

Delphi的逆向 先看看今天需要破解的程序. 打开程序先出现了一个nag窗口,然后是unregistered未注册的提示,以及关于里的需要注册. 拖进die看了看      就是delphi写的.那我们就用OD打开看看. 老方法,右键查找字符串, 发现了有用的东西,双击进入 我们需要的地方并没有任何跳转,三角形就是有跳转来自什么的. 经过分析,可以利用OD的功能查看下,除了它本身,还有谁调用了照这个命令 发现了还有个东西调用了它 push了东西进去,双击它 我们可以下断点,试试,发现程序没有断

OD调试9—实例:深入分析代码完成软件破解

OD调试9—实例:深入分析代码完成软件破解  爆破,是最初级的解决方案,不到万不得已,我们不直接修改JNZ通关.因为这样子的话,我们就享受不到破解.逆向的真正乐趣了. 了解程序背后按照剧情发展经常会出的一些走法,逆向程序的算法,才能体会逆向的真正乐趣! 所以,今天的主题是:是男人,就跟进去吧~ 这次还是使用一个比较简单的程序,不然太复杂的话,一步步跟进程序可能会把自己搞崩溃,脑子恐怕不够搞.大家凭自己的能力,能进入多少就进入多少,一分不少,一寸不多!能力是培养出来的,耐心! 试验软件:MrBil

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

最近用OD调试了一些小程序,有一些感悟,和大家分享一下 我用了一个多窗口的的程序(软件的试用),对如何去掉弹窗提供一些自己的看法,为大家提供一些思路 首先单步调试,会出现3个弹窗 1.通过对反汇编代码的分析,发现一个关键跳je,我们将je跳转改为jmp无条件跳转,使其直接跳过弹窗的程序 2.修改窗口句柄的值,学习过win32的人都知道,hOwner是一个父窗口的句柄,将他的值改为push 0x1,使他的子窗口失效 3.修改PE文件,alt+m进入内存映射的窗口并双击PE文件的内部 向下寻找,发现

OD调试篇8

那么今天需要破解的呢,是这样一款软件. 程序刚刚进去会发现一个nag弹窗   说没有注册,要花20美金才能注册.只有5天的限制期限可以用了 进去之后 点击help里的关于这款软件   也显示了这是一个未注册的版本,需要密钥,显然我们的目的就是把这些限制都突破,然后顺带把nag弹窗也去掉.那我们用OD载入这款软件 试着运行一下,用之前查找关键字的方式,今天有种新方法,右击-->查找-->所有参考文本字串, 就会如下,拉到最上面,查找文本 找到之后,双击进入该程序段, 发现上面有一个跳转,我们在该

OD调试篇7--笔记及解题报告

MFC:微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量.其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组 件的封装类.----名词解释 开始OD调试     目的是去除软件的使用次数限制 载入程序后F8走走看 发现了弹窗 不是进入程序的窗口   那我们F2设置断点