Low

LibreNMS vulnerable to Stored Cross-site Scripting via File Upload

  • Disclosed: 01.10.2024
  • Updated: 11.10.2026 10:22

Summary

Stored Cross-Site Scripting (XSS) can archive via Uploading a new Background for a Custom Map.

Details

Users with "admin" role can set background for a custom map, this allow the upload of SVG file that can contain XSS payload which will trigger onload. This led to Stored Cross-Site Scripting (XSS).

PoC

  1. Login using an Admin role account.

  2. Go over to "$URL/maps/custom", the Manage Custom Maps. image

  3. Create a new map then choose to edit it.

  4. Choose the "Set Background" option. image

  5. Choose to upload a SVG file that have this content.

svg
<svg xmlns="http://www.w3.org/2000/svg" onload="alert(document.domain)">
  <circle cx="50" cy="50" r="40" />
</svg>
  1. Once uploaded, there should be a link to the SVG return in the POST request to the API "$URL/maps/custom/1/background". image

  2. Go over to that link on browser, should see a pop-up. image

Impact

Attacker can use this to perform malicious java script code for malicious intent. This would impact other Admin role users and the Global Read role users. Normal users does not have permission to read the file, so they are not affected.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Composer package librenms/librenms < 24.9.0 24.9.0

References

CVSS score 4.8/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
Weakness (CWE)
CWE-116, CWE-434, CWE-79
Platform
Composer
Package
librenms/librenms
Disclosed
01.10.2024
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-x8gm-j36p-fppf - CC BY 4.0

Vulnerability history: librenms/librenms

All published vulnerabilities of this package (Composer package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (106) in the archive
Total entries
106
First → latest
10.2019 08.2026
Without a fix
6
Exploited in attacks
0

Severity breakdown

  • Critical 5
  • High 39
  • Medium 56
  • Low 6

Disclosures per year

  1. 2019: 6
  2. 2020: 0
  3. 2021: 7
  4. 2022: 26
  5. 2023: 12
  6. 2024: 24
  7. 2025: 15
  8. 2026: 16
Severity:
  1. High · 7.1 CVE-2026-84192 < 26.5.0 26.5.0
  2. High · 7.1 CVE-2020-36947 <= 1.46 no fix
  3. Critical · 9.1 CVE-2024-51092 < 24.10.0 24.10.0
  4. LibreNMS vulnerable to Stored Cross-site Scripting via File Upload this entry
    Low · 4.8 CVE-2024-47528 < 24.9.0 24.9.0
  5. High · 7.8 CVE-2023-5591 < 23.10.0 23.10.0
  6. High · 8.4 CVE-2023-5060 < 23.9.1 23.9.1
  7. High · 7.6 CVE-2023-4347 < 23.8.0 23.8.0
  8. High · 8.8 CVE-2022-3525 < 22.10.0 22.10.0
  9. High · 7.6 CVE-2022-4068 < 22.10.0 22.10.0
  10. Critical · 9.8 CVE-2022-4070 < 22.10.0 22.10.0
  11. High CVE-2022-29712 < 22.4.0 22.4.0
  12. Critical · 9.8 CVE-2019-10665 <= 1.47 no fix
  13. Critical · 9.8 CVE-2018-20434 = 1.46 no fix
  14. High · 8.8 CVE-2018-20678 < 1.65 1.65
  15. High · 7.1 CVE-2022-0580 < 22.2.0 22.2.0
  16. High · 7.1 CVE-2022-0587 < 22.2.0 22.2.0
  17. Critical · 9.8 CVE-2021-44278 <= 21.11.0 no fix
  18. High · 8.8 CVE-2020-15877 < 1.65.1 1.65.1
Show more (5) Showing 40 of 45

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.