本帖最后由 ninymay 于 2015-9-2 16:49 编辑
如何无狗无特殊工具寻找HaspSRM的 Vendor AESKey
了不起啊,非常精彩,新手最需要这种手把手一步一步带图详解的教程,否则大神讲大神的,我们有听没有懂,跟着做也卡在一些大神们认为不重要或是他认为大家 "应该" 都 "已经" 知道所以没有细说的技巧上,...到最后功夫仍然没学上手,只能当个纯听友罢了
不过后来我看了那将近20页的留言后发现, 这篇精华文对新手来说仍然有两个上手起来有困难的地方: 一是没有实际可以练习的程序发上来给大家照着实作; 二是文中所讲的可以查找每个开发商不同的vender code及Hook Hasp SRM API最重要密码AESKey的工具 "RTVIDTool2" 不是那么好找,要另外向楼主要才能拿到...
当时我还没有在这个论坛出生,所以不能恭逢盛事,现在才通过考核成为论坛的一员,既然有幸成为大家庭的一份子,自然不能只从里面拿好处,却不做点半点贡献, 所以就发了这篇文上来给大家练手,虽然晚了些,但仍希望对初学的坛友有所帮助,因为是论坛新生儿,所以要是有不懂规矩的地方,请大家多多包涵,另外当然就是水平不高,还请大神勿笑啰...
现在就先发上一个用HaspSRM狗壳保护的程序 Win32_Bounce.EXE给大家练习,
并且也要一步步手把手的教大家如何在无狗、无RTVIDTOOL2工具的情况下,找出Hook API要用的Vendor AES Key
请先下载附件Win32_Bounce.RAR 百度云网盘链接: http://pan.baidu.com/s/1eQg1Xiq 密码: 13ht
解压后先运行看看
果然被告知需要Hasp狗 !
接着查壳
果然是 HASP壳...
这是我用codelive大文中所提到的Sentinel_HASP_SDK开发工具
Sentinel HASP Envelope所制作的,而Win32_Bounce.EXE 也是里面提供的
Sample EXE档,专供练习和测试之用...
这是Sentinel_HASP_SDK开发工具 的外包装
而这是里面的内容物,
有光盘,说明书,一些练习用各式的狗及一个专用的USB Hub...
要对付一个狗之前,先找它的开发工具来熟悉是非常必要的,知已知彼百战百胜嘛!
现在进入正题,把我们常用的工具OllyDbg请出场,我用的是英文版OllyICE,但无论哪一个版本都不影响查找结果,但为了工作方便,请在32位的操作系统下工作,因OD 对64位的支持并不是太好 !!
用OllyDBG(OllyICE)载入后,不要理会错误,也不必让它继续分析,
(如果打开 提示 该程序被加密 询问是否尝试分析,点否)
先让它全速执行,等到找不到 HASP Key的错误出现,(此时切记不要把HASP的错误对话框关闭)
按上面的M键去看记忆体区段,找到 Win32_Bo .Progect SFX,输入表 的地方, 按下滑鼠右键,选择
在反组译视窗中检视
.
在主绪程,模组视窗中会看到一连串的 0000 add byte prt ds:[eax],al
若看到是看不懂的格式而不是正常的程序码格式可以在这个时候 随便选择一条代码 右击 -->分析-->分析代码 就可看到正常的程序码
现在按滑鼠右键,选择 寻找 ->指令序列
记得勾上左下角的 整个块选项
输入 cmp eax,07d2
找到之后 像图中所显示:
现在向下找 push 9
push eax
call xxxxxxxx
注意:是SRM保护的才会有,若是HL保护的就找不到,也就不需要^^
关键在call xxxxxxxx < -- 我的計算機上顯示的是call 004C34F0 我们在这行下硬件断点
然后按 << 键(重头执行) 一样不必理会错误讯息也不必分析,
当OllyDBG停在 Call xxxxxxxx 的地方时,请看右的edx值,例如我这边显示的是0013ED28
现在到右下角的视窗,找到同样的值,通常在有 ASCII "<haspscop></haspscope>" 字样那行的往上两行即是
例如 0013ED08 | 0013ED28 按滑鼠右键 选择 资料视窗中跟随
现在换看左下角视窗,从0013ED28开始DUMP在荧幕上了,显视要选择 Hex,不要用长型(long)!!
现在按 F8 单步步过
资料视窗中的内容改变了,例如 58 8A 17 00
将四个数字反白后选 资料视窗中跟随DWORD
就会看到16组数字,那就是Vendor AESkey了 ^_^
例如看到的是
34 A5 75 22 79 21 E7 3B A3 29 D8 BB 42 C2 DE F5
那么Vendor AES Key就是:
34A575227921E73BA329D8BB42C2DEF5
现在有了Vendor AESKey, 我们就可以跟随codelive的脚步,Hook相关的API,用爆破的方式来破解HaspSRM了
至于想要在带狗的环境下深入研究,例如想要完美脱壳的,可以到我之前发的帖
关于Hasp SRM 二三事
http://www.52pojie.cn/forum.php?mod=viewthread&tid=405554
里面有完整的狗模拟数据,可以让各位坛友拿来练手
至于志不在脱壳只想要用完美模拟的坛友,当我们要产生MultiKey专用的REG
File时,我们也是要用到 VendorAES Key的
像我在那篇文中提到的,用 MkDevKit当中的公用程序 DePackHasp,它可以解析用USBTrace纪录下来的Log File,但也一样要先输入Vendor AES Key的正确值才能继续工作!!
所以学会如何查找Hasp SRM客户专属的 Vendor AES Key之后,不论您是要用爆破法破解还是要用模拟法破解都会用得上的,希望这篇入门文章能对各位有所帮助,
至于制作模拟专用REG File的工具MkDevKit详情,我有发在我那篇 "关于Hasp SRM 二三事" 文里面,但需要大神帮忙破解,它有锁计算机ID的机制,算法是用VMProtect保护的, 解开大家才能用,希望能早日顺利破解,也请大家多去帮忙推文,不然一下子就看不到了,也就无法引起大神的关注了,如果解开了锁ID 的机制,我再把它发上来, 并且也保证是一样手把手一步一步详细的教大家如何使用,让我们一起快乐的打狗,现在就期待能帮大家破VMProtect的大神早日出现啰
|