【问题标题】:Getting domain information from NTLM message从 NTLM 消息中获取域信息
【发布时间】:2021-10-06 15:10:43
【问题描述】:

我正在使用 NTLM 和 Chrome/Windows/Active Directory/Node.js 登录网页。它有效,但我对 NTLM 消息中的响应数据有疑问,RFC or the only "rfc" type thing I can find 似乎未涵盖该数据。

使用express-ntlm 这个包正确地提取了用户名、工作站和域,但我也看到了一些额外的信息,可以让我获得完整的域名,例如foo.bar.com,这对我非常有用。

此响应消息属于类型 3,它包含如上所述,但它似乎包含一些似乎没有解析规则的额外信息,例如如何查找字节偏移或数据长度。我想知道它是否真的不是 RFC 的一部分,只是一些我不能依赖的随机数据。

这是在服务器端收到 NTLM 消息以完成授权时的样子。我正在用一些假域名替换实际数据。每个字母之间都有一个空格也很奇怪。

NTLMSSP ╚ � �╔�╔� X z <╗ ║��� �D���╔═ ╝ ╗ 0 0 0 ╗\���85=�E+z]�Rw���O�1�T6。领域 . com ╚ F O O .酒吧 。领域 . c o m ║ 0 b a r 。领域 。 c o m �
�+�I8�+fy��q�. H T T P / 1 0 。 1 1 1 。 2 2 。 3 3 3 : 3 0 0 0

基本上你有 NTLMSSP 并且在所有奇怪的字符中你有域名、工作站和用户名。然后似乎有关于完整域名和请求来自哪里的补充数据。但是我再一次看不到这在任何地方都有。它可靠吗?有办法提取吗?

【问题讨论】:

    标签: active-directory ldap ntlm


    【解决方案1】:

    • 服务器端收到的 NTLM SSP 握手消息是二进制编码的 UTF-8 消息的空终止 ASCII 字符串,因此它在 Windows 系统上不可见和显示符号。要解码并从此 NTLM SSP 消息中提取信息,您可以为此目的使用 github 脚本“NTLMRaw unhide”。

    • 您在服务器端收到的 NTLM SSP 消息是从客户端发送到服务器的类型 2 质询。要从 NTLM SSP 消息中提取可信信息,您必须通过“netsh.exe”和“pktmon.exe”工具捕获信息和网络流量,并将其导出而不进行转换。这些导出的流量监控文件在 Windows 系统上被捕获为“.etl”文件。

    • 您必须在“NTLMRawUnhide.py”python3 脚本中解析这些网络数据包捕获文件,并以可读格式提取 NTLMv2 哈希。下面是 github 存储库到 NTLMRawUnhide.py 脚本的链接:-

    https://github.com/mlgualtieri/NTLMRawUnHide

    https://www.mike-gualtieri.com/posts/live-off-the-land-and-crack-the-ntlmssp-protocol

    另外,下面是数据包捕获的示例输出图像:-

    【讨论】:

    • 您好@tester778899,如果答案有帮助,请您接受它作为答案,以便遇到相同问题的其他人可以找到此解决方案并解决他们的问题
    猜你喜欢
    • 2014-11-15
    • 1970-01-01
    • 2020-10-17
    • 2021-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-06
    • 1970-01-01
    相关资源
    最近更新 更多