zoukankan      html  css  js  c++  java
  • WinRaR去广告弹窗

    WinRAR5.8(64位)去nag弹窗

    参考:https://bbs.pediy.com/thread-257107.htm

    程序信息:

    WinRAR v5.80 64位

    工具:

    • x64dbg(ollydbg不能调试64位程序)

    • Exeinfo PE

    开始破解:

    1.先用Exeinfo PE查看下程序(打开工具,将程序拖拽进去即可查看),得到信息如下图,可知该程序没有加壳,而且是用C++写的

    2.程序会出现两个弹窗,一个是提醒你该软件不是免费的,让你购买,另一个是广告弹窗,两个随机出现一个(不是百分百触发分析就很难受了),我们要把这个两个弹窗都去掉

    3.第一个是模态对话框,我们在函数DialogBoxParamW处下断点,先使用x64dbg加载程序,然后按Ctrl+G,输入DialogBoxParamW点确定来到DialogBoxParamW函数处,按F2下断

     

    4.然后按F9让程序运行起来,如果是弹出广告窗口就往下看第7步,如果是停在我们刚刚断点处,恭喜你和我一样,通过栈窗口的返回地址返回到调用DialogBoxParamW函数的地址处,向上分析,很容易就找到了关键跳转

    5.我们直接将关键跳转条件改为无条件跳转,选中要修改的关键跳转处按空格键,然后将je改为jmp

    6.右键->补丁(Ctrl+P),然后点修补文件(文件名要带exe后缀)

    7.提示购买的窗口就去掉了,现在我们用修改过的或者修改之前的程序(去掉之前的断点)都行,用x64dbg重新加载程序,直接按F9,让程序运行起来,如果没有出现广告弹窗就按Ctrl+F2重新加载再运行,出现了广告弹窗后先不要关闭,在x64dbg中点击句柄来到句柄窗口,然后通过标题找到窗口类名,并给该窗口下个消息断点WM_DESTROY

     

    8.现在关掉广告弹窗就会触发我们刚刚下的消息断点,来到用户领空

    9.右键->搜索->当前模块->字符串,输入我们刚刚得到的窗口类名,可以搜索到两个,我们先看第一个

     

    10.双击第一行的地址,转到反汇编窗口,可以看到下面立马就调用了CreateWindowExW函数,所以这里可能就是创建广告窗口的地方,我们将调用指令直接nop掉,然后打上补丁(见第6步)

     

    11.所以只要将两处同时打上补丁就可以将两个窗口都去掉了

    直面挫折,顽强生长
  • 相关阅读:
    相机用的 SD Card 锁Lock 烂掉了,无法正常写入
    Cannon 60D 电池卡在电池槽了,拔不出来怎么办?
    免费好用的 Apple 工具(Windows 适用)
    𠝹 (界刂) 呢個字點打?
    学校或公司转ISP -boardband (上网公司)注意事项记录
    iis站点添加.asmx的映射
    跨页面传参
    setTimeout和setInterval
    鼠标获取屏幕上的固定点位置坐标
    把完整字符串分割为字符串数组
  • 原文地址:https://www.cnblogs.com/ndyxb/p/12467466.html
Copyright © 2011-2022 走看看