关于一次对机房还原软件【XXXX】的简单破解过程
本帖最后由 jidesheng6 于 2019-7-9 12:52 编辑首先来说一下这个软件,这个软件是只能在清华同方有还原卡的电脑上用的
不能再家里分析,今天去学校把过程截图下来再写的
截图很匆忙,有些地方可能不好,见谅
软件破解方法很多,用了最简单的nop,大佬不要喷我
软件和他的守护进程secmon.exe互相依存,大概意思就是,主程序被关闭,secmon会重启主程序,secmon被关闭,主程序会重启secmon,所以要先把secmon冻结,结束secmon,然后再结束主程序
https://static.52pojie.cn/static/image/hrline/line4.png
开始正题
1.首先来看一下文件所在的位置:C:\Program Files\THTF 如下图:
2.机房没有查壳的软件,我在家里已经查过一次,无壳,说一下这个软件,默认是隐藏托盘图标,打开不会显示主界面的,alt+m呼出托盘,右键可以进行登陆
3.右键登陆弹出这个窗口
4.接着打开od,选择文件-附加-选择刚才那个登陆框
这个时候这个窗口会假死,不要管他,一开始载入不是和图片一样的,要f8单步运行到retn出去才是段首,图片忘了截取了
大概是f8会到这里:
单步到retn会来到这里(只是类似,不一定就是这里)
特别说一下,这个软件的字符串都是英文,读配置文件翻译成中文的
5.接着点击运行,输入密码,会提示密码错误
然后我们暂停,选择k,查看他的函数调用(这个很显然就是messagebox函数)
直接在这里选择显示调用,跟到调用函数的call地方
大概是这里
0051B8D2/$55 push ebp
0051B8D3|.8BEC mov ebp,esp
0051B8D5|.83EC 08 sub esp,0x8
0051B8D8|.894D F8 mov ,ecx
0051B8DB|.837D 0C 00 cmp ,0x0
0051B8DF|.75 08 jnz short EzMonito.0051B8E9
0051B8E1|.E8 761F0600 call EzMonito.0057D85C
0051B8E6|.8945 0C mov ,eax
0051B8E9|>8B45 10 mov eax,
0051B8EC|.50 push eax
0051B8ED|.8B4D 0C mov ecx,
0051B8F0|.51 push ecx
0051B8F1|.8B55 08 mov edx,
0051B8F4|.52 push edx
0051B8F5|.8B4D F8 mov ecx,
0051B8F8|.E8 DFB90500 call EzMonito.005772DC
0051B8FD|.50 push eax ; |hOwner = NULL
0051B8FE|.FF15 A4328600 call dword ptr ds:[<&USER32.MessageBoxA>>; \MessageBoxA
0051B904|.8945 FC mov ,eax
0051B907|.8B45 FC mov eax,
0051B90A|.8BE5 mov esp,ebp
0051B90C|.5D pop ebp ;user32.767339C0
到段首没有找到跳过call的跳转,应该是个子call,运行到段尾,出call再看
出去这个子call,就在这里看到了jmp跳转,但是没跳过去
004286D8|. /E9 AA000000 jmp EzMonito.00428787
004286DD|> |6A 10 push 0x10
004286DF|. |8D4D E8 lea ecx,
004286E2|. |E8 53831400 call EzMonito.00570A3A
004286E7|. |50 push eax
004286E8|. |8D4D E4 lea ecx,
004286EB|. |E8 4A831400 call EzMonito.00570A3A
004286F0|. |50 push eax
004286F1|. |8B4D F0 mov ecx,
004286F4|. |E8 D9310F00 call EzMonito.0051B8D2
004286F9|. |8B4D F0 mov ecx,
004286FC|. |81C1 F8060000 add ecx,0x6F8
但是在004286dd出发现有一个跳转,刚好是可以跳过jmp的,跟到这个地址
这个就是关键跳转了,我下了断点运行了一次,也是断在这里了,先把这里nop掉
然后保存文件出去就可以了,因为每次冻结比较烦,就用e语言写了个快速执行的
然后把文件保存出去,关闭od,结束主程序的进程,替换原来的文件
打开运行一次,直接回车
......这密码可能是存在信息框里面的....
然后密码这样就可以找到了,也可以找关键call来得到,但是这种方法就简单有效,密码还显而易见
这个过程就结束了 然后重复结束进程操作,替换原来没破解的文件,输密码就行了,还原系统,也会帮你还原过去的,下次也可以再输入密码执行
可惜毕业了,:(eew ok了。。。。 风绕柳絮轻敲雪 发表于 2019-5-7 21:22
明码……也是厉害得不行
这个软件是这样的,输入正确密码不弹框,直接会显示功能,因为这个错误框被弄掉了,一开始我也有点惊讶,没打算找密码的,阴差阳错顺便得到了密码,这个软件也没人破解过,百度搜到的答案基本没啥用处,才会想破解他的,大佬别笑话我哈~ {:1_893:} ,厉害~ ,四年还是学的蛮多~ 很厉害,佩服啊! 看看,学习学习 楼主好牛!!!! i星尘 发表于 2019-5-7 18:36
可惜毕业了,
我也快毕业啦~ 很强,圆了小时候的梦想哈哈哈 明码的么…… 6的 JuncoJet 发表于 2019-5-7 20:11
明码的么…… 6的
我其实也没想到,nop以后弹窗直接是密码....这软件很老了,估计密码存这里了