最近大家都在讨论着关于WINDOWS 2000 SMB的攻击,其实这些都已经不是新鲜概念了, 但是现在它的确很受欢迎..
SMB是个什么东东呢? 他就是Internet文件系统/服务器消息块网络协议(CIFS/SMB)我在这里只称它SMB..
RestrictAnonymous是一个RED_DWORD值,它可以被设置为3个可能的值之一:0,1,或2
下面是这三个值的含义..
取值 安全级别
0 无,依靠默认的权限
1 不允许查点SAM帐户和名称
2 没有显示的匿名权限则不能访问
我给大家介绍的是关于RestrictAnonymous设置为1时,有些工具仍然能够通过会话进行操作.
使用user2sid/sid2user识别帐户.
sid2user和user2sid是Evgenii Rudnyi开发的两个非常强大的Windows 2000的查点工具。这两个工具都是命令行工具。
他们能够利用用户名作为输入来查询Windows 2000 SID。关于sid幻影旅团的刺已经写过了相关文章,我就不多说了。
为远程使用他们,首先需要与目标计算机建立空会话。即使在RestrictAnonymous=1时。。
user2sid是用来查看sid的工具 首先,我们使用user2sid获取一个域SID:
c:\>user2sid \\192.168.202.33 "domain user"
s-1-5-21-8915387-1645822062-1819828000-513
Number of subauthorities is 5
Domain is WindowsNT
Length od SID in memory is 28 bytes
Type of SID is SidTypeGroup
这告诉我们该计算机的SID——以S-1开头,以连字符隔开的一组数字字符串。最后一个连字符后面称为相对标示符(RID),它是为内建的
NT/2000用户和组(例如administrator和guest)所预定义的。例如。administrator用户的RID总是500。guest用户的RID是501/直到了这一点,
我们就可以使用sid2user和已知的RID字符串加上SID 500来找出administrator账户的名字(即使它已经被改名)。
sid2user进行相反的操作,可以根据指定的sid获取用户名.
c:\〉sid2user \\192.168.2.33 5 21 8915387 1645822062 18198280005 500
Name is Alias
Domain is WindowsNT
Type of SID is SidTypeUser
注意这个命令的参数忽略了S—1和连字符。另一个有趣的事实是任何NT/2000本地系统或域中创建的第一个账户所分配的RID都是1000。每个
后续的对象得到下一个顺序的编号(1001、1002和1003等,RID是不重用的)。于是,一旦知道了SID,攻击者基本上就可以查点NT/2000系统
上每个用户和组,包括以前的以及过去的。还有需要注意的是在使用以上2个命令的时输入SID时必须从标识符颁发机构代码(对WINDOWS 2000来说总是5)开始,并使用空格而不是连字符来各开各个部分..
最后需要提醒一点的是,只要目标系统的TCP端口139或445是打开的,就可以正常的获取用户信息,尽管RestrictAnonymous可能设置为1。。