关键信息 漏洞描述 问题: NEF 组件在缺失 PFD 数据的 Nnef_PfdManagement GET 请求中错误地返回 500 错误代码 (JSON 解析错误: 无效字符 'n')。当 PFD 数据未找到时,UDR 返回 404,但继续执行并在 ProblemDetails JSON 后面写入 'null',导致 JSON 无效,并使 NEF 由于 "无效字符 'n' 在顶级值后" 的解析错误而返回 500。 解决方案 修复: 在以下函数中添加返回语句,以处理错误响应后的返回: - GetApplicationDataIndividualPfdFromDBProcedure - PutApplicationDataIndividualPfdToDBProcedure - PolicyDataBdtDataGetProcedure - PolicyDataSubsToNotifySubsIdDeleteProcedure - PolicyDataSubsToNotifySubsIdPutProcedure - PolicyDataUesUeIdAmDataGetProcedure - PolicyDataUesUeIdOperatorSpecificDataGetProcedure - PolicyDataUesUeIdOperatorSpecificDataPatchProcedure (2 个位置) 安全影响 CWE 编号: CWE-209 (信息暴露) 和 CWE-388 (不可靠的安全相关行为) 影响: 内部解析错误(如无效字符 'n')泄漏给不受信任的客户端,可能帮助攻击者进行服务器软件和逻辑流程的指纹识别。此外,错误地返回 500 代码而不是 404 会导致系统状态表示错误,从而模糊安全相关错误边界,影响准确的故障排除。 修复细节 修复提交: 91bb34b 影响版本: free5GC v4.0.1 使用 Nnef_PfdManagement 服务的所有部署 修复版本: 用户应升级到包含此修复的下个 free5GC 发布版本 报告者 报告者: zfei10990-cmd 参与者 solar224 Alonza0314 roundspring2003 zfei10990-cmd