# CVE-2026-39894

## Summary

- **CVE ID:** CVE-2026-39894
- **Severity:** LOW
- **CVSS Score:** 2.9 (CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N)
- **CWE:** CWE-474
- **Published:** Jun 24, 2026
- **Last Modified:** Jun 25, 2026

## Description

Cacti is an open source performance and fault management framework. In versions 1.2.30 and below, the locale-dependent decimal formatting in rrdtool_function_update() can corrupt RRDtool metric values. The rrdtool_function_update() function checks metric values with is_numeric() and concatenates them into the RRDtool update command via PHP string interpolation. PHP's string cast of floats is locale-sensitive: if LC_NUMERIC uses comma as decimal separator (e.g., de_DE), a value of 1.5 becomes "1,5". RRDtool expects . as decimal separator, causing metric data to shift into wrong columns or be silently dropped. No setlocale() reset is present in the update path. This causes a data integrity issue, but is not remotely exploitable; it requires server locale misconfiguration. The issue has been fixed in version 1.2.31.

## Affected Products

- Cacti — cacti (< 1.2.31)

## References

- [CNA](https://github.com/Cacti/cacti/security/advisories/GHSA-23g4-vf2j-94w4)
- [CNA](https://github.com/Cacti/cacti/issues/7011)
- [CNA](https://github.com/Cacti/cacti/commit/d2a698854956e9e4e53da9eab5b5719ae40e6893)

## Exploitation Prediction (EPSS)

- **EPSS Score:** 0.14%
- **EPSS Percentile:** 3.6

---
_Exported from OnDuty AI Vulnerability Intelligence on 2026-09-10._