BadSuccessor 攻击检测工具
项目描述
BadSuccessor 是一个针对 Windows Server 2025 中 Active Directory 权限提升漏洞的检测工具集。该工具能够帮助安全团队识别环境中存在风险的 OU(组织单位)和身份,检测可能被利用的 BadSuccessor 攻击路径。
BadSuccessor 攻击利用了 Windows Server 2025 新引入的委托管理服务账户(dMSA)功能中的漏洞,在默认配置下允许攻击者以 Active Directory 中任何用户的权限执行操作,且目前微软尚未提供补丁。
功能特性
风险识别:检测域中哪些身份具有创建 dMSA 的权限
影响范围分析:识别哪些 OU 可能受到 BadSuccessor 攻击影响
轻量级检测:仅需要域读取权限即可运行
智能过滤:自动排除内置特权组(域管理员、企业管理员等)
清晰输出:以表格形式展示高风险身份和对应 OU
安装指南
确保系统满足以下要求:
Windows PowerShell 5.1 或更新版本
Active Directory 模块
域读取权限
下载脚本文件:
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/akamai/BadSuccessor/main/Get-BadSuccessorOUPermissions.ps1" -OutFile "Get-BadSuccessorOUPermissions.ps1"
复制代码
直接运行脚本:
.\Get-BadSuccessorOUPermissions.ps1
复制代码
使用说明
基础使用
# 运行检测脚本
.\Get-BadSuccessorOUPermissions.ps1
# 示例输出格式
Identity OUs
-- ---
CORP\svc_app {OU=Apps,DC=corp,DC=local}
CORP\UserCreators {OU=Tier1,OU=IT,DC=corp,DC=local}
复制代码
典型使用场景
安全审计:定期运行脚本检查环境中是否存在新的风险身份
权限收紧:根据输出结果审查并移除不必要的 OU 权限
监控加强:对识别出的高风险身份加强监控措施
核心代码
<#
.SYNOPSIS
Detects identities with permissions to create dMSAs in the domain
.DESCRIPTION
This script identifies which identities have permissions to create dMSAs in OUs,
highlighting where the BadSuccessor attack could be executed.
.NOTES
- Requires only domain read permissions
- Excludes built-in privileged groups
- Does not calculate effective permissions or expand group memberships
#>
# 获取域中所有非特权用户
$nonPrivilegedIdentities = Get-ADUser -Filter * |
Where-Object {
-not ($_.MemberOf -match "Domain Admins|Enterprise Admins|Administrators")
}
# 获取所有OU并检查dMSA创建权限
$allOUs = Get-ADOrganizationalUnit -Filter *
$results = @()
foreach ($ou in $allOUs) {
$acl = Get-Acl "AD:$($ou.DistinguishedName)"
foreach ($identity in $nonPrivilegedIdentities) {
# 检查是否有创建dMSA的权限
if (Test-dMSAPermission -Acl $acl -Identity $identity) {
$results += [PSCustomObject]@{
Identity = $identity.SamAccountName
OUs = $ou.DistinguishedName
}
}
}
}
# 输出结果
$results | Format-Table -AutoSize
复制代码
更多精彩内容 请关注我的个人公众号 公众号(办公 AI 智能小助手)公众号二维码
办公AI智能小助手
评论