内网横向渗透:从信息收集到精准攻击的实战指南
1. 内网横向渗透的底层逻辑与核心价值
当你在渗透测试中获得第一台内网主机的控制权时,真正的挑战才刚刚开始。内网横向渗透就像在黑暗森林中探索——每个节点都可能隐藏着通往核心系统的路径,也可能潜伏着防御机制。信息收集的质量直接决定了后续渗透的效率和隐蔽性。
我在企业红队评估中经常发现:许多初级测试人员拿到shell后就开始盲目扫描,结果触发大量告警。实际上,专业的内网横向渗透应该像外科手术般精准。以某次金融系统评估为例,通过精准收集域控日志中的管理员登录记录,我们仅用3次跳转就拿到了核心数据库权限,全程未被SIEM系统检测到。
2. 本机信息收集:建立渗透起点
2.1 账户权限深度分析
拿到shell后首先执行:
whoami /all # Windows id && sudo -l # Linux这不仅能判断当前权限级别,还能发现意外的sudo授权。曾遇到一个案例:某运维账户虽然本身权限有限,但被配置了无需密码执行/usr/bin/docker的sudo权限,最终通过容器逃逸获得root。
特别注意Windows中的
TokenPrivileges字段,SeImpersonatePrivilege等特殊权限往往意味着提权机会
2.2 网络拓扑测绘技巧
使用组合命令快速绘制网络地图:
ipconfig /all && route print # Windows ifconfig && route -n && cat /etc/resolv.conf # Linux关键要关注:
- DNS服务器地址(往往是域控)
- 网关IP(可能是防火墙或路由设备)
- 169.254.x.x等特殊网段(可能存在管理接口)
建议配合arp -a查看相邻主机,我曾通过ARP缓存发现过未在正式文档中记录的备份服务器。
2.3 进程与服务排查策略
tasklist /svc # Windows ps aux | grep -E '(ssh|vnc|rdp|sql)' # Linux重点关注:
- 安全软件进程(如McAfee、360等)
- 数据库服务(MySQL、Oracle等)
- 远程管理工具(TeamViewer、AnyDesk)
某次测试中,我们发现目标主机运行着旧版VNC服务,直接用msf的vnc_login模块就拿到了密码。
3. 域环境侦查:定位高价值目标
3.1 域控发现的三重验证法
- DNS解析验证:
nslookup -type=SRV _ldap._tcp.dc._msdcs.<域名> - 端口扫描确认:
nc -zv <疑似域控IP> 389 # LDAP默认端口 - 时间服务验证:
net time /domain
真实案例:某企业网络中存在多台域控,但只有dc02同步了最新的安全补丁。通过对比补丁版本(systeminfo),我们选择从较旧的dc01突破。
3.2 域用户关系图谱构建
使用PowerView脚本收集域关系:
Get-NetUser | Select-Object samaccountname,lastlogon Get-NetGroupMember "Domain Admins"特别注意:
- 最近登录时间(活跃用户更可能触发告警)
- 服务账户(常被赋予过高权限)
- 离职员工账户(可能未及时禁用)
4. 敏感文件自动化收集方案
4.1 Windows系统文件快速定位
编写自动化脚本批量检查:
$files = @( "C:\\Windows\\System32\\config\\SAM", "C:\\Users\\*\\AppData\\Roaming\\Microsoft\\Credentials\\*", "C:\\ProgramData\\Microsoft\\Crypto\\RSA\\MachineKeys\\*" ) foreach ($file in $files) { if (Test-Path $file) { Copy-Item $file -Destination .\collected_files\ } }4.2 Linux凭证收集实战技巧
利用find命令高效搜索:
find / -name "*.sql" -o -name "*config*.php" -o -name ".env" 2>/dev/null grep -r "password" /var/www/ /etc/ 2>/dev/null特别注意:
/var/backups/目录(常包含数据库备份)~/.ssh/config文件(可能保存跳板机配置)/etc/fstab(可能暴露NFS共享)
5. Metasploit在内网渗透中的高阶应用
5.1 会话中的智能信息收集
迁移到稳定进程后执行:
run post/multi/gather/env # 收集系统环境变量 run post/windows/gather/checkvm # 识别虚拟化环境某次遇到蜜罐系统,就是通过checkvm模块发现异常硬件信息而及时终止行动。
5.2 哈希转储的隐蔽方法
传统hashdump易触发告警,改用:
load kiwi creds_msv配合定时任务(如每天凌晨2点执行),可以显著降低被发现概率。
6. 防御视角下的反制措施
作为渗透测试者,必须了解防御方的常见检测手段:
- 账户行为监控:域控的
4672(特殊权限分配)和4624(登录)事件 - 进程创建日志:Sysmon的
1号事件(重点关注msfvenom生成的payload) - 文件访问审计:
4656事件对敏感文件的访问记录
建议在测试前与蓝队协调好时间窗口,并使用--sleep参数降低请求频率。