Kerberos无约束委派的攻击和防御
0x00 前言简介
当Active Directory首次与Windows 2000 Server一起发布时,Microsoft就提供了一种简单的机制来支持用户通过Kerberos对Web服务器进行身份验证并需要授权用户更新后端数据库服务器上的记录的方案。这通常被称为Kerberos double-hop issue(双跃点问题),需要委派才能使Web服务器在修改数据库记录时模拟用户操作。

0x01 Kerberos Unconstrained Delegation(Kerberos无约束委派)
Microsoft在Windows 2000中已添加了Kerberos“无约束委派”功能。域管理员可以通过勾选第二个复选框来启用此委派级别。第三个复选框用于“约束委派”,它要求在启用了委派的计算机上列出特定的Kerberos服务。
PowerShell查找Kerberos无约束委派:
使用Active Directory PowerShell模块的Get-ADComputer发现Kerberos无约束委派的计算机是比较容易。
无约束的委托:TrustedForDelegation = True
约束委派:TrustedToAuthForDelegation = True

0x02 Kerberos通信流程
让我们遵循标准的Kerberos通信流程,这是一个描述Kerberos如何工作的快速示例:
用户使用用户名和密码登录
1A.密码转换为NTLM哈希且时间戳用哈希加密,并把它作为身份验证票证(TGT)请求(AS-REQ)的身份验证者发送到KDC(密钥分配中心)
1B.域控制器(KDC)检查用户信息(登录限制,组成员等)并创建票据授予票证(TGT)
2. TGT经过加密和签名并发送给用户(AS-REP)。只有域中的Kerberos服务(KRBTGT)才能打开和读取TGT数据
3.当请求票证授予服务(TGS)票证(TGS-REQ)时,用户将TGT发送给DC。DC打开TGT并验证PAC校验----如果DC可以打开票证并校验和检出,则TGT 是有效的,TGT中的数据被有效地复制来创建TGS票证
4.使用目标服务帐户的NTLM密码哈希对TGS进行加密并发送给用户(TGS-REP)
5. 用户连接到服务器托管服务的适当的端口并发送给TGS(AP-REQ)。
该服务使用其NTLM密码哈希打开TGS票证。
当托管在TGS-REQ中引用的服务主体名称中指定的服务的服务器上启用Kerberos无约束委派时(步骤3),DC控制器的域控制器将用户的TGT副本存放到服务票证中。当用户的服务票证(TGS)被提供给服务器以进行服务访问时,服务器打开TGS并将用户的TGT放入LSASS以方便以后使用。Application Server现在可以无限制地模拟该用户操作!
注意:为了使应用程序服务器配置“Kerberos Unconstrained
Delegation”,域管理员或企业管理员需要在域中的计算机帐户上配置此设置。此权限可以委派给其他组,因此请谨慎在Active Directory中授权用户权限。

0x03 无约束委派盗取凭证
作为攻击者,一旦找到具有Kerberos无约束委派的服务器,那么下一步可以如下:
1.通过管理员或服务帐户攻击服务器。
2.通过社会工程学使用Domain Admin连接到服务器上的任何服务,并且具有无约束委派权限。
3.当管理员连接到此服务时,管理员的TGS服务票证(使用TGT)将发送到服务器并存入LSASS中,以方便以后使用。

4.可以提取并重新使用域管理员身份验证(TGT)票证(直到票有效期为止)。

5.可以立即使用该票证以获取域KRBTGT帐户密码哈希(当域管理员被泄露时),在这种情况下,我们使用PowerShell远程操作作为域管理员连接到域控制器。

