CVE-2026-44325 json
free5GC: NRF POST /oauth2/token structured-form parser type-confusion panic family (Reflect.Set on incompatible types)
published 2026-05-08 6 mo ago modified 2026-10-14 25 d ago also EUVD-2026-32573 , GHSA-f8qv-7x5w-qr48 , GO-2026-5349
- cvss
- 7.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 33%
- public exploits
- 0
- none known
Summary
free5GC is an open-source implementation of the 5G core network. Prior to 4.2.2, free5GC's NRF root SBI endpoint POST /oauth2/token contains a parser-level type-confusion bug family. The handler in NFs/nrf/internal/sbi/api_accesstoken.go reflects over models.NrfAccessTokenAccessTokenReq, special-cases only plain string and NrfNfManagementNfType fields, and treats every other field as if it were a single models.PlmnId. The parsed *models.PlmnId is then assigned with reflect.Value.Set() to whichever field name the attacker put in the form body, which panics whenever the destination field's real type is incompatible (slice, different struct, primitive). Gin recovery converts each panic into HTTP 500, but the endpoint remains remotely panicable from a single unauthenticated form-encoded request and is repeatedly triggerable. This vulnerability is fixed in 4.2.2.
Patch / fix
- go github.com/free5gc/nrf 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/nrf@f7bc77d commit
- github.com/free5gc/nrf#83 pull request
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 5 mo ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 33% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/free5gc/free5gc/security/advisories/GHSA-f8qv-7x5w-qr48 referenced PoC, tagged "exploit" by a source, unverified
- github.com https://github.com/free5gc/free5gc/issues/918 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/free5gc/nrf | <1.4.3 |
1.4.3 |
Affected products
- free5gc free5gc
Classification
References
-
github.com
/free5gc/nrf/pull/83
web, issue-tracking, patch
-
github.com
/free5gc/nrf/commit/f7bc77daa7425506af7569f2e61c2a210f5a0423
web, patch
-
github.com
/free5gc/free5gc/security/advisories/GHSA-f8qv-7x5w-qr48
exploit, web, vendor-advisory, advisory
-
github.com
/free5gc/free5gc/issues/918
web, exploit, issue-tracking
-
nvd.nist.gov
/vuln/detail/CVE-2026-44325
advisory
-
github.com
/free5gc/free5gc
package
Sources
- CVE List CVE-2026-44325
- GitHub Advisory GHSA-f8qv-7x5w-qr48
- NVD CVE-2026-44325
- OSV GO-2026-5349
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.