
NTLM 协议对于攻防两端的价值在于,其广泛的使用场景使得在与 Windows 认证交互的过程中能获取到大量的系统信息,如操作系统、主机名、版本号等。此协议不仅在 Windows 环境中应用广泛,而且其长期的存在和维护,体现了其强大的生命力。通过 NTLM 协议,可以远程获取关于当前机器的系统信息,这为信息收集工作提供了便利。我们将通过抓包的方式对 NTLM 协议进行介绍,并结合实战演示,展示如何利用 FOFA 中已集成的 NTML 解析进行具体的分析与应用。
NTLM 协议的全称为 NT LAN Manager,是 Microsoft 环境中使用的一种身份验证协议。从 Windows 2000 开始,NTLM 协议得到了支持,至今已有超过 20 年的历史。作为全球应用最广泛的操作系统之一,NTLM 协议在所有 Windows 系统上的维护,见证了其强大的生命力。该协议包含在 Windows Msv1_0.dll 中,其主要作用是通过质询/应答(Challenge/Response)过程进行用户身份验证。这一过程包括三个关键步骤:客户端发送协商消息,服务器响应质询消息,以及客户端发送身份验证消息。通过分析这一步骤,可以提取到主机名、操作系统版本等信息。
在信息提取过程中,首先需要理解 NTLM 协议的通信过程。通过 FOFA 进行初步筛选,查找与 microsoft 或 NTLM 相关的资产,利用 banner="ntlm" 或 banner="microsoft" 的搜索语法,可以找到大量相关的资产。进一步分析端口排名,可以发现端口 5985 与 Microsoft 某个产品的默认端口相关,推测其为 WinRM 的默认端口。WinRM 是 Windows 远程管理的一个组件,用于管理和控制服务器硬件。通过 WinRM 的交互流程,可以发送特定的协商消息,并解析服务器返回的挑战消息,从而提取出目标主机名、产品版本、操作系统等信息。这些信息的提取,为后续的资产收集与分析提供了基础。
NTLM 协议的使用不仅限于 WinRM,还可以应用于 imap、http、mssql 等协议,展示了其在不同场景下的应用潜力。通过 FOFA 中集成的 NTLM 解析功能,可以直接搜索公开 NTLM 协议的机器,获取操作系统、版本号、主机名等信息。此外,NTLM 协议的关联分析,可以进一步扩展资产发现的范围,增加信息收集的深度。基于此协议,可以开发出更多创新的应用场景,激发技术的创意与实践。
NTLM 协议的深入挖掘与应用,不仅为攻防两端提供了丰富资源,还促进了社区技术交流与合作。通过 FOFA 平台,可以分享和交流基于 NTLM 协议的分析与实践,增加社区积分,并有机会获得社区准备的奖励。加入社区,与白帽师傅们一起探索技术的边界,共享知识与经验,共同成长。