Skip to content
Heist/ feed
Back to feed
Medium

LibreNMS vulnerable to Stored Cross-site Scripting through unsanitized /device-groups name

Type: advisorySources: OSV

LibreNMS is an auto-discovering PHP/MySQL/SNMP based network monitoring tool. In versions 26.1.1 and below, the device group name is not sanitized, allowing attackers with admin privileges to perform Stored Cross-Site Scripting (XSS) attacks. When a user adds a device group, an HTTP POST request is sent to the Request-URI "/device-groups". The name of the newly created device group is stored in the value of the name parameter. After the device group is created, the entry is displayed along with relevant buttons such as Rediscover Devices, Edit, and Delete. This issue has been fixed in version 26.2.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-26991
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 08:55 UTC · Revision 1

Source evidence

LibreNMS vulnerable to Stored Cross-site Scripting through unsanitized /device-groups name

core-osv · Original source

Published 20 Feb 2026, 02:21 UTC

LibreNMS is an auto-discovering PHP/MySQL/SNMP based network monitoring tool. In versions 26.1.1 and below, the device group name is not sanitized, allowing attackers with admin privileges to perform Stored Cross-Site Scripting (XSS) attacks. When a user adds a device group, an HTTP POST request is sent to the Request-URI "/device-groups". The name of the newly created device group is stored in the value of the name parameter. After the device group is created, the entry is displayed along with relevant buttons such as Rediscover Devices, Edit, and Delete. This issue has been fixed in version 26.2.0.

osv:CVE-2026-26991
Complete source record
{
  "id": "b291afe55fea7476a1c22829ebb46a477f93957a39fc2027127a9f149a2ab61e",
  "url": "https://osv.dev/vulnerability/CVE-2026-26991",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "LibreNMS vulnerable to Stored Cross-site Scripting through unsanitized /device-groups name",
    "summary": "LibreNMS is an auto-discovering PHP/MySQL/SNMP based network monitoring tool. In versions 26.1.1 and below, the device group name is not sanitized, allowing attackers with admin privileges to perform Stored Cross-Site Scripting (XSS) attacks. When a user adds a device group, an HTTP POST request is sent to the Request-URI \"/device-groups\". The name of the newly created device group is stored in the value of the name parameter. After the device group is created, the entry is displayed along with relevant buttons such as Rediscover Devices, Edit, and Delete. This issue has been fixed in version 26.2.0.",
    "evidence": "osv:CVE-2026-26991",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-26991",
      "aliases": [
        "CVE-2026-26991",
        "GHSA-5pqf-54qp-32wx"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/librenms/librenms",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "eeaa05618c22140d087739097b217800b0d6621f"
                },
                {
                  "fixed": "64b31da444369213eb4559ec1c304ebfaa0ba12c"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:librenms:librenms:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "26.2.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "64b31da444369213eb4559ec1c304ebfaa0ba12c"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "eeaa05618c22140d087739097b217800b0d6621f"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "26.2.0"
                  }
                ]
              }
            }
          ],
          "versions": [
            "26.1.0",
            "25.12.0",
            "25.11.0",
            "25.10.0",
            "25.9.0",
            "25.8.0",
            "25.7.0",
            "25.6.0",
            "25.5.0",
            "25.4.0",
            "25.3.0",
            "25.2.0",
            "25.1.0",
            "24.12.0",
            "24.11.0",
            "24.10.1",
            "24.10.0",
            "24.9.1",
            "24.9.0",
            "24.8.0",
            "24.7.0",
            "24.6.0",
            "24.5.0",
            "24.4.1",
            "24.4.0",
            "24.3.0",
            "24.2.0",
            "24.1.0",
            "23.11.0",
            "23.10.0",
            "23.9.1",
            "23.9.0",
            "23.8.2",
            "23.8.1",
            "23.8.0",
            "23.7.0",
            "23.6.0",
            "23.5.0",
            "23.4.1",
            "23.4.0",
            "23.2.0",
            "23.1.0",
            "22.12.0",
            "22.11.0",
            "22.10.0",
            "22.9.0",
            "22.8.0",
            "22.7.0",
            "22.6.0",
            "22.5.0",
            "22.4.0",
            "22.3.0",
            "22.2.1",
            "22.2.0",
            "22.1.0",
            "21.12.1",
            "21.12.0",
            "21.11.0",
            "21.10.0",
            "21.9.0",
            "21.8.0",
            "21.7.0",
            "21.6.0",
            "21.5.1",
            "21.5.0",
            "21.4.0",
            "21.3.0",
            "21.2.0",
            "21.1.0",
            "1.70.1",
            "1.70.0",
            "1.69",
            "1.68",
            "1.67",
            "1.66",
            "1.65",
            "1.64.1",
            "1.64",
            "1.63",
            "1.62",
            "1.61",
            "1.60",
            "1.59",
            "1.58.1",
            "1.58",
            "1.57",
            "1.56",
            "1.55",
            "1.54",
            "1.53.1",
            "1.53",
            "1.52",
            "1.51",
            "1.50",
            "1.49",
            "1.48.1",
            "1.48",
            "1.47",
            "1.46",
            "1.45",
            "1.44",
            "1.43",
            "1.42.01",
            "1.42",
            "1.41",
            "1.40",
            "1.39",
            "1.38",
            "1.37",
            "1.36",
            "1.35",
            "1.33",
            "1.32",
            "1.31.03",
            "1.31.02",
            "1.31.01",
            "1.28",
            "1.27",
            "1.26",
            "1.25",
            "1.21",
            "201609",
            "1.20",
            "20160828",
            "1.19",
            "201608",
            "201607",
            "201606",
            "201605",
            "201604",
            "201603",
            "201602",
            "201601",
            "201512",
            "201511",
            "201510",
            "201509",
            "201508",
            "201507",
            "201505",
            "201506",
            "0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-26991.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:47.265142547Z",
      "provider": "osv",
      "references": [
        "https://github.com/librenms/librenms/releases/tag/26.2.0",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/26xxx/CVE-2026-26991.json",
        "https://github.com/librenms/librenms/security/advisories/GHSA-5pqf-54qp-32wx",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-26991",
        "https://github.com/librenms/librenms/commit/64b31da444369213eb4559ec1c304ebfaa0ba12c",
        "https://github.com/librenms/librenms/pull/19041"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-79"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/26xxx/CVE-2026-26991.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-26991",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 515026,
  "published_at": "2026-02-20T02:21:31.889+00:00"
}