首页 > 代码库 > 宝贝儿,你的软件破了个洞
宝贝儿,你的软件破了个洞
作者:傀儡
来源:i春秋社区
0x00 补丁
补丁是指衣服、被褥上为遮掩破洞而钉补上的小布块。现在也指对于大型软件系统(如微软操作系统)在使用过程中暴露的问题(一般由黑客或病毒设计者发现)而发布的解决问题的小程序。就像衣服烂了就要打补丁一样,人编写程序不可能十全十美的。
所以软件也免不了会出现BUG,而补丁是专门修复这些BUG做的因为原来发布的软件存在缺陷,发现之后另外编制一个小程序使其完善,这种小程序俗称补丁。补丁是由软件的原来作者制作的,可以访问网站下载补丁。 --转载百度百科
0x01 准备工作
1.OD
2.编程语言-我用的是易语言,别问我我什么!因为写补丁比较简单!
3.需要破解的软件。 --因为我的软件已经开源了,我就来破解我之前软件V4.1版本
0x02 开工!
1.我们先来看下如何破解它!
2.我们先把软件导入到OD中。搜索下软件的字符串
3.然后我们找到请输入账号这个字符串后发现有类似登陆成功的字样
4.双击之后,设置断点,开始一步一步调试
5.经调试我们发现程序登陆成功会跳转到 00401954 这个地址上
6.我们将地址 0040145a 处代码改成 jmp 00401954 //直接跳转到登陆成功
7.F9调试下,发现不需要输入账号就可以登陆了!
8.这个就已经破解成功啦~我们可以这样保存文件使用,也可以再编写一个破解补丁!
0x02 编写破解补丁!
1.写破解补丁我使用的是易语言,原因是因为我比较辣鸡,玩不了其他的高级语言。
2.易语言导入超级模块,里面集成了我们要用的命令
3.编写我们的命令,命令如下。
4.将我们需要修改数据的内存地址写入易语言函数的地址处
*注:因为每次修改只能修改一个字节,所以我们需要一个字节一个字节的改!
我们可以根据OD中变红的数据中计算出地址并修改 \\ 两个数为一字节
5.将我们变红的数据填入到我们的易语言函数中
6.我们将编译好的dll注入到程序中
7.OK,登陆成功!
////////////////////////////////////////////////////////////////////////////////////////////////
By:傀儡
宝贝儿,你的软件破了个洞