{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "source": "REFERENCES"
          },
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "8c55a2ba3365712a1caa4abeece0383bc2994d48"
            }
          ],
          "repo": "https://github.com/shd101wyy/crossnote",
          "type": "GIT"
        },
        {
          "database_specific": {
            "extracted_events": [
              {
                "introduced": "0"
              },
              {
                "fixed": "0.8.30"
              }
            ],
            "source": [
              "AFFECTED_FIELD",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "8bc848b6cbb42b9f35a0f95f7c3bf29b8302970e"
            }
          ],
          "repo": "https://github.com/shd101wyy/vscode-markdown-preview-enhanced",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-mcwg-4j78-qwv3"
  ],
  "database_specific": {
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
      "CWE-79"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54701.json"
  },
  "details": "Markdown Preview Enhanced is a Markdown preview extension for Visual Studio Code. Prior to 0.8.30, Markdown Preview Enhanced reads repository-controlled .crossnote/head.html content and passes it through resolvePathsInHeader before inserting it into the head of the preview webview document without removing executable content. Script-capable markup executes while the document loads, before the React application and DOMPurify initialize, and can access acquireVsCodeApi to send messages from the webview to the extension host. Opening a Markdown preview in a malicious repository is sufficient to trigger the injected content, and no additional click within the notification or preview is required. This issue is fixed in version 0.8.30.",
  "id": "CVE-2026-54701",
  "modified": "2026-10-16T02:31:10.766221870Z",
  "published": "2026-10-14T19:11:51.712Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/shd101wyy/crossnote/releases/tag/0.9.31"
    },
    {
      "type": "WEB",
      "url": "https://github.com/shd101wyy/vscode-markdown-preview-enhanced/releases/tag/0.8.30"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54701.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/shd101wyy/vscode-markdown-preview-enhanced/security/advisories/GHSA-mcwg-4j78-qwv3"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-54701"
    },
    {
      "type": "FIX",
      "url": "https://github.com/shd101wyy/crossnote/commit/8c55a2ba3365712a1caa4abeece0383bc2994d48"
    },
    {
      "type": "FIX",
      "url": "https://github.com/shd101wyy/crossnote/pull/444"
    },
    {
      "type": "FIX",
      "url": "https://github.com/shd101wyy/vscode-markdown-preview-enhanced/commit/8bc848b6cbb42b9f35a0f95f7c3bf29b8302970e"
    },
    {
      "type": "FIX",
      "url": "https://github.com/shd101wyy/vscode-markdown-preview-enhanced/pull/2323"
    }
  ],
  "schema_version": "1.9.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Markdown Preview Enhanced: Stored XSS via Unsanitized `.crossnote/head.html` Injection in Webview"
}