内网横向渗透:从信息收集到精准攻击的实战指南

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 域控发现的三重验证法

  1. DNS解析验证:
    nslookup -type=SRV _ldap._tcp.dc._msdcs.<域名>
  2. 端口扫描确认:
    nc -zv <疑似域控IP> 389 # LDAP默认端口
  3. 时间服务验证:
    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参数降低请求频率。