什么是SID

前言
SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机账户的惟一的号码。在第一次建立该账户时,将给网络上的每个账户发布一个惟一的 SID。Windows 2000 中的内部进程将引用账户的 SID 而不是账户的用户或组名。若是建立账户,再删除账户,而后使用相同的用户名建立另外一个账户,则新账户将不具备受权给前一个账户的权力或权限,缘由是该账户具备不一样的 SID 号。安全标识符也被称为安全 ID SID。

SID的做用
用户经过验证后,登录进程会给用户一个访问令牌,该令牌至关于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给 Windows NT,而后 Windows NT 检查用户试图访问对象上的访问控制列表。若是用户被容许访问该对象,Windows NT将会分配给用户适当的访问权限。
访问令牌是用户在经过验证的时候有登录进程所提供的,因此改变用户的权限须要注销后从新登录,从新获取访问令牌。

SID号码的组成
若是存在两个一样SID的用户,这两个账户将被鉴别为同一个账户,原理上若是账户无限制增长的时候,会产生一样的SID,在一般的状况下SID是惟一的,他由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的惟一性。

一个完整的SID包括:
? 用户和组的安全描述
? 48-bit的ID authority
? 修订版本
? 可变的验证值Variable sub-authority values
例:S-1-5-21-310440588-250036847-580389505-500
咱们来先分析这个重要的SID。第一项S表示该字符串是SID;第二项是SID的版本号,对于2000来讲,这个就是1;而后是标志符的颁发机构(identifier authority),对于2000内的账户,颁发机构就是NT,值是5。而后表示一系列的子颁发机构,前面几项是标志域的,最后一个标志着域内的账户和组。

SID的得到
开始-运行-regedt32-HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Builtin\Aliases\Members,找到本地的域的代码,展开后,获得的就是本地账号的全部SID列表。
其中不少值都是固定的,好比第一个000001F4(16进制),换算成十进制是500,说明是系统创建的内置管理员账号administrator,000001F5换算成10进制是501,也就是GUEST账号了,详细的参照后面的列表。
这一项默认是system能够彻底控制,这也就是为何要得到这个须要一个System的Cmd的Shell的缘由了,固然若是权限足够的话你能够把你要添加的账号添加进去。
或者使用Support Tools的Reg工具:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

还有一种方法能够得到SID和用户名称的对应关系:
1. Regedt32:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion \ProfileList
2. 这个时候能够在左侧的窗口看到SID的值,能够在右侧的窗口中ProfileImagePath看到不一样的SID关联的用户名,
好比%SystemDrive%\Documents and Settings\Administrator.momo这个对应的就是本地机器的管理员SID
%SystemDrive%\Documents and Settings\Administrator.domain这个就是对应域的管理员的账户

另外微软的ResourceKit里面也提供了工具getsid,sysinternals的工具包里面也有Psgetsid,其实感受原理都是读取注册表的值罢了,就是省了一些事情。

SID重复问题的产生
安装NT/2000系统的时候,产生了一个惟一的SID,可是当你使用相似Ghost的软件克隆机器的时候,就会产生不一样的机器使用一个SID的问题。产生了很严重的安全问题。
一样,若是是重复的SID对于对等网来讲也会产生不少安全方面的问题。在对等网中账号的基础是SID加上一个相关的标识符(RID),若是全部的工做站都拥有同样的SID,每一个工做站上产生的第一个账号都是同样的,这样就对用户自己的文件夹和文件的安全产生了隐患。
这个时候某我的在本身的NTFS分区创建了共享,而且设置了本身能够访问,可是实际上另一台机器的SID号码和这个同样的用户此时也是能够访问这个共享的。

SID重复问题的解决
下面的几个试验带有高危险性,慎用,我已经付出了惨痛的代价!
微软在ResourceKit里面提供了一个工具,叫作SYSPREP,这个能够用在克隆一台工做站之前产生一个新的SID号码。 下图是他的参数

这个工具在DC上是不能运行这个命令的,不然会提示

