当前位置: 首页 > news >正文

MS16-075 漏洞 复现过程

目录

一、MS16-075 漏洞概述

二、为什么称之为“甜土豆”提权?

三、MS16-075 漏洞复现步骤

1. 下载 POC 和 EXP

2. 编译与准备 EXP

3. 利用 MS16-075 漏洞提权(本地执行)

4. 将 POC 转换为 Cobalt Strike Payload

四、通过 Cobalt Strike 进行提权的详细步骤

1. 上传工具至目标主机

2. 执行提权命令

3. 利用 CS 内置模块提权

五、提权成功后的进一步操作

总结

一、MS16-075 漏洞概述

  • CVE编号: CVE-2016-3225
  • 漏洞名称: Windows Group Policy Elevation of Privilege Vulnerability
  • 影响版本:
    • Windows Vista SP2
    • Windows Server 2008 SP2 和 R2 SP1
    • Windows 7 SP1
    • Windows 8.1
    • Windows Server 2012 和 2012 R2
    • Windows 10(早期版本)
  • 补丁发布: 2016年6月

漏洞描述:
MS16-075 漏洞利用 Windows 系统中 Group Policy(组策略)的权限提升问题,攻击者可以通过 SMB 请求的方式利用此漏洞,以 SYSTEM 权限执行任意代码。漏洞的核心原因在于 gpupdate 过程中的服务通信未进行适当的权限检查。


二、为什么称之为“甜土豆”提权?

  • “甜土豆”(SweetPotato)提权的由来:
    MS16-075 漏洞的利用方式与 “RottenPotato” 等系列漏洞(涉及 NTLM 中继攻击)有相似之处。
    • “RottenPotato” 是利用 DCOM 和 NTLM 中继进行提权的漏洞技术。
    • “甜土豆”(SweetPotato)则是该系列漏洞的后续版本,使用了类似的 COM 服务劫持与本地中继技术。
    • 命名原因: 开发者为了保持土豆系列的命名风格,称其为“甜土豆”。

三、MS16-075 漏洞复现步骤

环境准备:

  • 目标机器: 未打补丁的 Windows 7/8/10 以及 Server 2008/2012
  • 工具需求:
    • Cobalt Strike (CS)
    • MS16-075 漏洞利用脚本(EXP/POC)
    • Mimikatz(可选,用于权限验证)

1. 下载 POC 和 EXP
  • GitHub 下载地址:
    • SweetPotato GitHub
    • MS16-075 Exploit POC
    • 注意: 直接访问 GitHub 链接下载源码并进行编译,通常是 C++C# 语言编写的。

2. 编译与准备 EXP
  • 下载 SweetPotato 项目后,使用 Visual Studio 进行编译:

    git clone https://github.com/CCob/SweetPotato.git
    cd SweetPotato
    msbuild SweetPotato.sln
    
  • 成功编译后,你会得到 SweetPotato.exe


3. 利用 MS16-075 漏洞提权(本地执行)

命令示例:

SweetPotato.exe -p cmd.exe -a "/c whoami" -t 2

参数解析:

  • -p : 指定要执行的程序(如 cmd.exe)。
  • -a : 传递给程序的参数。
  • -t : 使用不同的 COM 接口类型(通常使用 23 尝试)。

预期结果:

  • 若漏洞利用成功,whoami 的输出应为 NT AUTHORITY\SYSTEM

4. 将 POC 转换为 Cobalt Strike Payload

方法一: 使用 Cobalt Strike 的外部工具模块

  • 步骤:
    1. SweetPotato.exe 上传至目标机器。
    2. 在 Beacon 中执行以下命令:
      execute-assembly SweetPotato.exe -p cmd.exe -a "/c whoami" -t 2
      
    3. 预期结果: SYSTEM 权限的 Beacon shell。

方法二: 制作自定义 Reflective DLL

  • 步骤:
    1. 将 SweetPotato 项目修改为 DLL 输出。
    2. 使用 Cobalt StrikeAggressor Script 加载该 DLL。
    3. 在 Beacon 会话中调用 DLL 进行提权。

四、通过 Cobalt Strike 进行提权的详细步骤

1. 上传工具至目标主机
  • 在 Beacon 会话中使用:
    upload C:\path\to\SweetPotato.exe
    

2. 执行提权命令
  • 在 Beacon 中运行:
    shell SweetPotato.exe -p cmd.exe -a "/c whoami" -t 2
    

预期结果:

  • 如果成功,whoami 会返回 NT AUTHORITY\SYSTEM

3. 利用 CS 内置模块提权
  • Cobalt Strike 内有 Token ImpersonationBypass UAC 等模块,可以辅助提权。
  • 使用 bypassuac 命令尝试提权:
    bypassuac
    
  • 若成功,Beacon 会话会提升为 SYSTEM 权限。

五、提权成功后的进一步操作

  1. 获取 SAM 与系统哈希:

    mimikatz.exe "lsadump::sam" exit
    
  2. 横向移动:

    • 使用 psexecwmiexec 进行横向移动。
    • 示例:
      psexec \\target_ip -u admin -p password cmd.exe
      
  3. 持久化操作:

    • 创建计划任务或修改启动项,确保重启后权限不丢失。

总结

  • MS16-075漏洞核心: 通过 SMB 请求劫持权限,利用 COM 接口执行代码。
  • 甜土豆提权: NTLM 中继 + COM 接口劫持的改进版,故称“甜土豆”。
  • CS中提权步骤:
    • 上传工具 -> 执行提权 -> 验证 SYSTEM 权限 -> 扩展操作 (如获取哈希、横向移动等)。
  • 成功标志: whoami 返回 NT AUTHORITY\SYSTEM
http://www.xdnf.cn/news/555859.html

相关文章:

  • Ai学习之openai api
  • 武汉火影数字|数字展厅展馆制作:沉浸式体验,全方位互动
  • Vue 3 深度解析:Composition API、Pinia状态管理与路由守卫实战
  • Rocketmq leader选举机制,通过美国大选解释
  • 第32节:基于ImageNet预训练模型的迁移学习与微调
  • 【MySQL】第六弹——表的CRUD进阶(四)聚合查询(下)
  • 图的几种存储方法比较:二维矩阵、邻接表与链式前向星
  • 人工智能驱动的制造业智能决策:从生产排程到质量闭环控制
  • 深度学习-mmcv中build_runner实例化全流程详解
  • EtherCAT通信协议
  • 【Netty】- NIO基础2
  • 易境通海外仓系统PDA蓝牙面单打印:解锁库内作业新姿势
  • 【MySQL成神之路】运算符总结
  • day 31
  • STM32之定时器(TIMER)与脉冲宽度调制(PWM)
  • Glasgow Smile: 2靶场渗透
  • PostGIS栅格数据类型解析【raster】
  • 【深入理解索引扩展—1】提升智能检索系统召回质量的3大利器
  • 详解ip地址、子网掩码、网关、广播地址
  • 系统编程的标准IO
  • 【LINUX操作系统】日志系统——自己实现一个简易的日志系统
  • 容器环境渗透测试工具(docker渗透测试工具、kubernetes)
  • 一文掌握vue3基础,适合自学入门案例丰富
  • FreeRTOS学习笔记【11】-----任务列表
  • 第40天-Python开发音乐播放器完整指南
  • 左右边界策略
  • 前端读取本地项目中 public/a.xlsx 文件中的数据 vue3
  • Linux管道工具
  • 全能签软件的由来和介绍
  • MRVG-Net论文精读