Niedrig

LibreNMS: Cross-Site Scripting in ShowConfigController

  • Veröffentlicht: 18.05.2026
  • Aktualisiert: 11.10.2026 10:22

Summary

A Stored Cross-Site Scripting (XSS) vulnerability exists in the ShowConfig page of devices affected by the RANCID Integration settings. The application fails to properly sanitise the rancid_repo_url configuration value. When a user navigates to a device's configuration page, this unsanitised value is rendered directly within an HTML anchor (<a>) tag. This allows an authenticated user with permission to modify external settings to inject malicious JavaScript that will execute in the browser of any user viewing the affected device pages.

Details

The vulnerability is located in the external settings configuration block, specifically at the settings/external/rancid endpoint. When a valid rancid_configs is set, the application renders the corresponding rancid_repo_url as a clickable link labeled "Git Repository" on the /device/{id}/showconfig UI.

Because the rancid_repo_url input is neither validated upon saving nor contextually encoded upon rendering, an attacker can break out of the href attribute context or use JavaScript URIs to attach malicious event handlers or scripts.

This vulnerability is introduced by the line 13 of https://github.com/librenms/librenms/blob/master/includes/html/pages/device/showconfig.inc.php.

PoC

  1. Login as an admin and navigate to /settings/external/rancid. <img width="790" height="155" alt="image" src="https://github.com/user-attachments/assets/348fff1b-dfce-4735-9273-055113695368" />

  2. Add a valid path to rancid_configs. This can be any directory ended with .git.

  3. Put "></a><img/src/onerror=alert(1)><a x=" into rancid_repo_url config. <img width="909" height="276" alt="image" src="https://github.com/user-attachments/assets/b8c5d650-ba05-4326-8a2d-bea8defa7373" />

  4. Navigate to a device page and click Config (Or visit /device/{id}/showconfig directly).

  5. The XSS is triggered when visiting the page. It will pop up an alert dialog. <img width="810" height="454" alt="image" src="https://github.com/user-attachments/assets/4d15784e-ff93-46ec-b13e-08a225a8d6d4" />

Other Payloads

  • javascript:alert(1)" x=" - triggered by clicking the link.
  • ``" onmouseover="alert(1)" x="` - triggered by hovering on the link

Impact

Since an admin account is required to change the settings, the risk is minimal in systems with a single administrator. However, in environments with multiple administrative users, this constitutes an Admin-to-Admin Cross-Site Scripting attack. It could be used by a compromised admin account to execute arbitrary frontend code in the context of another administrator's session, potentially leading to session hijacking or unauthorized data exposure.

Remediation Advice

Ensure proper sanitisation is performed on affected fields, with all special characters escaped and HTML encoded. This can be done with existing frameworks like HTMLPurifier.

CVE Request

CVE References: https://projectblack.io/blog/librenms-authenticated-rce-and-xss/

Betroffene Software

Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.

PlattformPaketAnfällige VersionenBehoben in
Composer-Paket librenms/librenms >= 25.12.0, < 26.3.0 26.3.0

Verweise

CVSS-Wert 3.5/10
CVSS-Vektor
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N
Schwäche (CWE)
CWE-79
Plattform
Composer
Paket
librenms/librenms
Veröffentlicht
18.05.2026
Aktualisiert
11.10.2026 10:22

Quellen und Lizenzen

OSV / GitHub Advisory Database - GHSA-5gm9-622f-qcg5 - CC BY 4.0

Schwachstellenhistorie: librenms/librenms

Alle veröffentlichten Schwachstellen dieses Pakets (Composer-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.

Alle (106) im Archiv
Einträge insgesamt
106
Erste → letzte
10.2019 08.2026
Ohne Fix
6
In Angriffen ausgenutzt
0

Verteilung nach Schweregrad

  • Kritisch 5
  • Hoch 39
  • Mittel 56
  • Niedrig 6

Veröffentlichungen pro Jahr

  1. 2019: 6
  2. 2020: 0
  3. 2021: 7
  4. 2022: 26
  5. 2023: 12
  6. 2024: 24
  7. 2025: 15
  8. 2026: 16
Schweregrad:
  1. Hoch · 7.1 CVE-2026-84192 < 26.5.0 26.5.0
  2. LibreNMS: Cross-Site Scripting in ShowConfigController dieser Eintrag
    Niedrig · 3.5 CVE-2026-2728 >= 25.12.0, < 26.3.0 26.3.0
  3. Hoch · 7.1 CVE-2020-36947 <= 1.46 keine Korrektur
  4. Kritisch · 9.1 CVE-2024-51092 < 24.10.0 24.10.0
  5. Hoch · 7.8 CVE-2023-5591 < 23.10.0 23.10.0
  6. Hoch · 8.4 CVE-2023-5060 < 23.9.1 23.9.1
  7. Hoch · 7.6 CVE-2023-4347 < 23.8.0 23.8.0
  8. Hoch · 8.8 CVE-2022-3525 < 22.10.0 22.10.0
  9. Hoch · 7.6 CVE-2022-4068 < 22.10.0 22.10.0
  10. Kritisch · 9.8 CVE-2022-4070 < 22.10.0 22.10.0
  11. Hoch CVE-2022-29712 < 22.4.0 22.4.0
  12. Kritisch · 9.8 CVE-2019-10665 <= 1.47 keine Korrektur
  13. Kritisch · 9.8 CVE-2018-20434 = 1.46 keine Korrektur
  14. Hoch · 8.8 CVE-2018-20678 < 1.65 1.65
  15. Hoch · 7.1 CVE-2022-0580 < 22.2.0 22.2.0
  16. Hoch · 7.1 CVE-2022-0587 < 22.2.0 22.2.0
  17. Kritisch · 9.8 CVE-2021-44278 <= 21.11.0 keine Korrektur
  18. Hoch · 8.8 CVE-2020-15877 < 1.65.1 1.65.1
  19. Hoch · 8.8 CVE-2020-35700 < 21.1.0 21.1.0
  20. Hoch · 8.8 CVE-2019-10671 < 1.50.1 1.50.1
  21. Hoch · 8.1 CVE-2019-12465 < 1.53 1.53
  22. Hoch · 7.5 CVE-2019-12464 < 1.53 1.53
  23. Hoch · 8.8 CVE-2019-12463 >= 1.50.1, < 1.53 1.53

Erkennen Sie Schwachstellen in Ihrer Anwendung

Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.

Anwendung verbinden
DockRay Newsletter

Anwendungssicherheit in Ihrem Postfach

Wichtige Schwachstellen, konkrete Empfehlungen und praktische Tipps für Ihre Anwendungen. Wählen Sie Ihre Technologien und verfolgen Sie, was für Ihr Projekt relevant ist.

  • Eine tägliche Zusammenfassung neuer Schwachstellen, auch kritischer.
  • Benachrichtigungen über wichtige Updates.
  • Praktische Tipps zur Sicherheit und Überwachung von Anwendungen.

Leer lassen, um Meldungen zu allen Technologien zu erhalten.

Kostenlos anmelden. In jeder E-Mail mit einem Klick abmelden.