本帖最后由 子夜的雪 于 2013-8-7 23:19 编辑
# O: k5 J' V2 Q. H5 n* d7 w0 T5 p/ ^3 t
在NT技术架构的Windows系统中,有一个系统内置的权限较低的匿名访问账号guest,我们经常会遇到在win2000和xp系统中设置了共享目录但别人却没法访问的情况,主要原因就是系统禁用了guest账号,只需启用该账号即可。但是由于该账号的存在往往会给系统的安全带来危害,比如:别人偷偷把你的guest激活后作为后门账号使用,更隐蔽的是直接克隆成了管理员账号,基于大多情况下该账号是不必要的,所以我们可以直接删除之以提高系统的安全性,遗憾的是在NT技术架构的Windows系统中不允许删除直接guest账号。那么有没有办法删除呢?有的,方法如下:
2 W6 `* s; K# ?: J- O! i$ l+ l5 Z0 C- @8 U6 d+ b4 n- x
1.打开注册表,找到HKEY_LOCAL_MACHINE\SAM\SAM,通常情况下,系统不允许用户访问SAM键值,只有拥有了System用户权限才可以访问,因此,如何获得System用户权限是关键所在。我们在SAM上右键权限—添加Administrator—设置权限(完全控制和读取)。
6 m& v( R, J' o
5 i$ \8 J, ~' g) U( [- j2.这时我们关闭注册表,再打开,就可以看到HKEY_LOCAL_MACHINE\SAM\SAM下的详细项了。找到HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\Guest这项,看它的右边框的类型数值,0x1f5,它就是guest的SID,有的不是这个数值,要看自己的才行,不是统一的。
/ u, C" Q* v, V6 ?! r1 L5 l1 T( q, u! z9 R, H
3.找到HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5这项,为什么要找到这项呢,它就是Guest的对应SID相对标志符。
$ f! A% @' X. i4 o6 q9 P) t" c# I9 o' Z
4.删除HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5项,删除HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\Guest项。再看看电脑的本地用户和组中有没有guest用户了。
; v* r1 s3 J; N/ e. o+ o& j n1 ?2 W
以上测试在winxp中通过,win2000中注册表不可以改权限,在system32下找到regedt32.exe,其他和以上一样。在win2003中没有测试过。
" @9 P) x. n+ T# b" }
' | Z' h& e, O6 x以上操作有一定风险,建议先备份系统或备份注册表。不建议删除administrator帐户。
4 D9 g) t4 j: `! w2 G) p2 k, N# d- d4 K% I/ t0 O, e
( w% s; K0 C; m
|