Description
The package printf before 0.6.1 are vulnerable to Regular Expression Denial of Service (ReDoS) via the regex string /\%(?:\(([\w_.]+)\)|([1-9]\d*)\$)?([0 +\-\]*)(\*|\d+)?(\.)?(\*|\d+)?[hlL]?([\%bscdeEfFgGioOuxX])/g in lib/printf.js. The vulnerable regular expression has cubic worst-case time complexity.
Remediation
References
https://github.com/adaltas/node-printf/issues/31
https://github.com/adaltas/node-printf/pull/32
https://snyk.io/vuln/SNYK-JS-PRINTF-1072096
Related Vulnerabilities
CVE-2013-1814 Vulnerability in maven package org.apache.rave:rave-web
CVE-2021-26540 Vulnerability in maven package org.webjars.npm:sanitize-html
CVE-2021-34078 Vulnerability in npm package lifion-verify-deps
CVE-2017-16037 Vulnerability in npm package gomeplus-h5-proxy
CVE-2023-44487 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core