扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共3页)
Windows NT及Windows2000中对用户帐户的安全管理使用了安全帐号管理器(security account manager)的机制,安全帐号管理器对帐号的管理是通过安全标识进行的,安全标识在帐号创建时就同时创建,一旦帐号被删除,安全标识也同时被删除。安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的。因此,一旦某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的安全标识,不会保留原来的权限。
安全账号管理器的具体表现就是%SystemRoot%\\system32\\config\\sam文件。SAM文件是Windows NT的用户帐户数据库,所有NT用户的登录名及口令等相关信息都会保存在这个文件中。SAM文件可以认为类似于Unix系统中的Passwd文件,不过没有这么直观明了。Passwd使用的是存文本的格式保存信息,这是一个Linux Passwd文件内容的例子:
0: root:8L7v6:0:0:root:/root:/bin/bash
1: bin:*:1:1:bin:/bin:
2: daemon:*:2:2:daemon:/sbin:
3: adm:*:3:4:adm:/var/adm:
4: lp:*:4:7:lp:/var/spool/lpd:
5: sync:*:5:0:sync:/sbin:/bin/sync
6: shutdown:*:6:0:shutdown:/sbin:/sbin/shutdown
7: halt:*:7:0:halt:/sbin:/sbin/halt
8: mail:*:8:12:mail:/var/spool/mail:
9: news:*:9:13:news:/var/spool/news:
10: uucp:*:10:14:uucp:/var/spool/uucp:
11: operator:*:11:0perator:/root:
12: games:*:12:100:games:/usr/games:
13: gopher:*:13:30:gopher:/usr/lib/gopher-data:
14: ftp:*:14:50:FTP User:/home/ftp:
15: nobody:I0iJ.:99:99:Nobody:/home/httpd:/bin/bash
16: david:c6CuzM:500:500::/home/david:/bin/bash
17: dummy:fIVTl4IgU:501:503::/home/dummy:/bin/bash
18: msql:!!:502:504::/home/msql:/bin/bash
Unix中的Passwd文件中每一行都代表一个用户资料,每一个账号都有七部分资料,不同资料中使用“:”分割格式如下,
账号名称:密码:uid:gid:个人资料:用户目录:shell
除了密码是加密的以外(这里的密码部分已经Shadow了)其他项目非常清楚明了。
而NT中就不是这样,虽然他也是用文件保存账号信息,不过如果我们用编辑器打开这些NT的SAM文件,除了乱码什么也看不到。因为NT系统中将这些资料全部进行了加密处理,一般的编辑器是无法直接读取这些信息的。注册表中的
HKEY_LOCAL_MACHINE\\SAM\\SAM
HKEY_LOCAL_MACHINE\\SECURITY\\SAM
保存的就是SAM文件的内容,在正常设置下仅对System是可读写的。
NT的帐号信息在SAM文件中是如何存储的呢?
在SAM文件中保存了两个不同的口令信息:LanManager(LM)口令散列算法和更加强大的加密NT版,LM就是NT口令文件的弱点。我们来看看LM口令算法是如何加密口令的,考虑这样一个口令:Ba01cK28tr,这样的口令已经可以称的上是一个安全的口令了,虽然没有!#等特殊字符,但是已经包含大写字母,小写字母和数字,并且具有无规律性。可以认为是符合安全的要求的一个口令。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者