free5gc/chf · Security
Out-of-Bounds Slice Access in free5GC CHF Leading to DoS
- GHSA ID
- GHSA-6g43-577r-wf4x
- CVE ID
- CVE-2026-32937
- Severity
- high
- Published
- Updated
- CVSS v4
- 7.1 · CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Description
Impact
This is an out-of-bounds slice access vulnerability in the CHF nchf-convergedcharging service.
A valid authenticated request to PUT /nchf-convergedcharging/v3/recharging/:ueId?ratingGroup=... can trigger a server-side panic in github.com/free5gc/chf/internal/sbi.(*Server).RechargePut(...) due to an out-of-range slice access. In the reported runtime, Gin recovery converts the panic into HTTP 500, but the recharge path remains remotely panic-triggerable and can be abused repeatedly to degrade recharge functionality and flood logs. In deployments without equivalent recovery handling, this panic may cause more severe service disruption.
Patches
https://github.com/free5gc/chf/pull/61
Workarounds
- Restrict access to the
nchf-convergedchargingrecharge endpoint to strictly trusted NF callers only. - Apply rate limiting or network ACLs in front of the CHF SBI interface to reduce repeated panic-trigger attempts.
- If the recharge API is not required, temporarily disable or block external reachability to this route.
- Ensure panic recovery, monitoring, and alerting are enabled.
CWEs
- CWE-129 · Improper Validation of Array Index
References
- https://github.com/free5gc/free5gc/security/advisories/GHSA-6g43-577r-wf4x ↗
- https://github.com/free5gc/free5gc/issues/864 ↗
- https://github.com/free5gc/chf/pull/61 ↗
- https://github.com/free5gc/chf/commit/55af766f321a00afa978e806548c96f8a7d2433e ↗
- https://nvd.nist.gov/vuln/detail/CVE-2026-32937 ↗
- https://github.com/advisories/GHSA-6g43-577r-wf4x ↗