上一篇:人在江湖安全第一 使用SNMP服务的安全防范 >>
NT系统的门卫——SAM
对于windows的启动,很多用户并没什么特别的想法,大多数的人都这样看待这个问题:按下电源,稍等片刻,“傻瓜化”的windows登录界面就出现在我们眼前。但是看了此文,你也许就会有点不同的想法了。
微软做了两个不同的系统骨架,一个叫win32,我们用的win9x/me系统就附在它上面;另一个叫nt(new technology),也就是winnt/2000/xp/2003的骨架。不过很不幸,微软有点“偏心”,win32的骨架做得明显有点过小,所以它成了瘦子,而nt则是典型的美国壮汉。更不幸的是,微软给win32配备的pwl门卫是个花瓶,不仅连个家门都看不住,而且嘴巴也守不住秘密;而nt呢,又捞了个好处,sam门卫尽心尽责,嘴巴也难撬开。nt内核windows操作系统的密码安全性较win32内核windows操作系统的密码安全性高出很多跟sam不无关系,在这篇文章里,我们就一起来认识一下nt内核windows操作系统的看门神——sam。
忠实的sam门卫
sam最初是跟随第一代nt来到世界的,它在微软总部的特工代号叫做“安全账户管理器”(security accounts manager),经历了几代系统的改进,这个门卫越来越强壮了。sam平时居住在winnt\system32\config下。当然,它不仅仅是一个sam文件这么简单,它还带有一名随从:security(如图1所示)。在nt内核windows系统启动的时候,sam就开始忙碌了,首先,它在入口处要求你出示身份证——没有?那么就不能进入windows,并且没得商量。即使你通过了“门检”,事情也还远远没有结束,sam随时盯着你呢,只要哪里又有人进来了,它就赶紧去问人家要“证件”……sam记录的数据很多,包括所有组、账户信息、密码hash、账户sid等,应该说是一个考虑得比较周全的门卫。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>
前面说过了,sam不仅仅是一个文件那么简单,它不但有文件数据,在注册表里面还有一个数据库,位于hkey_local_machine\sam下,这是一个比较复杂的结构(如图2所示)。sam在系统启动后就处于锁定状态,我们没法擅自更改这个文件内容。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>
sam的主要结构和用户分组
从上述注册表里的分支我们可以看到以下结果:
1.在hkey_local_machine\sam\sam\
domains下就是sam的内容,其下有两个分支“account”和“builtin”。
2.domains\account\users下存放的就是各个账号的信息,当然,这里是加密过的二进制数据,每个账号下面有两个子项,f和v。项目v中保存的是账户的基本资料,用户名、所属组、描述、密码、注释、是否可以更改密码、账户启用、密码设置时间等。项目f中保存的是一些登录记录,比如上次登录时间、错误登录次数等。sam靠这些齐全的备忘录来保存与用户账号相关的各种信息。
3.domains\builtin存放着不同用户分组信息,sam就是根据这个来划分nt中固有的6个不同的工作组的,它们分别是:管理员(administrators)、备份操作员(backup operators)、客人(guests)、高权限用户(power users)、修复员(replicator)和普通用户(users)。
幕后指挥官
在windows系统中,虽然sam如此尽力,但是它却如《terminator 3(终结者3)》里model 101的设置一样,不听从你的指挥。它只听本地安全认证(local security authority)程序——lsass.exe的差遣,就连进门时的审查也是lsass的指示。如果你把lsass杀了,你就等着被赶出门吧——当然,对于普通用户来说,如果你试图用普通的进程管理工具或者windows系统的进程管理杀掉“lsass.exe”进程的话,只会得到“该进程为关键系统进程,任务管理器无法结束进程。”的提示,本地安全认证(local security authority)在windows系统中主要负责以下任务:1.重新找回本地组的sid和用户权限;2.创建用户的访问令牌;3.管理本地安装的服务所使用的服务账号;4. 存储和映射用户权限;5.管理审核的策略和设置;6.管理信任关系。
“萨姆也是人”
俗话说,“人无完人”。尽管sam(萨姆)是这么尽心尽责,可是在这里,我们还是必须用那句话——“萨姆也是人”来形容它。由于一些设计上的失误,在winnt/2000里,如果你忘记了密码,那么你要做的不是呼天喊地,只需要在非nt环境里把sam驱逐出硬盘就可以了。但是在xp以后的windows操作系统里,这个情况得以改善,如果你把萨姆大叔踢了,nt也躲着死活不肯出来了。
当然,这也并不是说xp以后的windows的操作系统密码都无法破解,要知道:经典的lc4和ntpassword都专门拿sam开刀(如图3所示)。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>
()
下一篇:打造功能更强大更安全的Windows XP启动密码 >>
相关文章:
- · MSSQL入侵时可以用到的代码
- · 玩转GOOGLE的十九招秘技
- · 病毒杀不死的原因分析和相应对策
- · 让你的XP一分钟成为正版
- · 利用注册表管理IP地址
- · 笔记本电脑性能优化技巧
- · 让MSN调用mAxtHon
- · 恶意代码(网页病毒)[破解方法]
- · 减少QQ内存占用的一则方法
- · 多个网卡绑定一个IP地址
- · 反击内奸的无理攻击
- · 电脑特技与虚拟演员—计算机蜜罐技术
- · 列示出你安装了哪些补丁的脚本
- · CT版奇迹SF终极防黑手册
- · IDS的自防护原则与技术途径
- · QQ病毒的克星--QQAV
- · 用google检索密码
- · Win XP系统任务栏实用技巧总集
- · 开启终端的最简单方法全攻略
- · SQL安全设置攻略
- · 解决QQ视频假死现象
- · 搜索引擎技术核心揭密
- · 网络代理工具集锦
- · FlashGet使用完全集锦
- · XP系统快捷地整理硬盘碎片
- · 经验之谈:判断电脑是否感染了病毒
- · 打开注册表,看优化软件在"搞什么鬼"
- · 外挂制作教程——奇迹瞬移的实现
- · 网吧任我行
- · 常用的60招电脑操作精典秘籍
- · 木马藏身大搜查
- · phpbb 暴露路径以及目录列表的安全提示
- · 网吧安全简单谈
- · 工具软件漏洞引发的安全隐患
- · 被诅咒的画——图片病毒技术内幕
- · 浅析进程“伪隐藏”技术与实现两则
- · Web服务体系结构
- · Web Service安全机制探讨
