0、背景



聆听了n1nty大佬(90后黑客代表)的谆谆指导,学习了n1nty大佬的基本操作,决定总结一下,做一个简要的读书笔记,也把之前自己记录的关于Windows的安全的一些博客能够串联起来。所以首先鸣谢:90后黑客代表n1nty大佬。

1、Kerberos的基本认证



1.1、NTLM的挑战认证


不啰嗦,直接说要点,server接到client的请求认证后,会回复16字节随机数据,也就是挑战。client使用自己生成的账号的NTLM的hash值对挑战数据进行某种加密运算,发送到server,server对这一数据进行验证,计算方法相同,比对一直即通过,否则不通过。这一段可以查阅之前博客Windows NTLM Hash和Hash传递、Key传递攻击

1.2、Kerberos验证


不啰嗦具体细节可以参考之前的博客Kerberos认证协议分析,这里有分三个步骤

1.2.1、第一步AS验证


核心是:账号口令的hash值加密时间戳(timestamp),记忆账号身份信息给AS服务器(KDC的一部分,KDC是DC的一部分,DC是域控,对应的数据库是AD),AS服务器解密时间戳,核对在五分钟以内,且不是重放,则返回TGT和Session-Key。在Wireshark中,Session-KEY是外侧的enc-part数据,Session-Key由password的hash值加密后,生成新的enc-part数据,存在TGT里面。

1.2.1.1、域内用户枚举攻击:


一张图解决问题,发送AS-REQ,根据AS-REP来判断问题:

1.2.1.2、TGT Session Key离线爆破


一段话解决问题:session-key经过hash加密成为tgt的一部分,拿到tgt后可以尝试离线暴力破解hash的明文,与NTLM的爆破原理一致,明文字典经过hash计算形成hash值,然后尝试加密session-key与tgt的session-key对应,一致,则爆破成功。

1.2.1.3、PtK(Pass the Key)攻击


在AS-REQ中时间戳经过NT hash或者账号的AES128(AES256)的加密,形成加密数据,你可以通过如下方式获取:

server端会依照解密,验证时间戳。获取Key之后可以传递这个Key,获取TGT。

1.2.2、第二步TGS验证

核心是:client给server发送使用使用krbtgt的口令hash加密的TGT和加密的session-key,server端使用krbtgt的口令hash值解密TGT获取加密的session-key与外部加密的session-key进行比较,一致,就返回访问服务使用的普通ticket和新的session-key,否则验证失败。

1.2.2.1、Golden Ticket

使用方法和原理请参见之前博客黄金票据(Golden Ticket)的原理与实践,总结一句话:TGT的伪造很简单,只需要sid,session-key加密所需要的key(NT-hash、AES256KEY、AES128KEY)即可,域名、username即可。session-key的原始值是随机值,可以任意伪造,加密后两个加密的session-key一致即可通过。

1.2.3、第三步AP验证


原理与TGS相同,验证普通ticket中的session-key与新的session-key是否一致。

1.2.3.1、Sliver Ticket


与Golden Ticket的原理一致,不同的是加密的是service ticket(普通ticket),使用的服务启动账号的口令hash值而不是krbtgt的账号的口令的hash值,所以只能访问该账号启动的服务,而不是全域服务。

2、委派


2.1.1 无限制委派


缓存各个账户的TGT进行代理验证,危险。

2.2.2 受限制委派


涉及S4U2Self和S4U2Proxy协议,暂不赘述。

