签到天数: 13 天 [LV.3]偶尔看看II
LV 5 (爱好者)
忘了无极破风吧 DanoR是我
- 积分
- 750
- P币
- 145
- 笔魂
- 41
|
快点注册登录,一起玩更精彩!
您需要 登录 才可以下载或查看,没有帐号?加入我们
x
zhutas那个思路要破解起来太容易了,我没试过不知行不行,但高手肯定能easy地破解,我这个思路是用我半吊子的病毒编程技术想的,分享一下,对于我来说,不仅实现困难,连那些高手破解起来也需要时间,呵呵 0 m7 m# m5 o; U$ r
' L; ?% Q/ ?. T0 P& V' e2 ~- p1 J6 Z目的:不让新的程序运行.., u: Q9 [2 J7 b
, A- I/ g9 P6 R% d8 [8 `2 ~
思路:
1 q1 k5 ]& _' [' C, \1、能修改注册表的API不外乎以下这20多个,. E& G2 q( d; p& q3 d3 n' k+ e
管理类 RegCloseKey() RegCreateKey() RegCreateKeyEx() RegDeleteKey() 3 J" m* P+ e; f M7 d
RegDeleteKeyEx() RegOpenKey() RegOpenKeyEx()
. b4 n, d; z* g9 ?4 K$ a值管理类 RegDeleteValue() RegQueryValue() RegQueryValueEx() RegSetValue()
( {. A7 @3 G6 E1 b6 x* i RegSetValueEx()
3 q8 y! g7 B5 k5 ]* i查询计数类 RegQueryInfoKey() RegEnumKey() RegEnumKeyEx() RegEnumValue() ! O2 K/ n) Z8 C1 ^, y' v3 N. q% H
备份/恢复类 RegLoadKey() RegReplaceKey() RegRestoreKey() RegSaveKey() " n+ o6 c7 K9 t
实用类 RegConnectRegistry() RegNotifyChangeKeyValue() RegUnloadKey()
9 |4 u8 j( n4 v) ]% N6 U安全类(仅适用于NT) RegGetKeySecurity() RegSetKeySecurity() ( L8 t3 M" o1 Y$ @# `* ` K9 t
; u$ \' _3 b5 V! k7 e
所以,只要控制了这20多个的API,就可以了。
7 n0 i Y. e# [9 X3 [; o
1 F, l k J! P8 W/ D2、单纯的Hook是靠不住的,随便一个厉害一点的工程师就能把hook卸载下来。但是没hook也不行,不过我们要用不同级别的hook——ring0 hook,
3 C* G8 m: h, c( \' v4 r- w( ?! P2 e6 H- b5 J
3、用汇编语言编写驱动,直接进入ring0层,强制控制SSDT服务列表,然后hook住,不让一般的程序恢复2 R, ]! F. a4 I0 v* C
% t( [& ]3 W3 H0 w* M
4、顺便给自己开一个小道修改注册表,以实现目的,不过这个修改,也是需要加密解密的(不然都让其他软件用去了)
2 T: p% R ?3 E- e
4 f& K. [- {, ^3 d( J, @$ c大概就这样,高手肯定也能破解,不过费时间而已。: P! ~: P5 ?' Q1 W/ {
2 F$ P4 r0 J9 H2 ~! L/ j4 I
吡~~完毕,鲜花送上(我知道肯定没有)
V1 k8 V( y! j0 ^) z1 p5 ]# I' A! O8 D; l8 \0 m4 {9 ?8 h
[ 本帖最后由 ted14 于 2009-2-4 12:39 编辑 ] |
|