打印 上一主题 下一主题

软件破解基础知识详解(手把手教你如何破解软件)

[复制链接]
跳转到指定楼层
楼主
发表于 2021-11-16 14:59:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
查看 : 9024|回复 : 0


在介绍PE结构后,本文将通过OD(OllyDBG)对示例程序进行逆向分析,绕过登录判定,实现破解登录的效果。本文以简单的程序为示例,其目的是方便我们直观了解破解方法及破解原理,通过由浅到深,逐步递增难度的方式,为下一步深入逆向分析打下坚实的基础。

1.破解示例程序介绍

本程序通过C++编写,当点击“确定”按钮时,会获取用户输入的用户名及密码进行判断,当未输入任何内容点击提交时,系统会显示“用户名与密码不能为空”。当输入用户名和密码与判断数据“test”不符时,系统会提示“用户名或密码错误”,当用户名及密码都为“test”时,则提示“登录成功”。详细代码如下图:


测试示例源代码

当我们运行crackMeText.exe程序时,展现效果如下:


打开效果

当我们输入内容错误(用户名及密码都不是test)时,系统提示“用户名或密码错误”。


登录错误

当我们输入内容正确(用户名及密码都是test)时,系统提示“登录成功”。


登录成功

以上是测试示例的简单介绍。

2.OD程序逆向分析介绍

我们可以打开本地的OD程序,将示例系统拖入至OD即可,效果如下图:


OD主线程模块

左上为反汇编窗口,右上为寄存器窗口,左下为栈窗口,右下为数据窗口。

反汇编窗口:用户显示反汇编代码,调试分析程序主要是就是在这个窗口进行。

寄存器窗口:用户显示各个寄存器内容,包括:通用寄存器、段寄存器、标志寄存器等。

栈窗口:用户显示栈内容,即ESP寄存器指向的地址部分。

数据窗口:多种方式显示内存中的内容,可以使用Hex、文本、短型、长型、反汇编等。

由于内容较多,我们可通过搜索ASCII查看字符串进行快速定位,该操作位于插件->中文搜索引擎->搜索ASCII,具体如下图:


OD搜索ASCLL

搜索完毕会,会显示中文搜索引擎内容,我们双击选择“登录成功”,如下图:


双击 “登录成功”

双击后,便快速定位至“登录成功”反汇编代码段中,如下图:


“登录成功”反汇编

届时,我们可以查看该区域的局部汇编代码。

3.OD程序动态调试分析介绍

通过静态查看反汇编代码,使我们对其内容有一定了解后,我们可以通过设置断点进行逻辑梳理。

点击指定行,“右键”->断点->切换,便可对指定行设置断点。如下图:


断点设置

设置完毕后,我们点击“运行程序”,随后示例程序便会启动,我们可输入test/test123,信息进行断点调试,如下图:


用户名及密码信息录入

点击“确定”按钮后,OD会锁定指定断点设置行,我们可通过“F8”进行单步调试,如下图:


断点调试

上图为JNZ判断(后期我会写一篇关于逆向的基础知识),当等于0时跳转至012318D6位置。

判断不满足后,会跳入到 012318D6位置,如下图:


入栈

继续按“F8”后,会进入PUSH “用户名或密码错误”行。


告警内容入栈

最后执行到call代码后,我们打开测试程序时,发现弹出了“用户名或密码错误”对话框。


登录错误对话框

通过设置断点后逐步调试,我们对程序执行有个更深入的了解,随后我们便可以对汇编内容进行修改。

4.汇编内容修改

我的绕过思路是,将if语句中最后的密码判断直接绕过(strcmp(password,"test")==0),也就是只需要用户名输入正确即可。找到该语句的对应位置后,双击指定行(00851897处),如下图:


00851897原始内容

我们将该处内容修改为 je 000118CD,即若为1时,跳转至000118CD处(为登录正确内容位置)。当我们再次运行程序输入test(用户名)/123(密码)时,系统提示“登录成”。


00851897内容修改

通过以上步骤,我们就可以通过修改汇编内容,绕过示例程序登录判断。该方式只是通过内存形式进行修改,并未实际修改原始示例程序,我们可通过存盘的形式进行修改。选中修改的反汇编代码行,“右键”->复制到可执行文件->选择,如下图:


复制到可执行文件

随后我们会跳转至文件对话框中,如下图:


文件对话框

在该页面我们,“右键”->保存文件,便可将已修改的文件另存为exe,如下图:


程序保存

修改生成后的exe再运行时,便可实现上面我们修改后的效果,只需要输入正确用户名test即可(密码随便输入)。

5.总结

通过以上逐步讲解,相信大家已经清楚了解到如何通过OD进行逆向分析及绕过破解,以简单的示例是让大家更容易有所认识,针对复杂系统,您还需具有相对丰富的编程、汇编、工具等多方面经验。


黑客接单网,一个诚信可靠的黑客在线接单平台网站 - 论坛版权欢迎各位客户访问黑客接单网
黑客接单网,一个诚信可靠的黑客在线接单平台网站是一个专业的黑客在线接单服务平台
黑客接单网,一个诚信可靠的黑客在线接单平台网站聚集多位顶级黑客大牛于此
专业服务于网站攻击,网站入侵,软件开发,软件破解,聊天记录截取,手机定位,删帖,改贴,开房记录查询等各种网络服务
如果您有相关业务需求,请联系我们在线客服咨询,获取解决方案
黑客接单网,一个诚信可靠的黑客在线接单平台网站全体工作人员恭候您下达任务,我们誓必不负重托。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

HeiKeJieDan(黑客接单网)黑客接单网,是一个国际顶级黑客在线接单网站平台,平台聚集数十位IT界顶级黑客精英大神,软件-网站开发工程师,逆向破解工程师,以及后勤协助人员,网络在线全职兼职人员,强大的IT精英团队聚集,只为为您提供最优质可靠的网络安全技术服务。

联系我们

香港-缅甸-菲律宾-美国

0037259400637(服务时间:9:00-18:00)

hk@kefu1.cc

在线咨询新浪微博官方微信官方微信

黑客客服

微   信:HKJD1122
客服QQ:601049026
Sweetalk号:12036078
TeleGram:hkjd12345
国际客服:0037259400637

一号客服 二号客服 微信客服 国际电话0037259400637 返回顶部
快速回复 返回顶部 返回列表