CVE-2026-2728: XSS

Published Apr 13, 2026
·
Updated

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 rancidrepourl 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 rancidconfigs is set, the application renders the corresponding rancidrepourl as a clickable link labeled "Git Repository" on the /device/{id}/showconfig UI.

Because the rancidrepourl 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 rancidconfigs. This can be any directory ended with .git. 3. Put "></a><img/src/onerror=alert(1)><a x=" into rancidrepourl 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/

Other sources

LibreNMS versions before 26.3.0 are affected by an authenticated Cross-site Scripting vulnerability on the showconfig page. Successful exploitation requires administrative privileges. Exploitation could result in XSS attacks being performed against other users with access to the page.

MITRE

Affected Software

4 affected componentsFixes available
librenms librenms<26.3.0
composer/librenms/librenms<26.3.0
26.3.0
librenms librenms<26.3.0
composer/librenms/librenms>=25.12.0<26.3.0
26.3.0

Event History

Apr 13, 2026
CVE Published
via MITRE·10:39 AM
Data Sourced
via MITRE·10:39 AM
DescriptionWeakness
Data Sourced
via NVD·11:16 AM
DescriptionSeverityWeakness
Data Sourced
via NVD·11:16 AM
Affected Software
Advisory Published
via GitHub·12:31 PM
Data Sourced
via GitHub·12:31 PM
DescriptionWeaknessAffected Software
May 18, 2026
Data Sourced
via GitHub·05:00 PM
Severity
Updated
via GitHub·05:00 PM
DescriptionAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-2728?

CVE-2026-2728 is classified as a high severity vulnerability due to the potential for authenticated Cross-site Scripting attacks.

2

How do I fix CVE-2026-2728?

To fix CVE-2026-2728, upgrade to LibreNMS version 26.3.0 or later.

3

Who is affected by CVE-2026-2728?

CVE-2026-2728 affects all versions of LibreNMS prior to 26.3.0 that have administrative access.

4

What type of vulnerability is CVE-2026-2728?

CVE-2026-2728 is an authenticated Cross-site Scripting (XSS) vulnerability.

5

What could happen if CVE-2026-2728 is exploited?

If exploited, CVE-2026-2728 could allow XSS attacks against other users with access to the showconfig page.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203