该用户从未签到
|
联系QQ1167388加密狗软件加密狗解破思路和方法手机15988877770
软件加密狗解破思路和方法手机15988877770
! W$ ?2 k# G# Q* B0 W* g0 ?& j5 M& z* p
点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------点此与我QQ交谈--------------------
! f# W' {" [" H) E" V本文介绍的是软件加密狗解破的一般思路和方法,大家可能奇怪,昨天刚刚介绍完“软件加密锁产品评测”,怎么今天就介绍加密狗: R+ V7 O! }8 E8 f: R+ y& r
解破知识?其实做为软件开发者,研究好软件加密的确很重要,不过也很有必要多了解一些关于加密狗解密和解破的知识,加密和解; T1 Q8 N2 P/ l" K" f6 u
破就像矛和盾一样,对于解密知识了解的越多,那么编写的加密代码就越好,要知道加密永远都比解密要容易的多,只有知己知彼,
+ Y& R. Q$ o) K1 P0 T9 g方能百战百胜。0 M4 `' Q% S1 k k0 A% w M
QQ1167388手机15988877770
1 ?8 u0 `8 Q: `) ~. I9 |9 ] 解破高手前辈联系电话15988877770 联系QQ1167388 需要解破加密锁软件请联系我2 I+ _( K- W, J. d( b( F
硬件加密锁,俗程“加密狗”,对于加密狗的解破大致可以分为三种方法,一种是通过硬件克隆或者复制,一种是通过SoftICE" v7 [( h, I/ R4 E
等Debug工具调试跟踪解密,一种是通过编写拦截程序修改软件和加密狗之间的通讯。6 \9 g% l' J6 q1 A' G/ W! e
硬件克隆复制主要是针对国产芯片的加密狗,因为国产加密狗公司一般没有核心加密芯片的制造能力,因此有些使用了市场上通
0 p" B1 b4 m$ f1 G3 p; i5 [用的芯片,解破者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。不过国外的加密狗就无法! J# k! H3 e( ~, m- S# k6 e& @: j
使用这种方法,国外加密狗硬件使用的是安全性很好的自己研制开发的芯片,通常很难进行复制,而且现在国内加密狗也在使用进口 e- `9 g6 I2 G5 m. v: ]& ^
的智能卡芯片,因此这种硬件克隆的解密方法用处越来越少。) B$ u) ]; R. T+ `1 u: {9 I& W6 h
解破高手前辈联系电话15988877770 联系QQ1167388 需要解破加密锁软件请联系我* `. Z: L: l7 m- {3 J. {5 s+ e6 B
对于Debug调试解破,由于软件的复杂度越来越高,编译器产生的代码也越来越多,通过反汇编等方法跟踪调式解破的复杂度已
8 t# l- [5 f3 K, w' u! d( A; _经变得越来越高,解破成本也越来越高,目前已经很少有人愿意花费大量精力进行如此复杂的解破,除非被解破的软件具有极高的价
0 l$ N6 ~% ^3 o值。
: ?! s# [' z8 e4 \) y 解破高手前辈联系电话15988877770 联系QQ1167388 需要解破加密锁软件请联系我5 C& B$ I1 ]+ Q/ B5 U; \
目前加密锁(加密狗)的解密解破工作主要集中在应用程序与加密动态库之间的通讯拦截。这种方法成本较低,也易于实现,对# H% h& Q' [, \! M- R5 I
待以单片机等芯片为核心的加密锁(加密狗)具有不错的解密效果。
+ w v; E5 I, y) M T8 W' b* Q 由于加密锁(加密狗)的应用程序接口(API)基本上都是公开的,因此从网上可以很容易下载到加密狗的编程接口API、用户手$ B# O( B3 d, `" A) L
册、和其它相关资料,还可以了解加密狗技术的最新进展。
* b4 ^0 m& N4 U0 Z7 E: ^ 例如,某个国内知名的美国加密狗提供商的一款很有名的加密狗,其全部编程资料就可以从网上获取到,经过对这些资料的分析
+ O. Y, b; U1 P3 z( t C0 d,我们知道这个加密锁(加密狗)有64个内存单元,其中56个可以被用户使用,这些单元中的每一个都可以被用为三种类型之一:算) C9 m c* u! U$ p, x
法、数据值和计数器。
r" q$ k: C' a; U7 k# d 数据值比较好理解,数据值是用户存储在可读写的单元中的数据,就和存储在硬盘里一样,用户可以使用Read函数读出存储单元
* f* f* v& r( G9 m- Z- j# e# ]里面的数据,也可以使用Write函数保存自己的信息到存储单元。
2 o5 e7 T- Y' A 计数器是这样一种单元,软件开发商在其软件中使用Decrement函数可以把其值减一,当计数器和某种活动的(active)算法关% a- h% W I, w$ L. g$ A" \7 k
联时,计数器为零则会封闭(deactive)这个算法。
/ H, s9 w+ A, R. } 算法单元较难理解一些,算法(algorithm)是这样一种技术,你用Query(queryData)函数访问它,其中queryData是查询值,7 u2 K# _: k. Y# G- u: v. O' \& X
上述函数有一个返回值,被加密的程序知道一组这样的查询值/返回值对,在需要加密的地方,用上述函数检查狗的存在和真伪。对' a2 q$ ?8 {. `( p
于被指定为算法的单元,软件上是无法读和修改的,即使你是合法的用户也是如此,我理解这种技术除了增加程序复杂性以外,主要
7 O% g7 h" }/ J/ T9 f6 c是为了对付使用模拟器技术的解破。( y, w/ e3 ^- j. i6 W$ Y4 k
此加密锁(加密狗)的所有API函数调用都会有返回值,返回值为0的时候表示成功。
2 Y6 p2 {( F; g3 x% Q0 \ 因此,解破思路就出来了,就是使用我们自己的工具(如VB、VC等)重新编写构造一个和加密狗API一样的DLL动态库文件,里面7 m- ^$ k7 ?9 A- j ~7 l% [% E/ u, H
也包含Read、Write等全部API中包含的函数,使用的参量及返回值和原来的函数一样,所有函数返回零。然后对Query、Read函数进. b, e/ _- m3 m8 n! S: C2 t
行处理,返回应用软件需要的数值即可。( M9 A# n: X; K P. K: Y" v
这个新的DLL文件编写成功后,直接替换掉原来的DLL文件,这时候再运行应用软件,软件访问加密狗的操作就全部会被拦截,拦
+ B2 ]8 g! \3 b+ `$ l截程序永远会返回正确的数据给软件,从而实现了模拟加密狗的运行。6 v% a O: P0 v a; E
以上是目前解破软件加密狗(加密锁)的一些常见思路,对于这种解破,软件开发者还是有相应的一些对策的,下一回我将在《
4 M* U- i, ~! |/ y- M' C8 V软件加密锁编程技巧》一文中具体介绍一下软件开发者将如何编写安全可靠的代码,使得这种类似的解破方法失效。4 w7 X6 E0 q1 L- P+ X5 j
解破高手前辈联系电话15988877770 联系QQ1167388 需要解破加密锁软件请联系我 |
|