域内批量执行 net user Uname /domain
0x00使用场景
在渗透测试中,需要查找域内某用户的机器所在,必须得确定目标人物所对应的域用户。
查找域用户对应的 Full Name
信息,从而确认目标任务对应的域用户。
0x01 代码
代码其实很简单,使用 C# 进行编写,可自行编译。
将所有域用户导入user.txt
中(每个域用户一行),遍历文件中的用户,然后调用系统cmd命令执行net user Uname /domain
,将运行结果进行输出,可根据自己需求进行二次修改(线程、正则、输出保存)。
1 | using System; |
运行效果图:
0x02 改进 (20190418)
由于上面的代码略蠢,所以我决定将它进行改进。
- 使用
System.DirectoryServices.ActiveDirectory
列举用户; - 使用
msvcrt.dll
执行系统命令;
1) powershell 列举用户列表
这份代码在网上已经很成熟了,可自行查阅。
1 | function DomainUserList |
将代码转换成C#代码,效果如下
3) 成品
其实还是有点麻瓜。
github: DomainUserList
0x03 总结
在域内使用dsquery
查找的信息是有限的,所以需要相应的辅助工具,这个工具存在的意义就是人物与域用户之间的确认。