可是这个工具并非把全部的账户彻底的产生新的SID,而是针对两个主要的账户Administrator和Guest,其余的账号仍然使用原有的SID。 下面作一个试验,先得到目前账号的SID: S-1-5-21-2000478354-688789844-839522115 而后运行Sysprep,出现提示窗口: 肯定之后须要重启,而后安装程序须要从新设置计算机名称、管理员口令等,可是登录的时候仍是须要输入原账号的口令。 进入2000之后,再次查询SID,获得: S-1-5-21-759461550-145307086-515799519,发现SID号已经获得了改变,查询注册表,发现注册表已经所有修改了,固然所有修改了?。 另外sysinternals公司也提供了相似的工具NTSID,这个到后来才发现是针对NT4的产品,界面以下: 他可不会提示什么再DC上不能用,接受了就开始,结果致使个人一台DC崩溃,重启后提示“安全帐号管理器初始化失败,提供给识别代号颁发机构的值为无效值,错误状态0XC0000084,请按肯定,重启到目录服务还原模式...”,即便切换到目录服务还原模式也再也进不去了! 想一想本身胆子也够大的啊,好在是一台额外DC,可是本身用的机器,致使重装系统半天,重装软件N天?,因此再次提醒你们,作以上试验的时候必定要慎重,最好在一台可有可无的机器上试验,不然出现问题我不负责哦?。另外在Ghost的新版企业版本中的控制台已经加入了修改SID的功能,本身尚未尝试,有兴趣的朋友能够本身试验一下,不过从原理上应该都是同样的。 文章发表以前,又发现了微软本身提供的一个工具“Riprep”,这个工具主要用作在远程安装的过程当中,想要同时安装上应用程序。管理员安装了一个标准的公司桌面操做系统,并配置好应用软件和一些桌面设置以后,可使用Riprep从这个标准的公司桌面系统制做一个Image文件。这个Image文件既包括了客户化的应用软件,又把每一个桌面系统必须独占的安全ID、计算机帐号等删除了。管理员能够它放到远程安装服务器上,供客户端远程启动进行安装时选用。可是要注意的是这个工具只能在单硬盘、单分区并且是Professional的机器上面用。 下面是SID末尾RID值的列表,括号内为16进制: Built-In Users DOMAINNAME\ADMINISTRATOR S-1-5-21-917267712-1342860078-1792151419-500 (=0x1F4) DOMAINNAME\GUEST S-1-5-21-917267712-1342860078-1792151419-501 (=0x1F5) Built-In Global Groups DOMAINNAME\DOMAIN ADMINS S-1-5-21-917267712-1342860078-1792151419-512 (=0x200) DOMAINNAME\DOMAIN USERS S-1-5-21-917267712-1342860078-1792151419-513 (=0x201) DOMAINNAME\DOMAIN GUESTS S-1-5-21-917267712-1342860078-1792151419-514 (=0x202) Built-In Local Groups BUILTIN\ADMINISTRATORS S-1-5-32-544 (=0x220) BUILTIN\USERS S-1-5-32-545 (=0x221) BUILTIN\GUESTS S-1-5-32-546 (=0x222) BUILTIN\ACCOUNT OPERATORS S-1-5-32-548 (=0x224) BUILTIN\SERVER OPERATORS S-1-5-32-549 (=0x225) BUILTIN\PRINT OPERATORS S-1-5-32-550 (=0x226) BUILTIN\BACKUP OPERATORS S-1-5-32-551 (=0x227) BUILTIN\REPLICATOR S-1-5-32-552 (=0x228) Special Groups \CREATOR OWNER S-1-3-0 \EVERYONE S-1-1-0 NT AUTHORITY\NETWORK S-1-5-2 NT AUTHORITY\INTERACTIVE S-1-5-4 NT AUTHORITY\SYSTEM S-1-5-18 NT AUTHORITY\authenticated users S-1-5-11 *.(over)
相关文章
相关标签/搜索