ghsa-27vf-3g4f-6jp7
Vulnerability from github
Published
2025-01-16 17:32
Modified
2025-01-17 15:52
Summary
LibreNMS Ports Stored Cross-site Scripting vulnerability
Details

StoredXSS-LibreNMS-Ports

Description:

Stored XSS on the parameter: /ajax_form.php -> param: descr

Request: ```http POST /ajax_form.php HTTP/1.1 Host: X-Requested-With: XMLHttpRequest X-CSRF-TOKEN: Content-Type: application/x-www-form-urlencoded; charset=UTF-8 Cookie:

type=update-ifalias&descr=%22%3E%3Cimg+src+onerror%3D%22alert(1)%22%3E&ifName=lo&port_id=1&device_id=1 ```

of Librenms version 24.10.1 (https://github.com/librenms/librenms) allows remote attackers to inject malicious scripts. When a user views or interacts with the page displaying the data, the malicious script executes immediately, leading to potential unauthorized actions or data exposure.

Proof of Concept: 1. Add a new device through the LibreNMS interface. 2. Edit the newly created device and select the "ports" section. 3. In the "Description" field, enter the following payload: "><img src onerror="alert(1)">. 4. Save the changes. 5. The XSS vulnerability is triggered when accessing the "ports" tab, and the payload is executed again when hovering over the modified value in the "Port" field.

Payload:

Executes: The script execution vulnerability in the description field, as shown in the image, occurs at Line 63 of functions.inc.php php $overlib_content = '<div class=overlib><span class=overlib-text>' . $text . '</span><br />';

Impact:

Execution of Malicious Code

Show details on source website


{
  "affected": [
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c 24.10.1"
      },
      "package": {
        "ecosystem": "Packagist",
        "name": "librenms/librenms"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "24.11.0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2025-23199"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-79"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2025-01-16T17:32:30Z",
    "nvd_published_at": "2025-01-16T23:15:08Z",
    "severity": "MODERATE"
  },
  "details": "# StoredXSS-LibreNMS-Ports\n\n\n**Description:**\n\n\nStored XSS on the parameter:\n`/ajax_form.php` -\u003e param: descr\n\nRequest:\n```http\nPOST /ajax_form.php HTTP/1.1\nHost: \u003cyour_host\u003e\nX-Requested-With: XMLHttpRequest\nX-CSRF-TOKEN: \u003cyour_XSRF_token\u003e\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8\nCookie: \u003cyour_cookie\u003e\n\ntype=update-ifalias\u0026descr=%22%3E%3Cimg+src+onerror%3D%22alert(1)%22%3E\u0026ifName=lo\u0026port_id=1\u0026device_id=1\n```\n\n\nof Librenms version 24.10.1 ([https://github.com/librenms/librenms](https://github.com/librenms/librenms)) allows remote attackers to inject malicious scripts. When a user views or interacts with the page displaying the data, the malicious script executes immediately, leading to potential unauthorized actions or data exposure.\n\n\n\n**Proof of Concept:**\n1. Add a new device through the LibreNMS interface.\n2. Edit the newly created device and select the \"ports\" section.\n3. In the \"Description\" field, enter the following payload: `\"\u003e\u003cimg src onerror=\"alert(1)\"\u003e`.\n4. Save the changes.\n5. The XSS vulnerability is triggered when accessing the \"ports\" tab, and the payload is executed again when hovering over the modified value in the \"Port\" field.\n\nPayload:\n![payload](https://github.com/user-attachments/assets/2f38b985-6684-403f-9d1f-e405f09a75bb)\n\nExecutes:\n![image](https://github.com/user-attachments/assets/b70a6e34-d52c-4113-b769-4e271e33de88)\nThe script execution vulnerability in the description field, as shown in the image, occurs at [Line 63 of functions.inc.php](https://github.com/librenms/librenms/blob/master/includes/html/functions.inc.php#L63)\n```php\n$overlib_content = \u0027\u003cdiv class=overlib\u003e\u003cspan class=overlib-text\u003e\u0027 . $text . \u0027\u003c/span\u003e\u003cbr /\u003e\u0027;\n```\n\n![image](https://github.com/user-attachments/assets/97b85403-5b7e-4f43-932c-d33bd3c0f73f)\n\n\n\n\n**Impact:**\n\nExecution of Malicious Code\n",
  "id": "GHSA-27vf-3g4f-6jp7",
  "modified": "2025-01-17T15:52:10Z",
  "published": "2025-01-16T17:32:30Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/librenms/librenms/security/advisories/GHSA-27vf-3g4f-6jp7"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-23199"
    },
    {
      "type": "WEB",
      "url": "https://github.com/librenms/librenms/pull/16721"
    },
    {
      "type": "WEB",
      "url": "https://github.com/librenms/librenms/commit/9d07d166b87634091dcf21c62b28f9b42a3118c4"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/librenms/librenms"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N",
      "type": "CVSS_V3"
    }
  ],
  "summary": "LibreNMS Ports Stored Cross-site Scripting vulnerability"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.