通过HTTP绕过NTLM认证

通过HTTP绕过NTLM认证

💡 原文英文,约1100词,阅读约需4分钟。
📝

内容提要

本文探讨了通过HTTP协议绕过NTLM认证的方法,详细描述了其在HTTP中的工作流程,包括客户端与服务器之间的挑战响应过程。作者实现了一个支持匿名认证的代理,允许用户以ANONYMOUS LOGON身份访问某些应用程序。研究发现,多个软件存在此安全漏洞,可能导致未授权访问。

🎯

关键要点

  • NTLM认证通常通过三个步骤进行:客户端发送协商消息,服务器提供挑战,客户端发送挑战响应。
  • NTLM在HTTP协议中使用时,客户端通过Authorization头发送NTLM前缀的消息进行协商。
  • 服务器回复401 Unauthorized,并在WWW-Authenticate头中提供Type 2消息,包含有关远程服务器的信息。
  • 通过实现支持匿名认证的代理,用户可以以ANONYMOUS LOGON身份访问某些应用程序。
  • 多个软件存在此安全漏洞,包括Windows Admin Center,可能导致未授权访问。
  • 此漏洞可能与CVE-2021-27066相关,已在某些版本中修复。

延伸问答

NTLM认证的工作流程是怎样的?

NTLM认证通常通过三个步骤进行:客户端发送协商消息,服务器提供挑战,客户端发送挑战响应。

如何通过HTTP协议绕过NTLM认证?

可以通过实现支持匿名认证的代理,允许用户以ANONYMOUS LOGON身份访问某些应用程序,从而绕过NTLM认证。

哪些软件存在NTLM认证的安全漏洞?

多个软件存在此安全漏洞,包括Windows Admin Center,可能导致未授权访问。

NTLM认证在HTTP中是如何工作的?

在HTTP中,客户端通过Authorization头发送NTLM前缀的消息进行协商,服务器回复401 Unauthorized并提供Type 2消息。

CVE-2021-27066与NTLM认证有什么关系?

此漏洞可能与CVE-2021-27066相关,已在某些版本中修复,影响了NTLM认证的安全性。

如何实现支持匿名认证的代理?

可以使用Golang框架修改现有的NTLM库,创建一个代理来处理HTTP中的匿名认证工作流。

➡️

继续阅读