Windows 客户端损坏授权标头(Kerberos)=> IIS 400(错误请求)

Windows 客户端损坏授权标头(Kerberos)=> IIS 400(错误请求)

我们在约 5% 的 Windows(7 Pro 和 XP Pro,32 位和 64 位)客户端计算机上遇到了奇怪的行为。这些计算机从 IIS 服务器随机收到错误 - 400 错误请求。我们正在使用 Windows 域,这些客户端正在尝试通过 Kerberos 授权给 IIS。

症状:

  • 客户端尝试通过 Internet Explorer 连接到 IIS 服务器,以访问需要身份验证 (Kerberos) 的站点。
  • IIS 服务器返回错误 400 错误请求。
  • 直到客户端计算机“顺利重启”后,错误才会消失。我们找不到其他方法来“修复”此状态。顺利重启意味着您可以多次重启。有时它可以工作,有时则不行。如果它可以工作,它将安全地工作到下一次重启。如果它不工作,它将安全地停止工作,直到下一次重启。:)

我们知道什么

  • 我们正在使用更多组。因此我们的用户通常拥有更大的 Kerberos TGT。MaxTokenSize 已提高到 48000。

  • 我们嗅探受影响客户端的网络流量,发现客户端发送损坏的授权标头。带有 kerberos 授权标头的部分被截断 - 未正确结束。因此来自 IIS 服务器的响应是正确的且合乎逻辑的。因此问题出在客户端

  • 我们尝试在受影响的计算机上找出工作状态和错误状态之间的区别,但没有成功。

  • 我们的网络中有多个 IIS 服务器。受影响的计算机在所有服务器上都出现相同的问题,并且处于“错误状态”。

  • 希望我们的想法是正确的,Internet Explorer 使用 .NET Framework 进行 HTTP 请求和授权。那么原因可能出在 .NET 的某个地方?所有客户端都使用版本 4。

有人能帮助我们澄清这个谜团吗?:)

答案1

已解决。EsetNOD32 防病毒软件 版本 4正在修改某些计算机上的 HTML 授权标头。之后禁用 Web 访问保护一切都很顺利。 在此处输入图片描述

相关内容