0x04 防御措施
1.不要使用Kerberos无约束委派权限 -----配置需要使用约束委派进行委派的服务器
2.将所有高权限的管理员帐户配置为“帐户敏感且无法委派”
3.从Windows Server 2012 R2域功能级别开始提供的“受保护用户”组也可以缓解此问题,因为此组中的帐户不允许委派。
注意:
当受保护用户的组帐户升级到Windows
Server 2012 R2域功能级别时,将自动应用基于域控制器的保护。对Windows Server
2012 R2域进行身份验证的受保护用户组的成员无法再使用以下身份进行身份验证:Windows 8.1设备连接到Windows Server 2012 R2主机时.
默认凭据委派(CredSSP):即使启用了“ 允许委派默认凭据组策略”设置,也不会缓存纯文本密码凭据。
Windows摘要(Windows Digest):即使启用了Windows摘要,也不会缓存纯文本密码凭据。
NTLM:NT单向函数NTOWF的结果不会被缓存
Kerberos长期密钥:来自Kerberos初始TGT请求的密钥通常被缓存,因此不会中断身份验证请求。对于此组中的帐户,Kerberos协议会在每个请求中验证身份验证。
离线登录:登录时不会创建缓存的验证程序
Kerberos无约束委派的攻击和防御的更多相关文章
- 滥用基于资源约束委派来攻击Active Directory
0x00 前言 早在2018年3月前,我就开始了一场毫无意义的争论,以证明TrustedToAuthForDelegation属性是无意义的,并且可以在没有该属性的情况下实现“协议转换”.我相信,只要 ...
- C#-黑客-数据库访问-字符串的攻击和防御
C#中用基本的方法对数据库进行增删改查,会被黑客利用,写入其他的代码以实现对数据库的数据进行其他的操作.例如: 对下列数据库的某个信息进行修改操作 修改代码: using System; using ...
- 安全性测试入门:DVWA系列研究(一):Brute Force暴力破解攻击和防御
写在篇头: 随着国内的互联网产业日臻成熟,软件质量的要求越来越高,对测试团队和测试工程师提出了种种新的挑战. 传统的行业现象是90%的测试工程师被堆积在基本的功能.系统.黑盒测试,但是随着软件测试整体 ...
- XXE注入攻击与防御
在研究XXE注入攻击之前先了解一下什么是XXE 定义 XML用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言.XML文档结构包括 ...
- Mac地址泛洪攻击的防御措施和具体配置
Mac地址泛洪攻击指的是:利用交换机的mac地址学习机制,攻击者不断地刷新mac地址,填满交换机的mac地址表,以致崩溃,使交换机不得不使用广播发包,从而获取其他人的报文信息. mac地址泛洪攻击的防 ...
- ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御
ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3 ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...
- 浅谈Ddos攻击攻击与防御
EMail: jianxin#80sec.comSite: http://www.80sec.comDate: 2011-2-10From: http://www.80sec.com/ [ 目录 ]一 ...
- 通过DDOS攻击流程图来浅谈如何预防Ddos攻击与防御
DDOS攻击流程图 站长之家配图(来源:ppkj.net) 一 背景 在前几天,我们运营的某网站遭受了一次ddos攻击,我们的网站是一个公益性质的网站,为各个厂商和白帽子之间搭建一个平台以传递安全问题 ...
- 《sql注入攻击与防御 第2版》的总结 之 如何确定有sql注入漏洞
看完<sql注入攻击与防御 第2版>后,发现原来自己也能黑网站了,就一个字:太爽了. 简单总结一下入侵步骤: 1.确定是否有sql注入漏洞 2.确定数据库类型 3.组合sql语句,实施渗透 ...
随机推荐
- Spark计算模型RDD
RDD弹性分布式数据集 RDD概述 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变.可分区.里面的元素可并行 ...
- linux后台启动程序脚本实例
启动安装的zookeeper和kafka #!/bin/bash # start zookeeper and kafka service echo "========== Start the ...
- zabbix第一篇:zabbix安装及使用
常用软件安装及使用目录 一:搭建zabbix命令集 cat /etc/redhat-release uname -r getenforce systemctl status firewalld.ser ...
- JS页面出现Uncaught SyntaxError: Unexpected token < 错误
action中的查询方法的返回值应该为NONE;
- 将eclipse上的web项目部署到Tomcat服务器上经验总结
1. 将Tomcat插件添加到eclipse上 Window --> Preferences --> Server --> Runtime Environment --> A ...
- Mysql常用配置及优化
[client]# 该目录下的内容常用来进行localhost登陆,一般不需要修改port = 3306 # 端口号socket = /var/lib/mysql/mysql.sock # 套接字文件 ...
- 校友聊NABCD需求分析
校友聊 NABCD需求分析 N:内网用户流量不够使用 A:基于局域网进行通讯 B:通讯不花费外网流量 C:目前学校还没有使用 D:将软件放在校园网,可以下载使用
- MIT挑战(如何在12个月内自学完成MIT计算机科学的33门课程|内附MIT公开课程资源和学习顺序
译者注:本文译自Scott H. Young的博客,Scott拥有超强的学习能力,曾在12个月内自学完成麻省理工学院计算机科学的33门课程.本文就是他个人对于这次MIT挑战的介绍和总结. 版权声明:本 ...
- Beta 冲刺 (6/7)
队名:Boy Next Door 燃尽图 代码写入 https://github.com/mangoqiqi/paybook/tree/master/Desktop/Web%E8%B4%A6%E5%8 ...
- APP案例分析-热血江湖
本次分析的是一款游戏名叫热血江湖,这是我上小学的时候就在玩的游戏,可以说是一直玩到现在所以对它有一定的感情,所以决定分析这款游戏.下面附一张现在的游戏登陆界面. 第一部分 调研, 评测 1.下载软件并 ...