当前位置:   article > 正文

内网安全-Kerberos协议详解_kerberos协议图解

kerberos协议图解

什么是Kerberos

一种网络认证协议,作为一种可信任的第三方认证服务,使用传统密码技术(如:共享密钥)进行认证服务。

人话:解决了远程访问服务器时,如何证明我是我的问题,保证了用户认证的安全性

认证流程

流程中涉及三个角色:客户端、服务器、KDC(密钥分发中心)

1、客户端:发送请求的一方
2、服务器:接受请求的一方
3、KDC:其中分为两个部分
​ 1)AS(认证服务器):用来认证客户端的身份,并向客户端分发TGS(票据授予票据)以用于访问TGT
​ 2)TGT(票据授予服务器):用于发放客户端访问服务端时所需要的ST(服务授予票据)

下面通过一张图简单了解下Kerberos认证的简单流程
​		[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3VAxP5J4-1690731025144)(images/image-20230730232512735.png)]

详细流程

1、客户端发送给AS的认证信息,其中认证信息包括
​	[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bcyTb2Us-1690731025144)(images/image-20230730224726384.png)]

2、AS认证通过后给客户端发送TGT,其中TGT包括的信息
​	[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OG8xw3ae-1690731025145)(images/image-20230730225309716.png)]
krbtgt:KDC服务器中的一个账户,其HASH加密无法破解
TGSname:访问TGS服务的地址
CT_SK:CT Seesion Key 后面会用到的加密密码,AS随机生成

3、客户端收到TGT后,先用自己账户的HASH解密上半部分拿到其中的CT_SK,然后对TGT加工后发送给TGS
​	[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sh4zW8hi-1690731025145)(images/image-20230730230542064.png)]
ServerName:客户端访问服务端的哪一个服务。

4、TGS收到可客户端发来的加工后的TGT后,对其中所有内容解密,
首先是krbtgt账户的解密得到CT_SK
然后解密使用CT_SK加密的上半部分
最后成功解密之后通过两个部分对比没有问题之后,发送ST给客户端
​	[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lmTmQrMy-1690731025146)(images/image-20230730231323540.png)]

5、客户端收到ST之后原封不动的将ST发送给服务端

6、服务端在收到ST后
首先通过自己的Server账户的HASH解密得到CS_SK
然后解密上半部分
成功解密之后再对比内容信息
发现内容一致之后,客户端通过认证完成,成功访问服务端的服务

存在的漏洞

1、客户端发送给AS的认证信息部分:域内用户名枚举、密码喷洒

2、客户端发送给TGS的TGT部分可以伪造:黄金票据

3、客户端发送给服务端的ST部分可以伪造:白银票据

4、委派攻击

后记

Kerberos协议听的是万里讲解的,真的不错,生动形象。我这文章属于笔记,看不懂的推荐去B站搜万里讲网络安全,然后看黄金票据的那个视频,讲的真的很不错。
太晚了黄金票据、白银票据和委派攻击明天再写

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号