给朋友帮忙,破解一行业内程序。
一、
安装前需要先安装SSD5411-32bit.exe,我上网查了一下,是< 加密锁SuperPro驱动程序5.41.1 >.
下载地址在 < hXXp://cn.safenet-inc.com/download/sentinel/index.asp >.
二、安装程序 MTOOL.EXE
程序运行后,提示:e0047--Hardware key not found.
窗口标题为:Tools32.exe
三、判断
用PEid,提示“什么都没找到 *”。用深度扫描,提示“ARVID's TDR file *”。
四、查看
用 W32dsm8.93+.exe 打开,前面数行为
Disassembly of File: MTool.exe
Code Offset = 00001000, Code Size = 0003B000
Data Offset = 00001000, Data Size = 0003B000
Number of Objects = 0008 (dec), Imagebase = 00400000h
Object01: 0000001 RVA: 00001000 Offset: 00001000 Size: 0003B000 Flags: C0000040
Object02: 0000002 RVA: 0003C000 Offset: 0003C000 Size: 00008000 Flags: C0000040
Object03: 0000003 RVA: 00044000 Offset: 00044000 Size: 00003000 Flags: C0000040
Object04: .rsrc RVA: 00059000 Offset: 00047000 Size: 00007000 Flags: 40000040
Object05: 0000005 RVA: 00060000 Offset: 0004E000 Size: 0000D800 Flags: C0000040
Object06: 0000006 RVA: 0006F000 Offset: 0005C000 Size: 00001000 Flags: 40000040
Object07: 0000007 RVA: 00070000 Offset: 0005D000 Size: 00013400 Flags: 60000020
Object08: 0000008 RVA: 00084000 Offset: 00071000 Size: 00002000 Flags: 42000040
似乎符合加壳的特征。
五、从上面的sentinel下载地址,下载开发商手册,打开
发现sentinel 加密锁有2种加密方式,一种是直接用它的shell,加壳,可以选择几种加密方式,可以选择每隔30秒读取加密狗的数据;一种是开发商调用它的API,这样更灵活。
但我安装了驱动和主程序以后,没有找到名称为sx32w.dll的狗驱动,只有在 <WINNT>/SYSTEM32/DRIVER 下面发现多了一个 SENTINEL.SYS 文件。
所以我认为,这个程序用的应该是第一种加shell的方式,而且版本还不高,只有5.41.1(现在已经升级到7.3.0啦)
===========================
===========================
不知道哪位大哥有这方面的经验,看看我的判断对不对?
六、查找解决方案
在看雪论坛上搜到一些帖子,但只是提供了一些基本思路,我用OllyDbg跟了一下,很晕。
1。
在exetools论坛上看到一个帖子,这个大哥写了一个 Sentinel Dongle PE Envelope Unpacker 1.3
我注册了用户,可惜没有权限下载,需要等15天,还要发贴。我等是没问题,发贴就没能力了,菜鸟的很。
这边坛里的哪位大哥可以帮帮我下载么?
www.exetools.com/forum/showthread.php?t=5693
但这个工具也有问题,需要有狗的支持。我还没有搞到狗。不过已经叫我朋友自己去想办法了。
2。
考虑无狗脱壳的方案。
这个我看了很多帖子,我想我得花很多时间去试试看。不过我对自己没信心,毕竟SENTINEL也是业界大哥,不会这么容易被我这个初出茅庐的菜鸟搞定的。
在这里提出来,是希望哪位有这方面经验的,给我一点意见。多谢!
[课程]Linux pwn 探索篇!