信息收集是域渗透很重要的一步。信息是否详尽,直接关系到渗透是否能够顺利完成.
假设现在已经拥有一台内网[域]机器,取名X-007.
1-1.内网[域]信息收集
A.本机X-007信息收集.
[+]------用户列表[Windows用户列表/邮件用户/...]
---->分析Windows用户列表,不要忽略administrator.
---->分析邮件用户,内网[域]邮件用户,通常就是内网[域]用户,例如:owa
[+]------进程列表
---->分析杀毒软件/安全监控工具等
---->邮件客户端
---->VPN等
[+]------服务列表
---->与安全防范工具有关服务[判断是否可以手动开关等]
---->存在问题的服务[权限/漏洞]
[+]------端口列表
---->开放端口对应的常见服务/应用程序[匿名/权限/漏洞等]
---->利用端口进行信息收集,建议大家深入挖掘[NETBIOS,SMB等]
[+]------补丁列表
---->分析Windows补丁
---->第三方软件[Java/Oracle/Flash等]漏洞
[+]------本机共享[域内共享很多时候相同]
---->本机共享列表/访问权限
---->本机访问的域共享/访问权限
[+]------本地用户习惯分析
---->历史记录
---->收藏夹
---->文档等
B.扩撒信息收集
[+]------利用本机获取的信息收集内网[域]其他机器的信息.
----用户列表/共享/进程/服务等.[参考上面]
[+]------收集Active Directory信息
----最好是获取AD副本.
------------------------------ 常见信息收集命令----------------------------------
net user ------> 本机用户列表
net localgroup administrators ------> 本机管理员[通常含有域用户]
net user /domain ------> 查询域用户
net group /domain ------> 查询域里面的工作组
net group "domain admins" /domain ------> 查询域管理员用户组
net group "domain computers" /domain ------> 查询域机器
net localgroup administrators /domain ------> 登录本机的域管理员
net localgroup administrators workgroup\user001 /add ----->域用户添加到本机
net group "Domain controllers" -------> 查看域控制器(如果有多台)
----------------------------------------------------------------------------------------
ipconfig /all ------> 查询本机IP段,所在域等
net view ------> 查询同一域内机器列表
net view /domain ------> 查询域列表
net view /domain:xxx -----> 查看xxx域中计算机列表
-------------------第三方信息收集-----------------
NETBIOS 信息收集工具
SMB信息收集
空会话信息收集
端口信息收集
漏洞信息收集
……
如果可能,建议弄一张内网拓扑图,这样方便下面的渗透工作.
1-2.内网[域]渗透
[推荐阅读]
黑客大曝光-前三章
内网渗透 by 樱木花道
Microsoft-word-pen-testing-windows-active-directory
Pen-testing-windows-active-directory
Windows Privilege Escalation Part 1
Windows Privilege Escalation Part 2
内网[域]渗透,不外乎获取内网[域]最高权限.
通常做法就是拿到某个域管理员的口令,然后控制域服务器,获取更多的信息.
如何获取域管理员口令,做法可能各不相同.
如果大家有更好的思路,请不要吝啬,一起学习.
cmdkey /list
可以列出域内网之间可用的凭据。
net user domain-admin /domain
//查看管理员登陆时间,密码过期时间,是否有登陆脚本,组分配等信息!
nbtscan
srvinfo (获取远程计算机相关信息)
查询域管理员用户:net group "domain admins" /domain
查询域用户:net user /domain
查询域名称:net view /domain
查询域内计算机:net view /domain:XX
查询域控制器:net time /domain
查询所有域控制器:dsquery server
例:dsquery server -domain super.com | dsget server -dnsname -site (搜索域内所有域控制器并显示他们的DNS主机名和站点名称)
查询域内计算机:dsquery computer -limit 0
例:dsquery computer domainroot -name admin* -limit 10(搜索域内名称以"admin"开头的10台机器))
查询域用户:dsquery user
dsquery user domainroot -name admin* -limit 10(搜索域内以"admin" 开头的10个用户)
查询域内联系人:dsquery contact
例:dsquery contact domainroot -name admin* -limit 10 (搜索域内以admin开头的10个联系人)
查询域内子网:dsquery subnet
查询域内用户组:dsquery group6 B, K' T% U& |
例:dsquery group dc=super,dc=com |more (搜索在DC=SUPER,DC=COM 域中的所有组
查询域内组织单位:dsquery ou
查询域内站点: dsquery site
例:dsquery site -o rdn (搜索域中所有站点的名称)
注:-limit 参数不指定查询数量,则默认显示前100条结果
例:dsquery user domainroot -name admin* -limit 10(搜索域内以"admin" 开头的前10个用户)
查询这10个用户的后10个用户要如何写?