美文网首页
《第1期-12 摆脱NAG》学习笔记

《第1期-12 摆脱NAG》学习笔记

作者: 听说我在混吃等死 | 来源:发表于2018-05-28 21:57 被阅读0次

1、打开软件后,发现是未注册,然后点击关闭按钮,会弹出窗口


Snipaste_2018-05-28_20-07-04.png

我们的目的就是为了能够去掉这个弹窗。

2、对这个程序进行查壳,没有什么发现

3、载入OD里面,F9运行起来,随后切换到程序主界面点击关闭按钮,照样弹窗


2.png

4、此时,切换到OD中,按下F12暂停,此时OD会出现这样的画面


3.png

这时OD把程序给暂停住了
5、在OD中使用快捷键“Alt+K”,出来”调用堆栈“界面


4.png
我们在这里分析一下调用堆栈,可以看到上面的都是系统空间的,我们在最后一行红色调用那里右键点击,选择“显示调用”
5.png

6、接着OD就来到了这里


6.png

在 77D5082A 处按F2下断点,重新运行程序。

7、切换到程序,继续点击关闭按钮,这时OD会断在上一步下的断点那里


7.png

8、随后F8单步运行,此时程序会弹窗了,点击对话框里面的“是“或”者“否”让程序能够运行下去。【这里必须点击“是“或”者“否”,否则程序会运行不下去。我在看视频的时候没注意到这里,所以在这一步卡了壳,又重新看了一遍视频才过去的】


8.png

随后继续F8单步下去,不久就会运行到程序空间。

9、这时就会看到调用弹窗的那个地方


9.png

观察上面的代码,看是否有jmp可以跳过这个的。但是一直找到了段首也没有发现,


9-2.png
既然没有,那我们F8继续单步,返回到上一层的调用
10、返回到了这里
10.png

4CDCE6 出的call就是是弹窗出现的call,要是能够把它跳过就相当于跳过了弹窗:

004CDCE6   .  E8 CD64F9FF   call WebMan.004641B8

那么就往上找jmp吧。但是还是找到段首没找到一个有用的jmp。那就只能是继续F8单步运行,返回上一层调用了
11、返回到了这里:


11.png
00460A75   .  FF93 98020000 call dword ptr ds:[ebx+0x298]            ;  WebMan.004CDCC4

上面这个call就是弹窗的call,那么想办法跳过它吧。正好在上面有一个je

00460A69   . /74 10         je short WebMan.00460A7B

总算是找到了这样一个 跳 了。在这里F2下断点,重新运行程序
12、切换到程序界面,点击关闭按钮来关闭程序,OD会停在那里


12.png

观察一下,发现这个跳转未实现呀。
既然je不能实现跳,那么改为jne呢?在je代码处点击空格,会弹出窗口让输入汇编代码,我们直接改为jne:


12-2.png
然后F9让程序运行,会发现没有讨厌的弹窗出现了。
13、把修改过的程序复制出来,保存成新的。

相关文章

网友评论

      本文标题:《第1期-12 摆脱NAG》学习笔记

      本文链接:https://www.haomeiwen.com/subject/wdknjftx.html