上一篇:逆向---01.Nop、中文字符串搜索、保存修改后程序

OD调试基础:(01、02篇练手工具:https://pan.baidu.com/s/1kW2qlCz

nop是删除跳转,你别问我,我看不见也听不见

je是条件跳转,满足条件就跳转,不满足就不跳转

jnz也是条件跳转,不满足条件就跳转

jmp是无条件跳转,管你啥呢,先跳再说

 (姑且可以这么理解)

快捷键:F2下断点、F8单步执行,F9运行,重新载入:点 << 按键 (在工具栏下方的图标栏中

EIP是32位机的指令寄存器,Z标志位1~真,0~假(案例中1代表je跳转实现,0代表je跳转不实现)

OD寄存器修改或者标志位修改是不能保存修改的,一般用于调试(类似于VS调试时自己临时改变量的值,程序重新运行该怎么滴还怎么滴)

举个应用的栗子:

文章中有太基础部分如果看不懂就看上一篇

这是一个老版本的视频播放软件(有加密功能),先找关键词,Wrong (最好大小写一样)

字符串搜索后双击打开

发现上面有一个跳转,下个断点看看F2(HEX数据窗口对应行处双击也可以),然后运行F9

扩充,断点有没有实现不是直接看,得调试的过程中看红色跳转线代表跳转实现,灰色的代表跳转没实现

先Z标志位改下看看(双击就会取反0》1)Z标志位1~真,0~假(案例中1代表je跳转实现,0代表je跳转不实现)

F9继续运行,发现可以打开播放了,这时候还是伪破解(OD寄存器修改或者标志位修改是不能保存修改的

进入正常破解流程,je是条件跳转,想要无条件跳就来个jmp,双击反汇编窗口的这行,把je改成jmp(有些人是 je X0040....,在X前加个0,0x代表十六进制,工具问题可能会把0干掉了)

保存一下,过程从简,不明白的看第一课

KO了

下一篇:逆向---03.mov、test等汇编指令、EAX、关键Call、OD调试技巧

逆向---02.je & jmp & jnz 、OD调试的更多相关文章

  1. 逆向---03.mov、test等汇编指令、EAX、关键Call、OD调试技巧

    上一篇:逆向---02.je & jmp & jnz .OD调试 基础知识:(栗子中也会说的)栗子:链接: https://pan.baidu.com/s/1qZbbTvQ 密码: i ...

  2. OD调试4--去除NAG窗口

    OD调试4--去除NAG窗口 nag本意是烦人的意思,nag窗口是软件设计者用来时不时提醒用户购买正版的警告窗口.软件设计者可能认为当用户忍受不了试用版中的这些烦人的窗口时,就会考虑购买正式版本. 一 ...

  3. OD调试3--reverseMe

    OD调试3:reverseMe.exe(reverse就是逆向的意思) 运行效果图: 1关于寄存器 寄存器就好比是CPU身上的口袋,方便CPU随时从里边拿出需要的东西来使用.今天的程序中涉及到九个寄存 ...

  4. OD调试9—实例:深入分析代码完成软件破解

    OD调试9—实例:深入分析代码完成软件破解  爆破,是最初级的解决方案,不到万不得已,我们不直接修改JNZ通关.因为这样子的话,我们就享受不到破解.逆向的真正乐趣了. 了解程序背后按照剧情发展经常会出 ...

  5. OD调试器调试Delphi程序按钮事件断点方法

    这几天我调试一个Delphi程序,总是无法断点按钮事件,像我这样的菜鸟断点按钮事件真心累啊.所以我分享一下我下断点的经验!希望新手们少走弯路!!   工具/原料   OD调试器 Delphi程序 方法 ...

  6. OD调试学习笔记7—去除未注册版软件的使用次数限制

    OD调试学习笔记7—去除未注册版软件的使用次数限制 本节使用的软件链接 (想自己试验下的可以下载) 一:破解的思路 仔细观察一个程序,我们会发现,无论在怎么加密,无论加密哪里,这个程序加密的目的就是需 ...

  7. OD调试6—使未注册版软件的功能得以实现

    OD调试6—使未注册版软件的功能得以实现 本节使用的软件下载链接 (想动手试验的朋友可以下载来试试) 继续开始我OD调试教程的学习笔记. 本次试验对真正的程序进行逆向.(之前的都是为破解而专门设计的小 ...

  8. OD调试2---TraceMe

    OD调试2---TraceMe 拆解一个Windows程序要比拆解一个DOS程序容易得多,因为在Windows中,只要API函数被使用,想对寻找蛛丝马迹的人隐藏一些东西是比较困难的.因此分析一个程序, ...

  9. OD调试1--第一个win32程序

    OD调试一:第一个Win32程序的修改 在软件开发的过程中,程序员会使用一些调试工具,以便高效地找出软件中存在的错误.而在逆向分析领域,分析者也会利用相关的调试工具来分析软件的行为并验证分析结果.由于 ...

随机推荐

  1. P3830 [SHOI2012]随机树

    P3830 [SHOI2012]随机树 链接 分析: 第一问:f[i]表示有i个叶子结点的时候的平均深度,$f[i] = \frac{f[i - 1] + 2 + f[i - 1] * (i - 1) ...

  2. JS 数据处理技巧及小算法汇总

    前言: 金秋九月的最后一天,突然发现这个月博客啥也没更新,不写点什么总觉得这个月没啥长进,逆水行舟,不进则退,前进的路上贵在坚持,说好的每个月至少一到两篇,不能半途而废!好多知识写下来也能加深一下自身 ...

  3. 微服务之Sping Cloud

    版本说明 Finchley SR2 价值简要 微服务之间是松耦合,跨不同业务部门,提供非常充分的灵活性,加快项目开发完成效率,方便组件化独立可扩展性及复用. 微服务应用结构表现 组件简要 1. Eur ...

  4. Openstack部署踩坑

    第一周: 使用kola部署Openstack,vip_address有问题,双网上也不行,就是部署不了,但all-in-one却可以,可是节点不会加. 第二周: 使用Packstack部署Openst ...

  5. app推广及主要代码

    app推广:      一.基本情况       我们把推广和调研都放在了一起,主要是调研,主要通过调查问卷和直接访问的方式,让调查的人能够看到我们app的主要功能, 然后做出评价和对此改善的意见.调 ...

  6. Minimum Integer CodeForces - 1101A (思维+公式)

    You are given qq queries in the following form: Given three integers lili, riri and didi, find minim ...

  7. spring 整合

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  8. activiti-ldap-integration

    https://stackoverflow.com/questions/19488764/activiti-ldap-integration https://community.alfresco.co ...

  9. Apache的Thrift引发的编译思考

    最近偶然看到了Apache的Thrift,感觉有点像Corba架构后的变种(赞一个,Facebook真伟大).WSDL能生成C#和Java的(SOAP标准接口,做WebService都用过).Corb ...

  10. mysql distinct 去重

    在使用MySQL时,有时需要查询出某个字段不重复的记录,这时可以使用mysql提供的distinct这个关键字来过滤重复的记录,但是实际中我们往往用distinct来返回不重复字段的条数(count( ...