逆向工程-Nag.exe

本文详细描述了作者如何通过初步探索、使用IDAPro和OllyDbg进行反汇编分析,定位到LoadIconA和DestroyWindow函数,进而找到控制界面切换的关键代码,并成功修改以解决问题的过程。
摘要由CSDN通过智能技术生成

初步分析

首先,打开文件,进行文件初步探索。

然后,点击OK发现删除本界面并跳转到新的界面,并且需要我们去除弹出的窗口。

正式分析

拖拽进IDA Pro 和OllyDbg中进行分析。

根据我们初步测试的结果,我们知道一个重要线索:首先退出初始界面,然后弹出新界面。

所以我们尝试寻找退出界面和弹出界面的交界的地方。

遍历观察IDA给的反汇编代码。

通过这个图片,我们观察到两个重要函数:LoadIconA 和 DestroyWindow 。

可以猜测,LoadIconA 函数是创建新的界面的时候创建按钮的函数,而 DestroyWindow 函数则是用来销毁初始界面的函数。所以这里就是关键代码存在的地方。

为了观察清楚,我拖拽了代码逻辑的位置:

如图所示,正如我们初步测试时观察的一样,首先销毁了初始界面,然后创建了新的界面。

而且创建新的界面的关键跳转代码是:jz      short loc_401166 。所以我们尝试修改这段代码。

这段代码位于401112

尝试解决

使用OllyDbg修改这一行代码

运行程序,发现没有弹窗了!

回顾反思

本题解题思路,和上一题思路差不多,都是通过逆向推理。需要注意的是,初步探索过程有时候很重要,可以直接影响接下来解决问题的思路。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值