CVE-2026-44317 json
free5GC: PCF npcf-policyauthorization POST /app-sessions panics on suppFeat=1 with missing AfRoutReq via nil pointer dereference
published 2026-05-08 6 mo ago modified 2026-10-14 25 d ago also EUVD-2026-32551 , GHSA-wwqh-7jm5-gj7w , GO-2026-5731
- cvss
- 6.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 28%
- public exploits
- 0
- none known
Summary
free5GC is an open-source implementation of the 5G core network. Prior to 4.2.2, free5GC's PCF POST /npcf-policyauthorization/v1/app-sessions handler panics on a single authenticated request whose ascReqData.suppFeat == "1" (enabling traffic-routing feature negotiation) and whose medComponents entries supply an afAppId but NO AfRoutReq. The create path then calls provisioningOfTrafficRoutingInfo(smPolicy, appID, routeReq, ...) with routeReq == nil and dereferences routeReq.RouteToLocs (and other fields) without a nil check, causing runtime error: invalid memory address or nil pointer dereference. Gin recovery converts the panic into HTTP 500. This vulnerability is fixed in 4.2.2.
Patch / fix
- go github.com/free5gc/pcf 1.4.3
- free5gc free5gc 4.2.2
- free5gc smf 4.2.2
- free5gc upf 4.2.2
- govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1
opensuse advisories openSUSE-SU-2026:21483-1
- github.com/free5gc/pcf@508d70b commit
- github.com/free5gc/pcf#65 pull request
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 5 mo ago
Exploit prediction
0.35% chance of exploitation in the next 30 days, higher than 28% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/free5gc/free5gc/security/advisories/GHSA-wwqh-7jm5-gj7w referenced PoC, tagged "exploit" by a source, unverified
- github.com https://github.com/free5gc/free5gc/issues/879 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/free5gc/pcf | <1.4.3 |
1.4.3 |
Affected products
- free5gc free5gc
Classification
References
-
github.com
/free5gc/pcf/pull/65
web, issue-tracking, patch
-
github.com
/free5gc/pcf/commit/508d70b8527a6c8c923179dad450ea01e16b6aeb
web, patch
-
github.com
/free5gc/free5gc/security/advisories/GHSA-wwqh-7jm5-gj7w
exploit, web, vendor-advisory, advisory
-
github.com
/free5gc/free5gc/issues/879
web, exploit, issue-tracking
-
nvd.nist.gov
/vuln/detail/CVE-2026-44317
advisory
-
github.com
/free5gc/free5gc
package
Sources
- CVE List CVE-2026-44317
- GitHub Advisory GHSA-wwqh-7jm5-gj7w
- NVD CVE-2026-44317
- OSV GO-2026-5731
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.