首页
社区
课程
招聘
[分享]打狗时意外收获--后门维护软件求算法
发表于: 2011-5-6 17:56 10261

[分享]打狗时意外收获--后门维护软件求算法

2011-5-6 17:56
10261
这是最近帮朋友破一个被圣天狗保护的试用软件,发现到的一个有趣的现象,
因为这个公司业务做的很大,人力吃紧,所以放了一个后门维护软件,
如果输入的密码正确,会将过期的狗重新写入正确值重新激活...
因为密码演算不是我的专长,所以我还是从打狗下手去解的,
这个后门维护程序就发上来给有兴趣的同好研究啰^^
(检查狗的部份已被我越过,载下来可以无狗执行,也不需要圣天狗的驱动!)
Keygen_Me -RemSetKp.rar

尤于它是繁中软件,怕大家看到乱码,所以把截图po上:

这是第一个画面,注意密码A的值每次都不一样,跟有没有插狗无关,
跟狗有没有过用期也无关

(为了遵守版规,国内正在发行的软件隐去其名,姑且以看雪资讯代替)


如果找到了第一组密码也别高兴的太早,它还有第二组要输入(晕)

两组都正确了会出现正确讯息的对话框,但是暴力破解是没有用的,
覆写狗的两组密码是经运算后产生,如果暴力破开,则不会得到真正
的密码去写狗,只是画面好看穷开心而已啦 !!!

※但从这个案例学到一个教训,破解真是一门艺术,解法思路不要一陈不变,
   下次解这种大型程序,就会去注意挖挖看有没有后门捷径可走了呗 XD ~~~

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
2
沙发,哈哈,不懂狗,路过
2011-5-6 19:09
0
雪    币: 149
活跃值: (101)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
3
忘了告诉各位,这个后门程序很有意思,不但有两道密码检查关卡,
第一道密码检查还给大家两次机会:

这是第一道密码第一次输入错误的警告画面,


但是不会退出程序,还会再给你一次机会,如果又猜错了呢?
这是第一道密码第二次输入错误的警告画面


而如果在第二道密码输入错误,就会出现这个错误警告画面,

而且就没有机会了,会被强制退出!!!!!

即使是初学者,也可以来練習爆破看看,
用MessageBoxA都可以断下的
(只是希望还是能求得这个后门维护程序的算法啦)

至于最后一个(即第二道密码)输入成功的画面,就留给大家去挖掘了

////////////////////////////////////////////////////////////////////////////////

如果觉得繁中画面变成乱码不好判断,可以下载安装微软的AppLocale程序
(AppLoc.exe)


把这个KeyGen_Me程序强制它用繁中显示就不会乱码了
上传的附件:
2011-5-8 02:36
0
雪    币: 517
活跃值: (35)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
4
密码1与时间相关,第二个密码应该与狗相关,没狗得不到真正的密码。

至于界面文字,你的担心是多余的,软件会自适应的。
2011-5-8 19:17
0
雪    币: 967
活跃值: (1138)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
5
谢谢 设定成功
2011-5-8 20:11
0
雪    币: 967
活跃值: (1138)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
6
不知道这个是结果不
2011-5-8 20:12
0
雪    币: 967
活跃值: (1138)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
7
服务器和usb进行交互
看一下介绍吧
http://www.mtitw.com/index.htm
上传的附件:
2011-5-8 20:19
0
雪    币: 149
活跃值: (101)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
8
To BlueT: 谢谢指点,我把狗的dmp档发上来,看你用哪种模拟器再转成相对应的ssp档或reg档即可

8D35.rar

To elianmeng: 可不可以麻烦你把你解开的程序发上来呢?谢谢!

另外,你给的连结网址是ROCKEY的台湾代理商网站,我这颗是SafNet的,不过我想你可能是要我看
其中http://www.mtitw.com/dis3.htm
『序列号加密中的数学算法』这篇介绍,它的结论就是
『...在没有一个已知正确的序列号的情况下是永远推算不出正确的序列号的。』
那就会和BlueT大大发现的问题一样,我把这狗的Dump发上来,再请你帮忙看一下,谢谢
目前已知资料如下:
UserID:8D35,Wirte Password:CACE,Cell06:AD57
目前找不到两组OverWrite Password...
希望可以经由这个后门维护程序找到吧

上传的附件:
2011-5-9 02:59
0
雪    币: 149
活跃值: (101)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
9
[QUOTE=elianmeng;956332]服务器和usb进行交互
看一下介绍吧
http://www.mtitw.com/index.htm[/QUOTE]

如果是因为你在调试状态下才能跟到这个OK的画面,所以无法发Patch档给我,
可不可以麻烦你先启动SuperPro Monitor,才去按OK

SuperPro Monitor.rar

(先将 \Dll 中两个 dll copy到 C:\Windows\System32\
再到 \Service 中 run Install.bat 启动
之后到 \Monitor 中运行 SentinelMonitor.exe 即可)

在按下OK后,将下方浅绿色的狗与驱动之间互动讯息存下给我,



因为我有实体的狗,如果讯息中确实出现
In:> RNBOsproOverwrite
的API调用,那就会带两个Overwrite Password
我用实体狗对Access Code不为0的Cell做覆写的动作,
如果成功就表示确实抓到两组Overwrite Password了
如果不成功那有可能在解密时出现误判,导致运算出来的
Overwrite Password不正确

先谢谢你,辛苦了~~
上传的附件:
2011-5-9 17:15
0
雪    币: 246
活跃值: (91)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
10
第一组加密函数是00404EDC,初始化的加密数是字符串,与时间和随机数有关(随机数经过两次处理后,返回个WORD值,mod 0x3e8的余数值,转换为字符型,连接成:时间+34864+余数),
如:“2011051434864777”,然后生成提示的密码;
提示的密码经过变换后,再次调用00404EDC即生成第一次的正确密码。
以上字符串均会在内存中显示。

第二组加密,初步分析是,依次取每个输入的字符hex值查表,然后变换计算处理,正确密码应该不会在内存中出现。
2011-5-14 12:46
0
雪    币: 149
活跃值: (101)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
11
谢谢lankerr,看来是没有办法KeyGen它了!!
2011-5-15 01:51
0
游客
登录 | 注册 方可回帖
返回
//