wbvwzc 发表于 2016-11-30 22:55

一款聊天工具密码恢复软件的脱壳和爆破

本帖最后由 wbvwzc 于 2016-12-1 07:22 编辑


本帖最后由 wbvwzc 于 2016-11-30 18:29 编辑

目标软件 :Advanced Instant Messengers Password Recovery 版 本:3.80平 台:Window xp 32bit
工 具:OD
官 网:http://www.xdowns.com/soft/8/114/2009/Soft_53287.html保护方式:ASProtect 2.1x SKE -> Alexey Solodovnikov软件功能:聊天工具密码恢复(Advanced Instant Messengers Password Recovery),即时聊天IM工具还原密码的工具,用于查找并且恢复自己丢失的密码。支持多达40种聊天工具。
1.首先查壳

好了下面我们进行脱壳
2.这里我们进行脱壳,手脱我脱不掉,如有能者可以在回帖中发一下我也学习一下
我用的的脚本是Aspr2.XX_unpacker_v1.13E.osc
首先od载入使用脚本插件运行脚本


这里到了oep并且没有stolen code,点确定即可,呵呵是不是很简单。
而且脚本已经帮你dump好了,直接修复iat就好。
我们查壳一下脚本运行记录


RVA of OEP = 00073F38
RVA of IAT = 00087000
Size of IAT = 00000464
有了这三个数据就可以修复了

全部有效,抓取即可,然后试运行成功。

到此脱壳结束
3,接下来我们爆破,因为我没搞懂算法,只能爆破,如有算法破解出来发上来我也学习一下
首先od载入试注册看看

这里F12暂停法和查字符串都行,我用查字符串法

双击进去,我们看见注册失败上面就是注册成功,同时也看到关键跳和关键call。

我们在句首下断,注册断下F7跟,改变跳转让它注册成功并点确定后继续跟,看注册码保存在那

没跟到,我们查字符串发现这些

难道注册码就保存这里,我们打开注册表查找一下得到

因为没看破算法所以决定试试爆破,,考虑重启验证要读取注册表注册码项可以重新运行程序下RegQueryValueExA断并运行。
bp RegQueryValueExA断下后查看堆栈窗口发现读取code时为止

取消断点F8返回到程序带段

继续往下跟可以看到寄存器和堆栈窗口出现假注册码

继续F8跟,到这里分析如图

上述分析可以通过改变跳转来验证,我们可直接nop掉关键跳运行试试,发现不行
于是我明白只改跳转不行,必须改变eax值才行,于是突发奇想我把关键call里面的代码改成为eax是否可行试试吧
我在关键call下断重新运行到这儿,F7进关键call里改代码

运行看看,呵呵搞定了,注册按钮变灰色了

复制保存ok,好了不足之处望大家帮忙补充
希望大家多多支持,增加我们新手的动力。

yufan1123 发表于 2016-11-30 23:05

感谢分享!支持一下~菜鸟一枚前来学习~

palard 发表于 2016-11-30 23:05

沙发刘明。

阿尔法小分队 发表于 2016-11-30 23:08


感谢分享!支持一下~菜鸟一枚前来学习~

hymzx123 发表于 2016-11-30 23:13

沙发留名

少主 发表于 2016-11-30 23:36

楼主分析的好详细!支持楼主

czc476 发表于 2016-12-1 00:08

很不错,很适合小白学习

liangkaining 发表于 2016-12-1 00:14

像楼主学习!!

kszhf 发表于 2016-12-1 01:14

66666666666666666666

bxzda123 发表于 2016-12-1 11:52

支持一下
页: [1] 2 3
查看完整版本: 一款聊天工具密码恢复软件的脱壳和爆破