Skip to content
Heist/ feed
Back to feed
Medium

Stored Cross-site Scripting on data_sources.php device name view in Cacti

Type: advisorySources: OSV

Cacti is an open source operational monitoring and fault management framework. Affected versions are subject to a Stored Cross-Site-Scripting (XSS) Vulnerability which allows an authenticated user to poison data stored in the _cacti_'s database. These data will be viewed by administrative _cacti_ accounts and execute JavaScript code in the victim's browser at view-time. The script under `data_sources.php` displays the data source management information (e.g. data source path, polling configuration, device name related to the datasource etc.) for different data visualizations of the _cacti_ app. _CENSUS_ found that an adversary that is able to configure a malicious device name, can deploy a stored XSS attack against any user of the same (or broader) privileges. A user that possesses the _General Administration>Sites/Devices/Data_ permissions can configure the device names in _cacti_. This configuration occurs through `http:///cacti/host.php`, while the rendered malicious payload is exhibited at `http:///cacti/data_sources.php`. This vulnerability has been addressed in version 1.2.25. Users are advised to upgrade. Users unable to update should manually filter HTML output.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2023-39512
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 04:52 UTC · Revision 1

Source evidence

Stored Cross-site Scripting on data_sources.php device name view in Cacti

core-osv · Original source

Published 5 Sept 2023, 20:35 UTC

Cacti is an open source operational monitoring and fault management framework. Affected versions are subject to a Stored Cross-Site-Scripting (XSS) Vulnerability which allows an authenticated user to poison data stored in the _cacti_'s database. These data will be viewed by administrative _cacti_ accounts and execute JavaScript code in the victim's browser at view-time. The script under `data_sources.php` displays the data source management information (e.g. data source path, polling configuration, device name related to the datasource etc.) for different data visualizations of the _cacti_ app. _CENSUS_ found that an adversary that is able to configure a malicious device name, can deploy a stored XSS attack against any user of the same (or broader) privileges. A user that possesses the _General Administration>Sites/Devices/Data_ permissions can configure the device names in _cacti_. This configuration occurs through `http:///cacti/host.php`, while the rendered malicious payload is exhibited at `http:///cacti/data_sources.php`. This vulnerability has been addressed in version 1.2.25. Users are advised to upgrade. Users unable to update should manually filter HTML output.

osv:CVE-2023-39512
Complete source record
{
  "id": "78b1bf61a7b7ddfa9e418b3dba2e1655f16a39bf96788342ea9aea75c167e53c",
  "url": "https://osv.dev/vulnerability/CVE-2023-39512",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Stored Cross-site Scripting on data_sources.php device name view in Cacti",
    "summary": "Cacti is an open source operational monitoring and fault management framework. Affected versions are subject to a Stored Cross-Site-Scripting (XSS) Vulnerability which allows an authenticated user to poison data stored in the _cacti_'s database. These data will be viewed by administrative _cacti_ accounts and execute JavaScript code in the victim's browser at view-time. The script under `data_sources.php` displays the data source management information (e.g. data source path, polling configuration, device name related to the datasource etc.) for different data visualizations of the _cacti_ app. _CENSUS_ found that an adversary that is able to configure a malicious device name, can deploy a stored XSS attack against any user of the same (or broader) privileges. A user that possesses the _General Administration>Sites/Devices/Data_ permissions can configure the device names in _cacti_. This configuration occurs through `http:///cacti/host.php`, while the rendered malicious payload is exhibited at `http:///cacti/data_sources.php`. This vulnerability has been addressed in version 1.2.25. Users are advised to upgrade. Users unable to update should manually filter HTML output.",
    "evidence": "osv:CVE-2023-39512",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2023-39512",
      "aliases": [
        "CVE-2023-39512",
        "GHSA-vqcc-5v63-g9q7"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/cacti/cacti",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "18500fa313a9f1ee1be48aa111c0eeea001010fa"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "1.2.25"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "cpe": "cpe:2.3:a:cacti:cacti:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "1.2.25"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "release/1.2.24",
            "release/1.2.23",
            "release/1.2.22",
            "release/1.2.21",
            "release/1.2.20",
            "release/1.2.19",
            "releaes/1.2.19",
            "release/1.2.18",
            "release/1.2.17",
            "rel-1.2.17",
            "release/1.2.16",
            "release/1.2.15",
            "release/1.2.14",
            "release/1.2.13",
            "release/1.2.12",
            "release/1.2.11",
            "release/1.2.10",
            "release/1.2.9",
            "release/1.2.8",
            "release/1.2.7",
            "release/1.2.6",
            "release/1.2.5",
            "release/1.2.4",
            "release/1.2.3",
            "release/1.2.2",
            "release/1.2.1",
            "release/1.2.0",
            "release/1.1.38",
            "release/1.1.37",
            "release/1.1.36",
            "release/1.1.35",
            "release/1.1.34",
            "release/1.1.33",
            "release/1.1.32",
            "release/1.1.31",
            "release/1.1.30",
            "release/1.1.29",
            "release/1.1.28",
            "release/1.1.27",
            "release/1.1.26",
            "release/1.1.25",
            "release/1.1.24",
            "release/1.1.23",
            "release/1.1.22",
            "release/1.1.21",
            "release/1.1.20",
            "release/1.1.19",
            "release/1.1.18",
            "release/1.1.17",
            "release/1.1.16",
            "release/1.1.15",
            "release/1.1.14",
            "release/1.1.13",
            "release/1.1.12",
            "release/1.1.11",
            "release/1.1.8",
            "release/1.1.7",
            "release/1.1.6",
            "release/1.1.5",
            "release/1.1.4",
            "release/1.1.3",
            "release/1.1.2",
            "release/1.1.1",
            "release/1.1.0",
            "release/1.0.6",
            "release/1.0.5",
            "release/1.0.4",
            "release/1.0.3",
            "release/1.0.2",
            "release/1.0.1",
            "release/1.0.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-39512.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:33.420948480Z",
      "provider": "osv",
      "references": [
        "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CFH3J2WVBKY4ZJNMARVOWJQK6PSLPHFH/",
        "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/WOQFYGLZBAWT4AWNMO7DU73QXWPXTCKH/",
        "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/WZGB2UXJEUYWWA6IWVFQ3ZTP22FIHMGN/",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/39xxx/CVE-2023-39512.json",
        "https://github.com/Cacti/cacti/security/advisories/GHSA-vqcc-5v63-g9q7",
        "https://nvd.nist.gov/vuln/detail/CVE-2023-39512",
        "https://www.debian.org/security/2023/dsa-5550"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-79"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/39xxx/CVE-2023-39512.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2023-39512",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 500395,
  "published_at": "2023-09-05T20:35:09.893+00:00"
}