打狗棒是利用80386/80486的VM86技术模拟软件狗, 来实现解密的. 进行解密时,软件先带狗运行, 用打狗棒得到软件狗的相关数据; 然后拿去软件狗, 运行打狗棒, 则软件可以无狗运行了.
1.
加密狗,一般为一个U盘的样子通过USB插口与电脑连接(USB密码狗)。 加密狗一般由硬件,驱动,再加上用户程序的使用部分完成加密,按厂家的说法,硬件由不可读的存储器保存一些数据和代码, 驱动程序则是与加密狗通信的根本,在这一部分他们做了较强的加密,并且与硬件之间的信息传递加入了随机消息,因此要破解硬件或驱动程序部分是相当难的.现在许多计算软件只有在插了USB.狗的计算机上才可运行,没有该狗将无法运行或者只能使用部分功能 (学习版)。
2.
有些软件在使用时,必须在机器上(并口、扩展槽或USB口)上插一个小小的硬件设备,软件才可以正常运行。这个硬件设备通常被称作"狗"。注意一点,由于加密狗是北京彩虹天地信息技术有限公司率先在国内开发出的加密产品,只是因为大家用得多了,所以就习惯性地把市场上所有的加密产品(加密锁、加密卡等)都叫狗了。
硬加密是一类软件与硬件技术相结合的加密产品。相对于软加密而言,加密狗独立于计算机系统外,难以用软件方式模拟,使得它更具?quot;黑箱"特点,功能也比早期的软加密有了质了突破。基本说来,硬加密是通过在软件执行过程中和加密狗交换数据来实现加密的。
当然,不是说硬加密方式就不能破解,有些解密者就利用并口监视器来监听并口数据流,记录程序运行中软件向并口写了什么数据,及并口上的加密硬件返回了什么数据,然后写一段程序仿真数据交换来解密。这对老的硬加密是一个打击。不过在新的软件狗中,比如金天?quot;RC-DJ型软件狗",设有端口噪声及迷宫技术,使得软件狗与软件的数据交换过程中含有大量的无用数据,来干扰解密,而正常的数据交换却可以在通讯协议的支持下正常进行。迷宫技术是用来迷惑解密者的跟踪用的。需要说明一点的是,有一类所谓"打狗棒"的解密软件,其实是针对软加密的,并不能对硬加密起作用。
3.
运行环境
它运行在DOS 3.0以上版本, 注意, 不支持HIMEM.SYS和QEMM.EXE, 因此, CONFIG.SYS的配置最好如下:
FILES=30
BUFFERS=30
安装软件
把软盘上的CANE.EXE和*.LAD拷贝到硬盘上即可(未加密).
运行软件
在安装软件的当前目录键入CANE /H, 然后回车, 则显示帮助信息:
-------------------------HELP------------------------
CANE -----Emulate the softdog
CANE /Axxx -----Analyse the softdog,xxx=extend mem kept
CANE /R -----Read the softdog file
CANE /W -----Write the softdog file
CANE /U -----Free memory and to dos
CANE /H -----Help
其中, CANE 表示模拟软件狗运行软件.CANE /Axxx 表示分析软件狗相关的数据, xxx表示为数据留出的扩展内存数(以K为单位).CANE /R 表示读已分析的软件狗的数据.CANE /W 表示把分析的软件狗的数据写到文件中.CANE /U 表示把打狗棒程序从内存中撤消.CANE /H 表示帮助.
因此, A> 要解密一个软件狗, 步骤如下:
⑴. 把软件狗插到打印口, 进入到打狗棒所在的目录, 键入CANE /Axxx(其中xxx为要留的以K为单位的扩展内存数),然后运行要解密的软件.
⑵. 运行完毕后, 回到打狗棒所在的目录, 运行CANE /W, 把软件狗相关的数据写到当前目录下的文件中.
⑶. 运行CANE /U 退出VM86模式,回到实模式下.
B> 要无狗运行软件, 则在打狗棒所在的目录下运行CANE然后回车, 再运行CANE /R然后回车, 再运行原来的软件即可.
软件中附带UCDOS5.0单用户版的解密数据(参考数据, 对于不同用户数据不一定相同),即CANE0378.LAD和CANE03BC.LAD.
LAD的数据格式
LAD文件的数据格式如下:
第1,2字节: 未用
第3,4,5,6: 数据长度
第7字节开始(存放数据): 属性 端口 数据
...
其中属性占1个字节, 00H: 输入一字节
01H: 输入一字
10H: 输出一字节
11H: 输出一字
端口占2个字节, 为输入/输出数据的端口, 如并口数据端口为0378H
数据是输入输出的数据, 如果属性为X个字节, 则占X字节,
程序的编译和连接
在当前目录下, 键入命令行: pasm cane, 然后回车即可.
注意, 必须在PATH中设置BORLANDC++的路径. 例如, 如果BORLANDC++的目录为C:\BORLANDC, 则在AUTOEXEC.BAT文件的PATH中加入C:\BORLANDC\BIN
阅读(3521) | 评论(0) | 转发(0) |