关键漏洞信息 问题标题 [Bug]: SGW-C crashes when UE pool is exhausted by repeated GTPv2 Create Session Requests #4220 Open5GS 版本 v2.7.6 复现步骤 1. 启动一个新的 Go 项目并初始化: 。 2. 创建 文件并粘贴代码。 3. 下载所需的库: 。 4. 使用提供的参数运行程序以触发漏洞。 描述 通过在短时间内发送多个 GTPv2 创建会话请求(CSR)消息,可以可靠地导致 Open5GS 的 SGW-C 崩溃(远程 DoS)。当内部 SGW-C UE/session 上下文池达到其限制时,分配返回 NULL,导致代码路径触发硬断言,使 open5gs-sgwcd 中止并转储核心。 配置 日志 预期行为 当 UE 池耗尽时,SGW-C 应该优雅地拒绝新的创建会话请求(例如,响应适当的 GTP-C 错误,如“No resources available”或“System failure”),然后继续运行而不会中止,以保持服务连续性。 观察到的行为 SGW-C 在达到 UE 池限制时触发 中的致命断言,这立即使 open5gs-sgwcd 中止,造成拒绝服务(DoS)。