Description
v8n is a javascript validation library. Versions of v8n prior to 1.5.1 were found to have an inefficient regular expression complexity in the `lowercase()` and `uppercase()` regex which could lead to a denial of service attack. In testing of the `lowercase()` function a payload of 'a' + 'a'.repeat(i) + 'A' with 32 leading characters took 29443 ms to execute. The same issue happens with uppercase(). Users are advised to upgrade. There are no known workarounds for this issue.
Remediation
References
https://github.com/imbrn/v8n/commit/92393862156fad190c05ec3f6e2bc73308dcd2f9
https://github.com/imbrn/v8n/security/advisories/GHSA-xrx9-gj26-5wx9
https://huntr.dev/bounties/2d92f644-593b-43b4-bfd1-c8042ac60609/
Related Vulnerabilities
CVE-2016-10735 Vulnerability in maven package org.webjars.bowergithub.twbs:bootstrap-sass
CVE-2018-14732 Vulnerability in maven package org.webjars.npm:webpack-dev-server
CVE-2020-9484 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core
CVE-2020-6428 Vulnerability in maven package org.webjars.npm:electron
CVE-2016-2175 Vulnerability in maven package org.apache.pdfbox:preflight-app