吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3758|回复: 7
收起左侧

[原创] 心机NAG

[复制链接]
风车 发表于 2016-5-21 09:55
本帖最后由 风车 于 2016-5-21 10:23 编辑

    嘻嘻,第一次在论坛上发正式帖子,想想还有点小激动呢,嘿嘿,先说好了,我就是个小白,所以分析的程序也是...所以,大神们请略过,只因不想一直做伸手党,所以分享一个自己分析的NAG哈...

分析一个耍心机的NAG,有点小虐心
一、程序运行
    1、运行界面
                1.png
               出现一个NAG窗口,提示需要去除它
    2、点击“确定”
                  2.png
      
              3、查壳
                3.png
    查证是 MASM32写的程序,并没有加壳

二、载入OD分析
   (1NAG初探
             4.png
    咦,这不是一下子就看到了,NAG窗口提示信息了呀,那我直接NOP掉不就完事儿了,简单...真的这样子吗?试一试:
          5.png
    事实是并没有达到想象的效果,NAG、依然出现了

    (2)NAG再探
      1、重新载入OD,点击”分析代码”,遇到第一个CALL 进入看看
                        7.png
        进入看看写了什么
                       
       这里显然的几行代码,看看是在和从地址401000处,XOR操作,我们先看看401000出的代码
                      9.png
       大概就是这个样子的,执行完那个CALL会不会发生变化呢?

       那就试试看:
                      10.png
       可以看到EAX = 00401218,也就是说从00401000 - 00401218处代码或者数据做了处理了,查看此时的00401000处的代码【PS:数据肯定是改变了的】
                     11.png
      好吧,果然真的代码变了,也就是说,这里是对00401000 - 00401218处的代码重写了呀
  
   2、从上一个CALL中跳出来以后,下面还有一个CALL呢,进入
                   12.png
      执行分析这段代码,好像和上一段代码类似哎,在修改指令或代码呢?先执行看看啊
                   13.png
      可以看到此处竟然是对该CALL函数入口处做修改???往下执行看看
                  15.png
      确实修改了此处指令,可以看到有一个MessageBoxA被解析出来了,但是参数看不到,比较看到此处修改范围:401011 - 401025

           3、看到指令在CALL EDI(从右边的注释可以看到是调用的是刚才第一个CALL修改的指令),进入看看
                   16.png
      这数据 和 MessageBoxA的参数有什么关系?都是文字,是不是此处会修改数据了?
                   17.png

      真的是这样的,好吧

      再往下走,就会执行这个MessageBoxA 输出NAG窗口了

去除NAG
   解决方案一 修改MessageBoxA 调用参数父句柄值为1
1.修改MessageBoxA第一个参数,即将代码位置40101D00改为01.但是该位置代码是前面第二阶段代码自修改后写入的值,因此,应该在代码自修指令中对40101D修改的值改为0x5B(01 XOR 0x5A),即将代码位置为401038处修改为0x5B
      
     这里是子句柄的值为0 ,要修改为1,就不会显示NAG窗口了

     思路:应该去到修改40101D处的代码地方,刚才好像MessgeBoxA被解析出来是在第二个CALL
      19.png
     就是在此处修改的:
     00401035   ?  66:C707 6A00  mov word ptr ds:[edi],0x6A
    可以数一下,此处写入的是6A,但是这是修改过的值,所以在此修改达不到目的,应该找是哪里修改的6A对应指令地址,即:00401038


2.使用Ctrl+G跳到401038处,选中该处数据,右键选择二进制->编辑->填入5B,确定退出;选中修改过的数据,右键“复制到可执行文件”->在弹出的可执行文件窗口中,右键保存文件
    21.png

   OK,执行文件,已经没有NAG窗口了

解决方案二 直接jmp跳过nag窗口调用:
        1.401011处汇编(空格),填入指令jmp 0040106A,即MessageBoxA 调用返回后的下一条指令,查看机器码为EB 57,重新加载程序,F7跟进修改自身代码调用CALL 401011,发现在地址00401013处指令对401011的指令进行了修改,查找到该指令在00401016处为写入代码
          22.png
  2.使用Ctrl+G跳到401016处,依次选中该处数据,右键选择二进制->编辑->填入 B1 0D,确定退出;选中修改过的数据,右键“复制到可执行文件”->在弹出的可执行文件窗口中,右键保存文件
         EB XOR 5A = B1
         57 XOR 5A = 0D
                23.png

           OK了,程序同样不会弹出NAG窗口了

嘿嘿,补上附件哈... ReverseMe.zip (19.04 KB, 下载次数: 0)

免费评分

参与人数 2热心值 +2 收起 理由
yeyulang + 1 热心回复!
榻榻米 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

榻榻米 发表于 2016-5-21 10:11
程序也分享出来吧  光看不练假把式啊。。
花不开但要富贵 发表于 2016-5-21 10:12
花不开但要富贵 发表于 2016-5-21 10:13
 楼主| 风车 发表于 2016-5-21 10:14
榻榻米 发表于 2016-5-21 10:11
程序也分享出来吧  光看不练假把式啊。。

好哒,忘记上传了
CRoot 发表于 2016-5-21 10:19
求原程序
 楼主| 风车 发表于 2016-6-1 09:50
1047861073 发表于 2016-5-21 10:13
我特别喜欢破解,但就是学不会

慢慢来,万事开头难嘛
 楼主| 风车 发表于 2016-6-1 09:52

源程序已上传哦
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 13:42

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表