Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. postcss
  4. ›
  5. CVE-2026-69153

CVE-2026-69153: PostCSS: incomplete fix of GHSA-6g55-p6wh-862q — attacker-controlled sourceMappingURL reads arbitrary .map files when `from` is unset

August 3, 2026

The fix for GHSA-6g55-p6wh-862q added a guard in lib/previous-map.js PreviousMap.loadFile() that restricts an attacker-controlled sourceMappingURL (from a CSS comment) to a .map extension and, for untrusted maps, rejects .. traversal and absolute paths. The traversal/absolute rejection is nested inside if (cssFile) { ... }. When PostCSS is invoked without the from option, cssFile is falsy and that branch is skipped, leaving only the .map extension check.

PreviousMap is constructed by lib/input.js whenever pathAvailable && sourceMapAvailable (under Node with source-map available), independent of opts.from/opts.map (the constructor returns early only for opts.map === false). So postcss([]).process(css) on attacker CSS reaches loadFile with cssFile undefined, and an attacker /*# sourceMappingURL=/abs/path/x.map */ (or ../-traversing path) is read via readFileSync. When the file is valid JSON, its sources (filesystem paths) and sourcesContent (source contents) are disclosed in the generated source map.

References

  • github.com/advisories/GHSA-fxqj-rqcc-2cmp
  • github.com/postcss/postcss/commit/7beca139e70f9075c6b19700fcb00dd8033e5da8
  • github.com/postcss/postcss/releases/tag/8.5.19
  • github.com/postcss/postcss/security/advisories/GHSA-fxqj-rqcc-2cmp
  • nvd.nist.gov/vuln/detail/CVE-2026-69153

Code Behaviors & Features

Detect and mitigate CVE-2026-69153 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 8.5.23

Fixed versions

  • 8.5.23

Solution

Upgrade to version 8.5.23 or above.

Impact 5.3 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
  • CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Source file

npm/postcss/CVE-2026-69153.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 05 Aug 2026 00:17:14 +0000.