我有一个关于从 TGS-REP 验证 KDC 的问题。
我有一个用 C++ 编写的遗留测试工具,用于验证用户的 AD 凭据。此测试工具调用 krb5 库方法来执行身份验证并在客户端(Linux 机器)上运行。我可以在数据包捕获中看到测试工具正在验证来自 AS-REP 的用户。
客户端上的测试工具 <-------> AD 服务器
---------- AS-REQ------>
<------------- AS-REP------</p>
(用户现在将被验证)
测试工具正在验证来自 AS-REP 的用户。
它不是发送/接收 TGS-REQ/TGS-REP。***我从 TGS-REP 了解到,我们也可以验证 KDC。*** 因此,我扩展了该工具以执行以下操作:
客户端上的测试工具 <-------> AD 服务器
-———----——— AS-REQ—————>
<----——— AS-REP —————
—————— TGS-REQ (with sname: host/test.machine.examaple.com@EXAMPLE.COM)—————>
<——— TGS-REP—————
....... 我的测试工具将通过将 KDC 的密钥与预配置的密钥表进行比较来验证 KDC。我为上述 SPN 创建了一个密钥表。
问:从一些在线阅读材料中,我了解到这可以通过将 KDC 的密钥与预配置的密钥表文件进行比较来完成。我确信我没有完全明白这一点。请帮助我理解这部分。为什么我们不能从 AS-REP 获得此验证?