文章的前言
在渗透测试中,信息收集的深度和广度以及关键信息的提取直接或间接决定了渗透测试的质量。本文主要对intranet中的信息收集做一个简单的总结和介绍。
主机信息
在内网渗透测试中,当我们拿下一台或多台可控主机时,首先要简单的收集当前主机的信息。常见信息包括以下几个方面:
网络结构
执行以下命令,检查当前机器是否在intranet中,intranet网段是什么,以及DNS地址、域名信息等:
ipconfig/全部
操作系统
通过执行以下命令检查操作系统版本信息:
Systeminfo | findstr /B /C:"操作系统名称"/C:"操作系统版本"
如果目标主机为英文,您可以使用以下命令查看主机系统信息:
systeminfo | findstr /B /C:"操作系统名称"/C:"操作系统版本"
软件信息
执行以下命令,查看目标主机上安装了哪些第三方应用程序,这些应用程序可用作后续渗透测试和利用点:
systeminfo | findstr /B /C:"操作系统名称"/C:"操作系统版本"
业务信息
通过执行以下命令获取本地服务信息,查看是否有任何可以进一步利用的点:
wmic服务列表简介
病毒检查软件
通过执行以下命令,检查目标主机上安装的防病毒软件:
wmic/namespace: root security center 2 path anti virus product GET display name,productState,pathToSignedProductExe
凯3389
首先我们需要确定远程连接的端口,使用cmd下的注册表查询语句。命令如下,连接端口为0xd3d,转换后为3389,如下图所示:
REG QUERY " HKEY _ LOCAL _ MACHINE SYSTEM current Control set Control Terminal Server win stations RDP-Tcp "/V端口号
在Windows Server 2003中打开端口3389:首先,检查打开的端口-端口3389没有打开。
执行语句:
wmic rd toggle WHERE ServerName = ' % computer name % '调用SetAllowTSConnections 1
执行结果:
成功打开端口3389:
在Windows Server 2008和Windows Server 2012中打开端口3389以查看当前开发端口-端口3389未打开。
之后,执行下面的命令打开端口3389——将执行管理员的权限,否则将报告错误。
wmic/namespace: root CIM v2 terminal services path win32 _ terminalservicesetting where call setallowtsconnections 1
wmic/namespace: root CIM v2 terminal services path win32 _ ts general setting where call setusertauthenticationrequired 1
REG add " HKLM 系统当前控制集控制终端服务器"/v fSingleSessionPerUser/t REG _ DWORD/d 0/f
之后,3389端口成功打开:
计划目标
通过执行以下命令,查看目标主机上的计划任务信息:
schtasks /query /fo LIST /v
用户列表
执行以下命令查看本地用户列表。通过分析本地用户列表,可以找出内部网络机器名,尤其是个人机器名的命名规则,并推断出整个域的用户命名方法:
网络用户
执行以下命令以获取本地管理员信息:
net本地组管理员
执行以下命令查看当前在线用户信息:
查询用户|| qwinsta
港口信息
查看与该机器的开放端口对应的端口列表、服务和应用程序:
netstat–ano
补丁信息
查看系统的详细信息,需要关注系统的版本、位数、域、补丁信息、更新频率等。通常,域中主机的补丁是批量安装的。通过查看本地计算机的修补程序列表,您可以找到未修补的漏洞。目前已经更新了两个补丁,如下图所示:
您还可以使用wmic查看修补程序信息:
wmic qfe获取标题、描述、热修复ID、安装日期
检查防火墙
通过执行以下命令检查防火墙的配置信息:
netsh防火墙显示配置
我们还可以使用以下命令关闭防火墙:Windows server 2003系统和以前的版本,使用以下命令:
netsh防火墙设置opmode禁用
Windows server 2003系统版本之后,命令如下:
netsh advfirewall将所有配置文件状态设置为关闭
有域名吗?
在收集了本机的相关信息后,接下来,需要确定当前内网中是否有域。如果是,则需要确定受控主机是否在域中。这里有几种方法:
用于查看本机的IP信息
使用ipconfig /all命令查看网关的IP地址、DNS的IP地址,并确定当前主机是否在域中:
ipconfig/全部
从上面我们可以看到域名信息和DNS地址信息。然后,我们可以通过反向解析查询命令nslookup解析域名的IP地址,对比解析出的IP地址,确定域控制器和DNS服务器是否在同一个服务器上,如下图所示。
从而判断DNS域域控制器位于同一服务器上。
登录域信息
执行下面的命令,结果如下图所示。工作站域的DNS名称显示域名,登录域表示当前用户是域用户还是本地用户,这里表示当前用户是域用户:
网络配置工作站
域内信息
下面简单介绍几种收集领域信息的方法。
ICMP探测内部网
我们可以使用ICMP协议来检测内部网信息:
for/L % I in DO @ ping-w 1-n 1192 . 168 . 174。%I | findstr "TTL= "
ARP探测内部网
同时,我们可以使用MSF框架中的模块来检测内部网信息:
msf >使用辅助/scanner/discovery/ARP _ sweepmsf >显示选项smsf >设置接口eth0msf >设置smac 00:0c:29:92:fd:85msf >设置rhosts 192.168.174.1/ 24msf >设置线程20msf >设置shost 192.168.174.131 msf >运行
TCP/UDP协议
ScanLine是一款经典的端口扫描工具。它通用于所有版本的Windows,体积小,只使用一个文件。它还支持TCP/UDP的端口扫描。这些命令如下所示
scanline -h -t 22,445,3389 -u 53,161,137,139-O c: windows temp log . txt-p 192 . 168 . 174 . 1-254/b
港口信息收集
一、MSF框架的辅助/扫描器/portscan/tcp模块实现端口扫描:
可以看到,metasploit内置的端口扫描模块可以找到系统并打开端口~b,PowerSploit中的Invoke-Portscan.ps1脚本也可以用于端口扫描收集内网信息:
invoke-ports can-Hosts 192 . 168 . 174 . 0/24-T 4-ports ' 445,1433,8080,3389,80' -oA c:windowstempres.txt
查询域信息
网络视图/域
查询域主机
执行以下命令,查看当前域中有多少台主机,以及这些主机的主机名信息:
网络视图/域:XXX
查询域用户
执行以下命令查看域中所有用户组的列表信息
网络组/域
搜索域控制
a .通过执行以下命令检查域控制
Nslookup -type=SRV _ldap。_tcp
b、检查当前时间以定位域控件
净时间/域
c、查询域控制组,定位域控制
网络组“域控制器”/域
检查域用户信息
网络用户/域
当然,您也可以使用dsquery指令:
Dsquerycomputer -在目录中查找计算机dsquerycontact -在目录中查找符合指定搜索条件的联系人dsquerysubnet -在目录中查找子网dsquerygroup -在目录中查找组dsqueryyou-在目录中查找组织。公司dsquerysite -在目录中查找站点dsquery服务器-在目录中查找域控制器dsquery用户-在目录中查找用户dsquery配额-在目录中查找配额规范dsquery分区-在目录中查找磁盘分区dsque。ry *-使用标准LDAP查询查找目录中的任何对象dsquery server–域Yahoo.com | ds get server–DNS Name–site-搜索域中域控制器的DNS主机名和站点名dsquery计算机域Root–Name *-xp–Limit 10-搜索域中以-XP结尾的10台计算机DSQuery用户域Root–Name admin *-Limit-搜索域中以admin开头的10个用户。
查询域管理员
您可以通过以下命令查看当前的域管理员信息:
网络组“域管理员”/域
获取域SID信息
whoami/全部
可以看到当前域hacke的SID是s-1-5-21-180313546-3823935851-3686928739,域用户testuser的SID是s-1-5-21-180313546-3823935851-3686928739。
查询当前权限
本地用户:当前权限为win-2008的用户。
本地管理员用户:当前拥有win7-x64-test权限的管理员用户。
域内用户:当前权限是黑客域的管理员用户。
相关工具
权力的象征:https://github.com/PowerShellMafia/PowerSploitNishang:·https://github.com/samratashok/nishangmetasploit:·https://github.com/rapid7/
Github项目
推送二吉斯项目:项目地址:https://github.com/Al1ex/CSPlugins项目描述:主要收集CS常用插件,涉及权限提升、漏洞利用、横向移动、信息收集、免杀等。
项目地址:https://github.com/Al1ex/Pentest-tools项目描述:主要收集一些内网渗透测试常用的工具。
结束摘要
当然,渗透测试中的信息收集不仅限于以上几点,实战中信息收集的广度和深度会更深。本文是有价值的投稿~
点粉香
点赞
典仔