windows – 我的事件日志中的0x19 KDC_ERR_PREAUTH_REQUIRED

所以我有一台服务器,每次用户或服务帐户登录到计算机时,系统日志中都会生成错误事件:
A Kerberos Error Message was received:
 on logon session DOMAIN\serviceaccount
 Client Time: 
 Server Time: 12:44:21.0000 10/9/2012 Z
 Error Code: 0x19 KDC_ERR_PREAUTH_REQUIRED
 Extended Error: 
 Client Realm: 
 Client Name: 
 Server Realm: DOMAIN
 Server Name: krbtgt/DOMAIN
 Target Name: krbtgt/DOMAIN@DOMAIN
 Error Text: 
 File: e
 Line: 9fe
 Error Data is in record data.

所以当然我用Google搜索了这一点,而我得到的唯一信息是“它不一定表明存在问题,你通常可以忽略它.”

好吧,哎呀,这很好,但是这些错误每分钟都会给我的系统日志发送一次垃圾邮件,我真的很想让它们停下来.有任何想法吗?

来自Microsoft AskDS博客:

KDC_ERR_PREAUTH_REQUIRED

If you see this error in the trace,it does not indicate there is a
problem at all. The client requested a ticket but did not include the
pre-authentication data with it. You will typically see the same
request sent again with the data and the domain controller issuing the
ticket. Windows uses this technique to determine the supported
encryption types.

我帮不能阻止他们;我担心我是一个Linux人.我至少可以解释一下.理解此消息需要对Kerberos身份验证的工作方式略去一些.

基本的Kerberos身份验证过程是客户端从KDC请求加密的TGT,然后使用本地密钥对其进行解密.然而,天真地实现,这允许攻击者为您领域中的每个用户下载TGT,然后尝试通过攻击者闲暇时的暴力攻击来解密它们.因此,Kerberos添加了一种称为预身份验证的机制.

预身份验证的工作方式是KDC在收到TGT请求时发回预身份验证质询,而不是仅发送回TGT.预身份验证挑战可以采取各种形式,但最常见的要求客户端发送在客户端密钥中加密的当前时间.然后,KDC确认客户端可以在发送TGT之前执行该操作(这表明客户端密钥的某些知识).

但是,部分原因是因为客户端不知道将发送什么预身份验证质询而部分因为预身份验证被添加,所以客户端始终发送基本TGT请求,然后KDC始终通过预身份验证质询拒绝它.这些日志消息是Active Directory记录它在没有预身份验证的情况下获得TGT请求并发回挑战的事实.

你的猜测和我的一样好,为什么它很难记录这个,因为它是协议的正常部分而不是非常有趣,但所有基于Linux的KDC都做同样的事情.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...