Description
free5GC is an open-source implementation of the 5G core network. Prior to 4.2.2, free5GC's NEF PATCH /3gpp-pfd-management/v1/{afId}/transactions/{transId}/applications/{appId} handler panics with a nil-pointer dereference when the upstream UDR call fails AND the consumer wrapper returns err != nil together with a nil *ProblemDetails. The handler's errPfdData != nil branch builds its own problemDetailsErr correctly, but immediately after it reads problemDetails.Cause (the OTHER value, which is nil in this branch) and panics. Gin recovery converts the panic into HTTP 500, so a single PATCH against this endpoint returns 500 instead of the intended controlled error response whenever UDR access is failing. This vulnerability is fixed in 4.2.2.
Affected products
free5gc: free5gc
References5
- github.com/free5gc/free5gc/security/advisories/GHSA-j59f-x285-6… ExploitVendor Advisory
- github.com/free5gc/free5gc/security/advisories/GHSA-j59f-x285-6… ExploitVendor Advisory
- github.com/free5gc/nef/commit/72a47f3fab4dffbd227f8d92c5f69dca9… Patch
- github.com/free5gc/nef/pull/22 Issue TrackingPatch
- github.com/free5gc/free5gc/issues/925 ExploitIssue Tracking
Metrics
- CVSS 3.1
-
7.5
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - EPSS — exploit probability
- 0% percentile: 34 · as of 14 November 2026
- CWE
- CWE-476CWE-754
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.