Kerberos协议详情

Kerberos 是一种网络认证协议,其通过密钥系统为客户机 / 服务器 应用程序提供强大的认证服务。

kerberos协议中存在三个角色,分别是

1、客户端(client):发送请求的一方

2、服务端(server):接收请求的一方

3、密钥分发中心(key Distribution Center,简称:KDC)

        而KDC中一般分为两部分:

        3.1、AS(Authentication Server):认证服务器,专门用来认证客户端身份并发放客户用于访问TGS的TGT(票据授予票据)

        3.2、TGS(Ticket Granting Ticket):票据授予服务器,用来发放整个认证过程以及客户端访问服务端是所需的ST(服务授予票据)

认证过程(重点)

简单理解就是

1.从AS里获取TGT(票据授予票据)。

2.将TGT给TGS从而获取ST(票据授予票据)。

3.将ST给要访问的服务端,获取服务。

详细认证流程

第一步:客户端拿着身份信息去AS认证,通过后返回TGT

其中身份信息为

TGT内容:

krbtgt:是KDC中的账号。

CT_SK:是一段随机随机字符串,用于后面加密使用

图中的两个CT_SK内容一样。

第二步:用户用重新构造好好的TGT去TGS获取ST

用户将TGT中用户加密部分解密出CT_SK,再重新构造信息后,用CT_SK加密。再附上服务端名称(server name)发送给TGS。

重新构造的TGT:

Servername:就是你要获取的服务。

TGS收到TGT后,将krbtgt那部分进行解密,再用其中的CT_SK对CT_SK加密部分进行解密,然后对照其中信息是否一致,一致就返回给用户ST。

ST:

其中server hash加密是用要获取的服务端密码进行加密的。

第三步:将ST重构后发给服务端,获取服务

重新构造的ST:

服务端解密后,再对照信息,然后获取服务。

简单理解-kerberos之黄金票据

黄金票据

说白了就是伪造TGT,绕过AS的认证。

而其中伪造的难点是什么呢?

就是krtbtgt的hash加密是无法伪造的。

注意:CT_SK是可以伪造的。

黄金票据攻击

就是用伪造的TGT去获取ST,然后控制服务端的域内主机。

简单理解-kerberos之白银票据

白银票据

其实和黄金票据类似,就是直接伪造ST。

白银票据和黄金票据的差别

在这里说一下白银票据和黄金票据的差别

黄金票据:伪造TGT(伪造TGT之后就可以买去访问任意服务的票据)

白银票据:伪造ST(伪造ST后只能访问去某个服务的票据)

参考资料

kerberos协议攻防:黄金白银票据和委派攻击_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值