Kerberos认证与攻击学习总结的更多相关文章

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

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

  2. Kerberos认证流程详解

    Kerberos是诞生于上个世纪90年代的计算机认证协议,被广泛应用于各大操作系统和Hadoop生态系统中.了解Kerberos认证的流程将有助于解决Hadoop集群中的安全配置过程中的问题.为此,本 ...

  3. yarn 用户导致的被挖矿 启用Kerberos认证功能,禁止匿名访问修改8088端口

    用户为dr.who,问下内部使用人员,都没有任务在跑: 结论: 恭喜你,你中毒了,攻击者利用Hadoop Yarn资源管理系统REST API未授权漏洞对服务器进行攻击,攻击者可以在未授权的情况下远程 ...

  4. Kerberos认证浅析

    1 引言 在希腊神话中Kerberos是守护地狱之门的一条凶猛的三头神犬,而我们在本文中所要介绍的Kerberos认证协议是由美国麻省理工学院(MIT)首先提出并实现的,是该校雅典娜计划的一部分.这个 ...

  5. kerberos认证协议爱情故事

    0x01.kerberos简介 kerberos是一种域内认证协议,Kerberos的标志是三头狗,狗头分别代表以下角色: Client Server KDC(Key Distribution Cen ...

  6. [Kerberos] Kerberos 认证过程整理

    Kerberos是一种安全认证协议,意在提供 more secure authentication simplified management of password convenience of s ...

  7. hadoop的kerberos认证

    言归正传,介绍过hadoop的simple认证和kerberos后,我们在这一章介绍hadoop的kerberos认证 我们还使用hadoop集群的机器. OS 版本: Centos6.4 Kerbe ...

  8. KafkaManager编译安装使用(支持kerberos认证)

    为了能够方便的查看及管理Kafka集群,yahoo提供了一个基于Web的管理工具(Kafka-Manager). 这个工具可以方便的查看集群中Kafka的Topic的状态(分区.副本及消息量等),支持 ...

  9. Java Api Consumer 连接启用Kerberos认证的Kafka

    java程序连接到一个需要Kerberos认证的kafka集群上,消费生产者生产的信息,kafka版本是2.10-0.10.0.1: Java程序以maven构建,(怎么构建maven工程,可去问下度 ...

随机推荐

  1. Java多线程——Lock&Condition

    Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象.两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象. package ...

  2. UNIX环境编程学习笔记(25)——信号处理进阶学习之 sigaction 函数

    lienhua342014-11-05 sigaction 函数跟 signal 函数一样,用于设置信号处理函数.此函数是用于取代 UNIX 早期版本使用的 signal 函数.UNIX 早期版本的 ...

  3. RMAN:简单的duplicate创建新数据库

    duplicate to "test" backup location '/home/oracle/11.2.0.4/assistants/dbca/templates/'; du ...

  4. ABBYY FineReader操作技巧

    使用ABBYY FineReader OCR文字识别软件工作即快速又简单,软件自身常常可以自行处理一切工作,用户只需点击几下软件中的‘主要’按钮.不过,有时要想获得更好的质量结果,或者解决某个不寻常的 ...

  5. BarTender条码检验位类型知识讲解

    检验位类型指定BarTender使用哪一种算法来计算符号的附加检验位.使用“BarTender检验位类型”选项可以从您的符号所支持的检验位类型中选择一种检验位类型.下面,小编就给大家分享设置检验位类型 ...

  6. java字符集

    在utf-8编码中,unicode(编码字符集)是utf-8(字符编码)的表现形式 http://www.cnblogs.com/hanruyue/p/5859107.html

  7. Ruby 面向对象知识详解

    Ruby 是纯面向对象的语言,Ruby 中的一切都是以对象的形式出现.Ruby 中的每个值都是一个对象,即使是最原始的东西:字符串.数字,甚至连 true 和 false 都是对象.类本身也是一个对象 ...

  8. LTS原理分析(version:1.6.9)

    LTS做到分布式唯一执行的原理:LTS采用类似Hadoop作业提交的方式,由JobClient submit作业任务给JobTracker,然后JobTracker会预生成一批作业任务的执行时间记录( ...

  9. BearSkill纯代码搭建iOS界面

    欢迎相同喜欢动效的project师/UI设计师/产品增加我们 iOS动效特攻队–>QQ群:547897182 iOS动效特攻队–>熊熊:648070256 浅谈一下 关于iOS兼容布局一直 ...

  10. 【代码审计】ThinkSNS_V4 任意文件下载漏洞分析

      0x00 环境准备 ThinkSNS官网:http://www.thinksns.com 网站源码版本:ThinkSNS V4  更新时间:2017-09-13 程序源码下载:http://www ...