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-2023-25653 Vulnerability in maven package org.webjars.npm:node-jose
CVE-2023-4043 Vulnerability in maven package org.eclipse.parsson:parsson
CVE-2021-44908 Vulnerability in npm package sails
CVE-2019-12741 Vulnerability in maven package ca.uhn.hapi.fhir:hapi-fhir-testpage-overlay
CVE-2015-0250 Vulnerability in maven package org.eclipse.birt.runtime.3_7_1:org.apache.batik.dom