CVE-2026-33191Free5GC是Linux基金会的开源5G核心网项目。在1.4.2版本之前,UDM组件的Nudm_SubscriberDataManagement API存在空字节注入漏洞。攻击者可向`supi`路径参数注入URL编码的空字节(%00),触发Go语言net/url包的解析错误(“invalid control character in URL”),导致服务器返回500错误。由于系统未能正确验证输入,该漏洞可被利用发起拒绝服务攻击,影响服务可用性。官方已在1.4.2版本中修复此问题。
该漏洞位于Free5GC的统一数据管理(UDM)模块中,具体涉及Nudm_SubscriberDataManagement API接口的实现。漏洞的根本原因在于应用程序未对传入的`supi`路径参数进行严格的输入清洗与验证。当远程攻击者构造恶意的HTTP请求,在`supi`参数中插入URL编码的空字节(%00)时,UDM组件会直接使用该受污染的参数去构建访问统一数据存储库(UDR)的内部请求URL。Go语言的标准库`net/url`在解析URL时严格遵循RFC 3986规范,拒绝包含控制字符(如空字节)的URL,从而抛出“invalid control character in URL”的异常。由于缺乏异常捕获和输入规范化机制,该底层错误直接导致服务端返回500 Internal Server Error,而非预期的400 Bad Request。未认证的攻击者可利用此缺陷,无需用户交互即可通过网络发送大量特制请求,导致服务进程崩溃或资源耗尽,实现拒绝服务攻击。