示例图片三

新闻资讯

联系方式

加密狗复制克隆网
电  话:13528540969
联系人:  刘先生
Email:4642967@qq.com
网  址:www.crackdongle.com
地  址 :广东省深圳市地王大厦38层8801号

当前位置: 网站首页 > 新闻资讯 > 业界资讯
业界资讯

浅谈深思3加密锁

深思3狗,有两套口令,一个叫开发口令,一个叫应用口令,都是由三个整数组成的。我们知道,任何一种加密狗,都不可能对不同的人卖相同的加密狗,这个区别,在圣天诺狗里叫ID号,在HASP狗里是口令,在深思3狗就是这个开发口令了,不同的人或者公司,买到的深思狗的开发口令肯定是不同的,但是,深思狗的开发口令,只是在编辑和写入程序时用,在用户程序中不用,在用户程序中只用应用口令,这是深思狗的一个严重的漏洞!我们可以用不同的开发口令的狗,写入相同的程序和数据(包括应用口令),这就可以完全复制深思狗了!!!

  要破解深思狗或者复制深思狗,第一步就是找到“应用口令”。用狗加密的软件,判断是否有加密狗,第一步就是找狗,在深思狗中就是“打开加密锁”——OpenSense3。这个操作,在大部分反汇编中可以找到“OpenSense3”字符串,在CALL语句的上一行,是PUSH语句,其后的数据就是深思调用函数接口参数表的地址。看一下这个地址,第一个字节是返回值,从第二个字节开始的连续六个字节,就是“应用口令”了。如果在反汇编中找不到“OpenSense3”字符串,可以在动态调试器(如TRW2000)中,下BPIO 378,拦下后,按F12十几次,返回到主程序中,上一行的CALL就是“打开加密锁”的调用了。如果要复制狗,把这三个口令记下来,以后,其他数据收集齐了,就可以写狗了;如果是破解,只需要把深思调用函数接口参数表的第一个字节置为0即可破解掉第一不了。

 

数据

  在深思3乱弹(一)——口令中,我们已经谈了深思3的应用口令,可以并且只能在程序中得到。在这里,我们谈一下深思3的数据单元的问题。

  深思3的标准版,提供了128个字节的数据区。除了极个别的软件狗,大多数软件狗都有数据区,如金天地的各种狗,都有100字节的数据区,有人可能会问,为什么是100字节,应该是64128256字节才对呀。存储器本身的容量,确实应该是64128256等,那么,金天地提供100字节的数据区,少了28个字节,这少的28个字节,被用来做系统数据区了,用来保存序列号、口令之类的东西了。那么深思3为什么没有占用数据区?深思3还有48字节的代码区,与64相比,少了16字节,这就是他存放口令等系统数据的所在了。

  对于狗中的数据,在被加密程序中的使用,各种狗的情况基本上是相同的。一是,读出数据,简单的比较;二是,读出数据,不做比较,而是作为参数或地址,供程序下一步使用。如果被加密程序,处理狗内的数据是前一种情况,则在无狗的情况下,我们从程序中即可得到数据了。对于后一种情况,则必须在有狗的情况下,才可以得到数据,即无狗是无法破解的。

  如果有狗,要复制的话,在知道了“应用口令”后,读出狗中的全部数据,不是很难的事了。

  深思3的狗,读写数据的指令,和打开锁的指令是相同的,只是数据接口的具体参数不同而已。

  深思3狗,打开锁的指令格式是:

  PUSH 地址1

  CALL 地址2

  这里,地址1,是深思3数据接口的首地址(即程序设计中的数据接口的指针),地址2,是深思3狗驱动程序的调用地址。读写数据的指令与此完全相同,所以,找到了一处,就不难找到其他的了。

  这里说明一下,深思3狗的数据接口(前文“深思3乱弹(一)——口令”中的叙述有误,以此为准)

  2字节返回标志,2字节功能代码,6字节应用口令,2字节输出记数,8字节输出内容,2字节接受记数,8字节接受内容,2字节备用输入,64字节系统保留。

  这样,4-9字节为应用口令,20-21为读狗数据的字数,22-29为读狗的数据。

 

代码

  可以把程序(代码)写入狗内,是深思3狗引以为荣的特色。也是我们破解或复制深思3狗的难点。

  前两段短文已经将了,我们可以从程序中找到狗的应用口令,可以从狗中读出全部数据区的内容,但代码区是可写不可读的,怎么办呢?

  把代码写入狗中,实际上是一种数据变换,不过就是这个变换可以由用户自己编程而已。

  所谓数据变换,就是向狗发出一个数据,狗则返回一个同样长度的数据,返回的数据就是变换的结果,变换的规则,就是狗内的算法,圣天诺的SUPERPRO狗的算法是固定的,但算法因子可以由用户写入;深思3的算法,就是用户写入的代码。

  既然变换的结果是数据,被加密程序,怎么判断返回值是否正确呢?

  对于深思3而言,有三种情况:

  1、用码表

  所谓码表,就是加密者事先准备的数据变换前后的对照表。这种方法是圣天诺狗必用的方法。这种方法的缺点是,容易被WKPE等仿真类软件拦截,除非准备的码表很长,使得多次拦截后的数据合并起来庞大得无法使用。码表法是深思公司极力反对的。所以,在深思狗加密中很少见,但也不排除有习惯用此方法加密的人,使用深思狗后仍然沿用这种方法。

  2、副本法

  所谓副本法,就是在被加密程序中有一个与狗中代码功能相同的代码的副本存在,被加密程序,做数据变换,采用随机数,把产生的随机数,发到狗内,变换返回的数据1,在把同一个数据送到程序内的副本处,进行变换,得到返回数据2,比较数据1和数据2,判断是否是正版狗。

  这种方法,可以有效防止WKPE等仿真器拦截。但这种方法,为我们复制狗留下了漏洞,我们只要找到这个副本,把他翻译成深思3的汇编语言,就得到了狗内程序代码。

  3、逆变换法

  所谓逆变换法,就是狗内的代码,有变换和逆变换两个入口,被加密程序产生一个随机数,先送到变换区返回一个数据,再把这个返回值送到逆变换区,返回一个逆变换数据,把这个数据与最初的随机数比较,相同就是有正版狗。

  这种方法,也可以有效防止WKPR类仿真器的拦截,而且,无法从程序中得到狗内的代码。但是我们可以在狗内随便写一段代码,只要变换和逆变换的入口与原狗的一致就可以了。

  综上所述,只要有了程序,基本上可以复制出深思3的狗了。只是数据区的问题,如果是把从狗内读到的数据,不进行对比,则我们就无法知道数据区的内容,必须要读狗.

分享到:
点击次数:  更新时间:2018-05-02 09:45:16  【打印此页】  【关闭