• OD 实验(八)


    程序:

    运行

    弹出 NAG 窗口,提示要花 20 美元注册

    然后会进入主窗口

    提示剩余 5 天的使用时间

    点击,菜单栏 -> Help -> About

    显示未注册版本

    逆向:

    用 OD 打开程序

    首先把剩余 5 天的字符串作为切入点

    先按 F9 运行一下程序

    右键 -> 查找 -> 所有参考文本字串

    右键 -> 查找文本

    要把整个范围勾选上

    继续查找看看,按 Ctrl+L

    这个和第一个是一样的

    双击第一个查找到的结果,跳到该字符串所在的位置

    这个地方的上一条语句是一个 jnz 跳转

    如果跳转实现,就会跳过该字符串

    在 jnz 跳转指令处下一个断点,重新跑一下程序

    程序停在该指令处,此时的程序还没有弹窗和主界面

    此时的 jnz 跳转指令不会进行跳转

    将 ZF 置 0,让 jnz 实现跳转,再按 F9 运行

    程序主界面提示剩余天数的字符串没了

    接着去除 About 上显示的未注册版本

    跟上面的操作差不多,先搜索字符串

    找到一个

    双击查看该字符串所在的位置

    上面也有一个 jnz 跳转指令,在该指令处下一个断点

    如果 jnz 执行跳转的话,将会跳过显示该字符串

    在该字符串处也下一个断点

    往上拉一点

    在这个过程的入口处也下一个断点

    重新跑一下程序

    点击,菜单栏 -> Help -> About

    OD 将停在程序入口的断点处

    继续往下走

    走到 jnz 处,停下

    此时的 jnz 不会跳转,把 ZF 置 0 实现跳转

    此时的程序显示的是注册版本

  • 相关阅读:
    学习Vue CLI 3.x版本的安装以及创建项目
    Java中同一线程中的对象hashcode一样
    Java中线程范围内共享问题
    Java中的线程池模拟
    java中的Switch
    string、stringbuffer、stringbuild的时间性能对比
    Java中lock上锁 unlock解锁
    java中的三目运算
    Java中的Instanceof
    一个简单的for循环
  • 原文地址:https://www.cnblogs.com/sch01ar/p/9607458.html
Copyright © 2020-2023  润新知