在企业内网中,身份认证机制往往看似简单,却隐藏着许多深层次的安全隐患。尽管NTLM协议已被微软逐步替代为Kerberos,但由于兼容性问题,它仍在许多企业中广泛使用。关闭NTLMv1并不意味着风险消失,因为NTLMv2本身也并非完全安全。更为棘手的是,NTLM在不同系统、设备和服务间建立了隐性的信任链,这些信任关系在配置不当时极易成为攻击者的突破口。
NTLM的问题不在于“谁还支持它”,而在于几乎所有的关键基础设施都在“默认情况下都会信任它”。
尽管 NTLM 已被视为过时、安全性较弱,并且逐步在现代 Windows 平台中被淘汰(例如 NTLMv1 已去除,Kerberos 是域环境默认),但现实中它仍在多种场景中被默认存在或被动使用:
遗留系统或设备
未加入域的工作组架构
某些默认或未特别配置的服务/设备
Kerberos 不可用时的回退机制
除此之外,凡是基于Windows身份模型,或历史上依赖SMB/RPC/LPAP的设备与服务,几乎都默认信任NTLM,除非是显式禁用。因此,在实际企业或混合环境中,完全摆脱 NTLM 仍然需要主动配置和兼容性评估,仅靠现代操作系统的默认行为并不能完全避免 NTLM 的使用。
SMB2默认启用NTLM认证机制
在企业内网中,NTLM协议不仅是身份验证的基础,还涉及到设备和系统之间的信任机制。这些设备和系统往往通过NTLM协议建立了复杂的信任关系,这些关系一旦被攻击者发现并利用,便可能扩展攻击范围,形成信任链滥用,进一步放大网络安全风险。对于很多企业来说,NTLM协议的默认信任关系及其配置不当,常常是攻击者的突破口。
横向渗透:在一个典型的企业环境中,员工通常会在多个设备和服务上访问数据或应用程序。当NTLM协议启用时,这些设备间的身份验证往往通过NTLM凭证来实现。如果一个攻击者能够在某个环节捕获NTLM凭证或通过重放攻击等手段成功认证,他便可以利用这些凭证横向渗透到企业内网中的其他设备和系统,访问更多的资源。这一过程往往是无声无息的,攻击者通过对认证流量的监控、获取和伪造NTLM凭证,逐步扩大攻击范围。
设备间的信任:例如,某台工作站在进行打印任务时,使用NTLM协议验证身份,若攻击者已成功劫持这台工作站的NTLM凭证,那么攻击者不仅能够访问该工作站的文件资源,还能利用相同的凭证在打印机、扫描仪等设备上进行身份认证,从而突破企业内部的物理隔离。这些设备之间的信任关系,本质上是隐性且没有防护的,极易被滥用。
跨域信任:许多企业内部存在多个域控制器,各个域之间可能会建立跨域信任关系,以便员工能够跨越不同的业务单元或部门访问资源。NTLM作为一种协议,可以在这些域之间实现身份验证。因此,如果一个攻击者能够通过窃取域管理员凭证或者滥用NTLM的身份验证流程,他就能够跨越多个域,获取更多资源和权限。这种跨域信任的放大效应,使得企业的内网安全更加脆弱。
信任链的传播:当NTLM凭证被盗取时,攻击者不仅能够访问单一的资源或设备,还能够利用NTLM协议在多个域之间传播凭证。例如,一个小规模的攻击开始于某个分支的打印机,而凭证一旦被窃取并在另一个域中有效,攻击者便可以利用NTLM的信任链进行横向渗透,最终突破防线,获得管理员权限。
Web服务和文件共享:许多企业内部的Web服务和文件共享系统,往往是基于NTLM协议进行身份验证的。对于这些系统来说,NTLM凭证的滥用也会导致信任关系的放大。例如,某企业内部的Web应用,可能通过NTLM协议验证用户身份,并提供访问控制。然而,若攻击者能够窃取某一用户的NTLM凭证,则可以绕过Web应用的身份验证系统,利用该凭证访问企业网络中的其他系统和资源。
权限继承与资源访问:在许多内部应用中,基于NTLM的认证会继承某些用户的权限,且多个服务或应用会共享同一凭证。一旦攻击者通过劫持NTLM凭证突破了某个应用的防线,他便可以利用相同的凭证访问企业网络中的其他资源。例如,通过访问一个被NTLM验证的文件共享系统,攻击者可以获取存储在该系统中的敏感文件,这些文件可能含有企业内部更重要的凭证或信息,进一步放大攻击范围。
未加固的设备和服务:许多企业没有对NTLM认证进行严格的审计和加固,尤其是对一些边缘设备、老旧的硬件和第三方应用系统的管理。设备如网络打印机、扫描仪、远程桌面服务等,它们默认使用NTLM协议并信任企业网络中的其他设备。如果这些设备的配置不当(例如,管理员密码未加密存储或无权限控制),攻击者可以利用这些设备对内网进行深入攻击。
远程桌面与VPN:许多企业允许员工通过远程桌面协议(RDP)或VPN服务访问内网资源,而这些远程访问通道往往默认依赖NTLM进行身份验证。攻击者如果获取了一个员工的NTLM凭证,便可以通过RDP或VPN直接登录到内网并滥用该凭证,在多个内网系统间进行渗透。
信任关系的循环:企业内网的多个服务和设备之间往往存在循环的信任关系,这些关系一旦被滥用,将导致攻击链的迅速扩大。比如,NTLM凭证被窃取后,攻击者可以从一台工作站进入到一台共享文件服务器,再通过该文件服务器访问数据库,最终通过数据库管理员账户登录到域控制器。这种信任链的循环,放大了攻击的路径,给攻击者提供了丰富的攻击面。
从红队的角度来看,隐式信任链的利用不仅需要掌握NTLM的认证机制,还需要深入理解在企业网络中,这些隐性信任如何交织在一起,给攻击者带来机会。以下是几个典型的攻击场景,展示了如何利用NTLM协议的隐式信任链进行攻击。
企业内部的许多设备、系统和应用程序依赖于NTLM协议进行认证和授权。在没有显式配置的情况下,NTLM会在多个设备和服务之间建立自动的信任关系,这些关系一旦被滥用,就可能扩展成攻击路径。
打印机与文件服务器之间的隐性信任链:
在许多企业中,员工的工作站可能会通过NTLM协议访问打印机、扫描仪、共享文件夹等设备。这些设备和工作站之间的信任关系并不总是显式配置的,攻击者一旦通过工作站获取NTLM凭证,就可以利用该凭证横向渗透,访问文件服务器或打印机,进一步扩大攻击范围。
攻击路径示例:攻击者获取员工工作站的NTLM凭证后,访问该员工所在部门的文件共享系统。由于该文件共享系统信任工作站凭证,攻击者可以通过NTLM凭证直接进入共享资源,获取敏感文件,甚至控制网络存储设备。
企业内的多个内部服务和应用程序往往会使用NTLM进行用户认证,这些服务和应用之间的信任关系往往不被安全管理员所关注,导致它们容易成为攻击者的目标。
Web应用与文件存储之间的隐性信任:
在企业中,很多Web应用会依赖NTLM协议验证用户身份,尤其是那些与Windows环境集成的应用程序。这些应用程序在用户认证后,会将凭证传递给后台的文件服务器、数据库等资源,形成自动的信任链。如果其中任何一环的凭证被攻击者获取,就能突破整个应用系统的安全防线。
攻击路径示例:假设攻击者通过某个员工的NTLM凭证,成功登录到一个内部的Web应用。由于该Web应用依赖NTLM进行用户验证,攻击者可以利用窃取的凭证访问与该应用集成的文件服务器,进而获取敏感数据或进行其他恶意操作。
企业中的IoT设备、网络打印机、摄像头系统、门禁控制等设备,通常会依赖NTLM协议与企业的其他系统进行身份验证。这些设备的默认配置通常存在安全隐患,而且它们和其他内部系统之间的信任关系不容易被发现和审计。
IoT设备的凭证滥用:
很多企业内部的IoT设备(如网络摄像头、智能门禁系统、会议设备)都默认使用NTLM协议进行身份验证。这些设备通常被视为“边缘设备”,因此在内部网络的管理和安全控制上容易被忽视。攻击者一旦通过某台工作站窃取到NTLM凭证,就可以通过这些凭证进入管理这些设备的系统,甚至通过设备管理系统进一步入侵企业网络的其他关键资源。
攻击路径示例:攻击者利用某台员工工作站的NTLM凭证,进入门禁控制系统。通过该控制系统,攻击者可以获得对企业办公室的物理访问权限,并进一步在公司内部实施进一步的攻击。
企业内的共享文件夹、网络存储设备(NAS)、数据库管理系统等,通常会通过NTLM进行身份认证。很多时候,这些共享资源的权限控制并不严格,导致一旦NTLM凭证被窃取,攻击者便能在多个资源之间自由横向渗透。
资源共享中的凭证滥用:
许多企业的内部文件服务器和网络存储设备,常常会使用NTLM来验证用户身份。在企业内网中,存在多个不同角色的人员,且他们之间的权限配置复杂。攻击者通过捕获一个较低权限用户的NTLM凭证后,能够跨多个文件夹和存储系统进行横向渗透。
攻击路径示例:攻击者首先通过窃取某个低级员工的NTLM凭证,进入共享文件服务器。通过横向渗透,攻击者进一步访问高权限用户的文件夹,最终获取包含关键敏感信息的文件,甚至通过滥用这些信息提升权限,进一步渗透企业网络。
在许多企业中,NTLM协议仍然被广泛使用,尤其是在与旧版操作系统、设备和服务进行集成时。防守方往往将NTLM协议的使用视为“向后兼容”的必要手段,而忽视其本身存在的安全风险,认为它仅仅是一个“兼容性问题”,而非安全漏洞。防守方通常在面对NTLM认证时,会认为它只是在老旧设备或老旧系统中存在的问题,或认为关闭NTLM协议对于向后兼容性影响较大,因此采取放宽策略,甚至不进行有效的审计和控制。
许多企业的网络设备、应用程序和基础设施服务会依赖NTLM协议进行认证,但这些设备和服务之间的信任关系往往是隐性且自动的。防守方在网络安全管理中,通常聚焦于传统的防火墙、IDS/IPS、端点防护等防御层,忽视了这些设备和服务之间的隐性信任链。防守方可能会认为打印机、扫描仪、文件共享系统等设备不属于“关键资产”,而忽视了它们和内网中其他系统的信任关系。这些设备通常通过NTLM进行认证,却未被视为潜在的攻击路径。
NTLM协议认证过程中的异常活动往往被防守方误判为“基础设施问题”或“网络配置问题”,而非安全问题。例如,NTLM凭证泄露、异常的认证失败和凭证重放等异常行为,可能被简单归因于网络故障或设备配置错误,而未能及时识别为潜在的攻击活动。当出现NTLM认证失败、凭证被频繁重放等异常现象时,防守方可能认为是网络延迟、设备故障或配置不当引起的,而没有意识到这些可能是攻击者正在尝试滥用认证流程的信号。
并非所有的NTLM认证过程一经触发,都会在windows安全日志中留痕,例如留下4776安全事件。可能的原因很多,基于本地缓存进行验证、单纯通过SMB协议或本地计算机验证都有可能使认证过程触发隐藏起来,不被观测。甚至有的异常情况,可能因为系统进入”是否需要NTLM认证“的判断与协商阶段,但并没有进入”凭据验证“阶段,而触发回退机制,不再留下记录。
使用计算访问远程资源,并没有留下4776事件
关于”隐式信任链“的问题,很少有人写,也很少有人看。一是因为比起零日漏洞、威胁情报,基于信任放大效应的隐式信任利用条件过于苛刻,往往需要红队在高价值目标的复杂内网环境中已经有立足点,开始考虑无感化内网横向和长期存活问题时才会考虑;二是因为,对于防守方而言,“你这套内网架构没有漏洞,但因为默认信任关系的叠加,红队可以长期潜伏。”,这句话恐怕很少有人说得出口;三是因为,对于绝大部分安全研究者而言,隐式信任的研究跨越层次过多,需要的网络协议底层知识过多,抛开理性知识的部分,它甚至需要依靠丰富的想象力和创造力去构造一条可能存在的链路。这篇文章不教一键利用、不给脚本、不给payload,只讲为什么成立,只讲“攻击者会怎么理解这张网”,感谢每一个可以看完的读者。当内网被默认视为安全边界,当身份被等同于权限,当信任缺乏约束与边界,攻击便不再需要突破——它只需要接受。