XX QQ登陆器2017.6.28最新版学习破解笔记
本帖最后由 zjh16529 于 2019-6-6 18:40 编辑前天发布了一篇破解豪迪QQ群发的破解笔记 http://www.52pojie.cn/thread-628301-1-1.html
贴中有坛友提出想要一个QQ登陆器的破解 @AquariusSign
正好昨晚有时间,就下载下来简单看了一下,发现和群发破解思路差不多,正好拿来练习一下,笔记如下:
一、查壳加区段
大神们都说,养成好习惯!所以第一步还是安装豪迪QQ登陆器2017.6.28版本。查壳,加区段以做备用
使用ExeinfoPE查壳,发现程序无壳,为Delphi编写程序
使用StudyPE增加一个52pojie区段,同时得到内存偏移地址:00596000
二、破解本地验证
初步运行程序,点击注册按钮,发现和QQ群发注册界面基本相仿,确定本地破解思路也基本一致
打开OD程序,载入HDLoginQQ.exe
中文搜索 UNICODE,查找 已注册版本
通过代码,我们可以确定内存地址0x548074为存放是否注册成功地址,如果值为1则为已注册
这里我们查找所有常量,得到五处地址
第1处,直接赋值0,我们将0改为1
第2处,进行数值比较,如果没注册就跳转,为保险起见,我们将JE行NOP掉
第3处,此处分析代码,初步本地验证注册码,我们直接强制跳到赋值1处 即 jmp 00533FF4
第4处,这里判断条件,直接改为代码赋值 mov byte ptr ds:,0x1
第5处,比较数值,没注册版本跳转,我们这里直接把JE行NOP掉,让它永远是注册版本哈
修改好以上几处,保存文件,重新载入运行
三、破解网络验证及自动更新
由于我们强行将注册内存地址数值改为1,这里我们运行发现,已经触发了网络验证
出现了 正在验证...字样,我们尝试使用中文搜索,结果直接搜到地址
通过分析此段代码发现
该地址为验证注册地址,那么我们即可继续查找常量 0x5444B0 共查到6处
第1处,取出后直接赋值1,不做修改
第2处,取出后直接赋值0,改为1
第3处,取出后进行比较,此处下面有个JE,可以直接NOP掉,或不修改,因为下面我们会把整段RETN
第4处,取出后直接赋值0,改为1
第5处,取出后直接赋值1,不做修改
第6处,取出后直接赋值0,改为1
这样程序无论是本地验证还是网络验证,均为注册状态
然后我们保存文件后 返回 正在验证... 地址 005315CB
通过跟踪程序我们发现,些段为网络验证及自动更新获取信息函数,我们可以直接到段首 retn 掉
四、破解注册窗口输入注册码点确定后网络验证注册码
OD运行脚本 各语言按钮事件 “Delphi & VB事件断点查找脚本.osc”
运行程序,进入注册窗口,输入12位数字,点击确定后OD中断在 00534290
单步跟入会发现连接网址 http://www.hd466.com/cgi/check.d ... 8123654789012365478 进行验证
通过网站返回信息进行验证。
进入CALL,直接 retn 4 掉,之后我们保存重新载入运行,点注册后
程序显示注册成功后,会自动重启进行验证,当然,重启还是注册版本,哈哈:loveliness:
五、破解自校验
注册处理完毕后,我们即尝试输入几个QQ号后点开始登陆
看到这个提示,我们确定程序有自校验功能.
根据破解QQ群发经验,校验前会加载 Desklog.dll 文件,我们中文搜索此文件名,直接来到
继续跟入,来到关键CALL点
跟入发现自校验代码段
这时我们需要使用OD载入原版本程序,设置 004D68B2 处断点,运行程序到代码处会暂停,此时程序窗口还没有启动,注册观察EBX值为6
程序窗口打开后,我们随便添加个QQ号和密码,点击开始登陆,程序会再次暂停,此时EBX值为10
数据窗口跟随,得到16位校验二进制码BE 2F DB 17 22 E8 E6 21 72 44 34 4B 93 12 25 A2
这时我们进行代码修改
保存文件后重新运行程序,已经可以正常登陆QQ,说明修改自校验成功
六、破解登陆QQ个数限制
通过以上修改后,当选择的QQ个数超过3个时,还会出现提示
为什么我们修改成已经注册的版本还会出现此提示呢?这就是程序设置的暗桩吗?
于是重新加载程序,运行按钮事件脚本,运行程序,点登陆后中断
单步跟入,分析整个代码段,找到关键代码点
这里将JLE改为JMP,即不管数值是多少,都启动登陆QQ程序
原以为程序到此已经完成破解,即运行程序,随便点击按钮测试,突然发现
设置选项里有此功能,软件作者会不会在此也加入暗桩呢?
答案是肯定的!!!
当我们尝试双击分别登陆QQ,登陆到第四个QQ时,依然会出现提示:未注册版本只能登陆3个QQ
那我们依然运行按键事件,双击第4个QQ运行,程序中断,继续单步跟入,发现关键代码
此代码段和上面的基本一样,那还等什么,果断将JLE改为JMP
全部保存后,再次运行程序,无论如何登陆QQ,程序均一切正常。^_^
七、总结
简单的对注册窗口等处做下修改。
此次破解虽然和QQ群发很多地方相似,但也用了几个小时进行调试
总体来说,有了上一次的学习笔记,给这次破解打下了基础,也少走了不少的弯路
本想本次修改使用内存补丁工具,省得过自校验那里,苦于修改代码较多,懒得去整理,于是还是爆破吧
感谢吾爱论坛提供这么好的平台,让我能不断的成长和学习!
各位看官到此是不是也看累了,加分时间到了!!! 哈哈 {:1_899:}
来看下最后的成品图
特地来评论谢谢你,另外登录的之后被360拦截,提示它会访问183.60.16.214:8000,。我查了下这个IP是腾讯服务器的,应该没事吧,360提示? 谢谢楼主分享,先收下了,多分享这样的哦 感谢分享破解! 萌新弱弱的问下,又什么用呀。 灰常的感谢, 不能用了
马秀才 发表于 2017-7-28 12:45
不能用了
使用一切正常的 就服你!! 学习了谢谢大神 感谢分享破解!