X86逆向1:软件破解入门课【课件下载】
从本节课开始,我将带领小白入门学习软件破解的相关内容,大佬绕过,以后将会定期更新从最基本的破解知识点开始学习,由简单到复杂循序渐进,难度会逐步提高。
为了防止版权方面的争议,我将自行编写一些破解案例来供大家练手学习,破解其实就是一个思路的问题,这里别看每个程序都很小用处不大,破解的技术学到了,是可以应用到每一个程序中来实战的。在开始学习之前作者希望你具有一定的汇编代码阅读能力,和一定的C语言或易语言的开发能力。
------------------------------------------------------------
本章难度:☆☆☆☆☆☆☆☆☆☆
本章课件:CM_01.zip
------------------------------------------------------------
后期课程课件打包:链接:https://pan.baidu.com/s/1hVZxVeTn4h0QNsTlC1xCDg 提取码:4qzs
逆向软件,可以在网上找到的,满大街都是,这里就不分享了,百度网盘下载太慢,受罪。
------------------------------------------------------------
以下是一个简单的登陆提示框,当用户输入正确的用户名和密码时,则会提示破解成功,如果输入错误则提示错误,当然我们这里默认是不知道密码的,我们的任务就是想办法在不知道密码的情况下强制绕过这个登录限制,完成这个软件的破解任务,本关非常的简单也非常的基础,希望能够认真的掌握这一破解技术。

先来看一下这个小程序的核心代码,这样有助于你理解破解流程,如下首先判断两个编辑框是否为空,如果为空则会弹出一个MessageBox信息框,提示用户密码错误,并清空两个编辑框。
否则提示用户破解成功,也就通关了,这个软件有很多中破解思路,其中最常用也是最简单的就是搜索字符串,当然你也可以下一个MessageBoxA的断点来完成破解,由于是入门我们就使用字符串的方式来破解这个程序了。

1.直接打开我们准备的课件OllyICE,然后直接将我们的CM_01.exe拖入OD程序中去。

2.直接OD载入这个待破解的程序,发现并没有壳,这里的特征是VC6.0,你或许会有疑问,为啥易语言编译出的代码是VC6的特征,其实易语言是调用了VC6的链接器,所以看上去很像VC++写的程序。

2.我们用第一种方法来破解这个程序,首先【F12】让程序运行起来,让程序的字符串完全加载,这样有助于我们搜索字符串数据。

3.直接在反汇编窗口【右键】搜索中文字符串,选择ASCII搜索,这里也可以选择智能搜索。

4.接着按下【ctrl +F】 搜索,并输入弹出的错误提示框中的内容,可以看到我们已经找到了,此时直接双击这个错误的字符串。

5.此时可以看到两处弹窗的代码,上面的是成功登录后的弹窗,而下面的则是是失败的弹窗,我们往上找关键的跳转。

6.如上,我们在这个【JE 00401257】处下一个【F2】断点,然后运行程序,并输入随机的帐号密码。

6.当我们点击登录按钮时OD断下了,此时我们的程序处于假死的状态。除此之外,还需要注意在OD中,红色的线条代表跳转成立,而灰色的线条则代表跳转不成立,很明显这里跳转成立了,所以跳过了破解成功,执行了密码错误的提示框,我们此时将je 改为jne 也就是取反的意思。

7.修改完成以后,直接保存这个小程序,反汇编窗口,右键选择【复制可执行文件】,选择按钮。

8.我们直接点击保存按钮,直接保存到桌面,【CM_破解.exe】。

9.运行这个打过补丁的程序,输入随机的用户名密码,然后点击登录,会发现破解成功。

