GHSA-7cj5-v4pp-v632
### Summary The `graph_descr.<graphtype>` family of settings is echoed verbatim without `htmlspecialchars()` in `includes/html/pages/graphs.inc.php:194`. Any admin can store a malicious HTML payload that executes in every authenticated user's browser viewing that graph type. ### CVSS `CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N` — **4.8 Medium** ### Details ```php // graphs.inc.php:194 echo LibrenmsConfig::get('graph_descr.' . $vars['type']); ``` ### PoC ``` PUT /settings/graph_descr.device_processor {"value": "<img src=x onerror=\"alert('ADV-15')\">"} GET /graphs?type=device_processor → <img src=x onerror="alert('ADV-15')"> ``` ### Fix ```php echo htmlspecialchars(LibrenmsConfig::get('graph_descr.' . $vars['type']), ENT_QUOTES, 'UTF-8'); ``` ### Prerequisite Admin session to set the config value.
Properties
- ghsa_id
- GHSA-7cj5-v4pp-v632
- severity
- medium
- summary
- LibreNMS: Stored XSS via graph_descr admin config settings echoed without escaping to all authenticated users
- cvss_score
- 4.8
- cve_id
- GHSA-7cj5-v4pp-v632
- cvss_vector
- CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
- is_ghsa_only
- true
- ghsa_published
- 2026-08-18T21:17:20Z
- source_url
- https://github.com/advisories/GHSA-7cj5-v4pp-v632
- ghsa_updated
- 2026-08-18T21:17:23Z
Related Entities (4)
VULNERABLE_TO (1)
AFFECTS (1)
HAS_WEAKNESS (1)
REPORTED_BY (1)
Explore deeper with Ninja Signal's threat intelligence graph