枚举NT系统用户帐号

枚举用户SID。

WMI方法

Set wmiColl = GetObject("WinMgmts:root/cimv2").ExecQuery("Select * FROM Win32_UserAccount")
For Each wmiObj In wmiColl
        WScript.Echo wmiObj.sid
Next




在枚举NT系统用户帐号时,通常通过NULL Session,来进行。但是并不是说只要建立了
NULL Session就可以枚举帐号,如果作了一些安全设置就没那么容易了。(例如:在用
流光枚举的时候出现的ErrorCode: 5就是这样的)
但是我们可以通过SID来进行这个工作,我们知道,系统中每建立一个用户账号,总会给
其赋一个标识号,就好比Unix系统中,每个用户账号都有一个UID一样,在Windows NT/
2000系统里,用户的唯一标识号就是SID(安全标识号)。之后,该用户对系统资源进行
访问时,就是通过其SID进行权限检查的。
一个SID是由一长串数字组成的,其中包括两个部分,前一部分用来唯一标识一个域(如
果是独立的工作站,唯一标识的就是工作站主机),后一部分唯一标识域(或主机)中
的某个账号。
例如:
S-1-5-21-789336058-113007714-1060284298-500
对域在同一个域中SID的前面部分时相同的,不同的只是最后的部分。
系统内置的管理员账号SID的最后总是500、Guest的SID最后总是501。
用户帐号SID的最后是从1000开始的。
知道了这个规律,我们就可以通过得到Guest的SID,通过构造SID的最后部分(累加)来
枚举用户帐号。一个帐号即使被删除,他的SID依然存在。所以通过这种方法得到的用户
名有一些也许是已经被删除了的。
我写了一个小工具GetAccount,就是根据这个原理来的。
用法:
GetAccount //IP Type Count
Type:
0:系统内置的帐号
1:用户增加的帐号
Count: 枚举的数目(累加的数目)
例如:
C:/>GetAccount.exe //211.154.211.15 1 10
GetAccount Via SID, by netXeyes 2002/04/06
Connect Host 211.154.211.15 ....OK
Start Ememurate Account....
Name is: TsInternetUser
Name is: IUSR_XINNET-5C4H2165
Name is: IWAM_XINNET-5C4H2165
Name is: iisshare
Name is: www.sbs.com.cn Admins
Name is: www.sbs.com.cn Authors
Name is: www.sbs.com.cn Browsers
Name is: web2018
Name is: www.fontainburg.com Admins
Name is: www.fontainburg.com Authors
Disconnect Host 211.154.211.15 ....OK
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值