写教程不容易,转载请加出处,您添加出处,是我创作的动力!
X86逆向1:软件破解入门课【课件下载】的更多相关文章
- 软件破解入门(暴力破解CrackMe)
---恢复内容开始--- 所谓暴力破解,就是通过修改汇编代码进而控制程序的运行流程,达到不需注册码也能正常使用软件的目的.相对于解出算法进而编写注册机,暴破的技术含量是比较低的.但也正是因为一本05年 ...
- X86逆向5:破解程序的自效验
在软件的破解过程中,经常会遇到程序的自效验问题,什么是自效验?当文件大小发生变化,或者MD5特征变化的时候就会触发自效验暗装,有些暗装是直接退出,而有些则是格盘蓝屏等,所以在调试这样的程序的时候尽量在 ...
- 专注于C#.Net WPF软件开发-软件反编译-软件破解-逆向-靖芯科技-包括安卓APK反编译
靖芯科技提供.Net软件开发,软件修改定制二次开发,软件破解,反编译,逆向等各项优质服务: 包括安卓APK软件反编译. 包括但不限于C#,WPF,Surface,Winform,Asp.net.JAV ...
- [视频]K8软件破解脱壳入门教程
[视频]K8软件破解脱壳入门教程 链接:https://pan.baidu.com/s/1aV9485MmtRedU6pzyr--Vw 提取码:vbak C:\Users\K8team\Desktop ...
- X86逆向11:F12暂停法的妙用
本节课将介绍F12暂停法的使用技巧,F12暂停法的原理其实很简单,当我们点击OD中的暂停按钮时,OD会将当前的堆栈状态保存起来,并暂停当前窗体的线程执行,直到我们点击运行按钮OD才会唤醒全部线程并继续 ...
- X86逆向10:学会使用硬件断点
本节课我们将学习硬件断点的使用技巧,硬件断点是由硬件提供给我们的一组寄存器,我们可以对这些硬件寄存器设置相应的值,然后让硬件帮我们断在需要下断点的地址上面,这就是硬件断点,硬件断点依赖于寄存器,这些寄 ...
- OD调试9—实例:深入分析代码完成软件破解
OD调试9—实例:深入分析代码完成软件破解 爆破,是最初级的解决方案,不到万不得已,我们不直接修改JNZ通关.因为这样子的话,我们就享受不到破解.逆向的真正乐趣了. 了解程序背后按照剧情发展经常会出 ...
- OllyDBG 破解入门教程
一.OllyDBG 的安装与配置OllyDBG 版的发布版本是个 ZIP 压缩包,只要解压到一个目录下,运行 OllyDBG.exe 就可以了.汉化版的发布版本是个 RAR 压缩包,同样只需解压到一 ...
- X86逆向2:提取按钮通杀特征码
本章我们将学习特征码的提取与定位,特征码是软件中一段固定的具有标志性的代码片段,特征码的用途非常广泛,最常见的就是杀毒软件的查杀了,查杀就是根据特征码定位技术实现的,再比如木马的免杀也是修改了特征码的 ...
随机推荐
- [JZOJ6345]:ZYB建围墙(数学+构造)
题目描述 $ZYB$之国是特殊的六边形构造. 已知王国一共有$N$户家庭,每个家庭需占据一个不同的六边形格子. 王国里交流很频繁,所以这些家庭要构成一个连通区域:同时出于安全考虑,国王$ZYB$想在外 ...
- arcgis 面或线要素类上的搜索游标
import arcpy infc = arcpy.GetParameterAsText(0) # Identify the geometry field # desc = arcpy.Describ ...
- Windows/Linux C/C++任意键继续
#include <stdio.h> #include <stdlib.h> #ifdef _WIN32 #include <stdlib.h> #else #in ...
- [JDBC]批量提交插入语句以提高数据插入速度(效率提升不明显)
// Initialize conn&stmt Connection conn=null; Statement stmt=null; ... conn=dataSource.getConnec ...
- P2341 [HAOI2006]受欢迎的牛(更完)
P2341 [HAOI2006]受欢迎的牛 题解 tarjan 缩点板子题 如果 A 稀饭 B,那就 A 向 B 连边,构造出一个有向图 如果这个有向图里有强连通分量,也就说明这个强连通分量里的所有奶 ...
- ubuntu16.04下如何安装mkimage工具?
答: sudo apt-get install u-boot-tools -y
- 9Patch图
NinePatch是一种很有用的PNG图片格式,它可以在特定区域随文字大小进行缩放. - 上边线控制水平拉伸- 左边线控制竖直拉伸- 右边线和下边线控制内容区域 如下: 背景图片的中间区域会随着文字的 ...
- Linux 上svn使用http访问设置
https://blog.csdn.net/wobuxingfang/article/details/70835414https://blog.csdn.net/u010487568/article/ ...
- svn 创建外部链接
背景: 之前的服务器项目<杀戮链条>,服务器工程中的common目录需要在多个子工程中共享,为了统一,所以只保留一个common目录,在子工程中采用外部链接的方法共享到工程中 1. 打开 ...
- 工具 --- Git
Git介绍 Git是目前世界上最先进的分布式版本控制系统. git 诞生: git诞生之前当时的CVS和SVN这些集中式的版本控制系统不但速度慢,而且必须联网才可以使用.由于代码量越来越多,linus ...