Vulnerability Description
String::Util versions before 1.36 for Perl are susceptible to a regular expression denial of service. The trim and rtrim functions stripped trailing whitespace with s/\s*$//u. Because \s* matches greedily and the $ anchor fails whenever a non-whitespace character follows the whitespace, the regex engine retries the match at each offset of a long whitespace run, producing quadratic backtracking. The fix replaces \s*$ with \s+$. Any caller that passes untrusted input to trim or rtrim can trigger CPU exhaustion with a string containing a long run of whitespace.
CVSS Score
HIGH
Related Weaknesses (CWE)
References
- https://github.com/scottchiefbaker/String-Util/commit/f8150867aaeb8f57c59601aefb
- https://github.com/scottchiefbaker/String-Util/releases
- https://metacpan.org/release/BAKERSCOT/String-Util-1.36/diff/BAKERSCOT/String-Ut
- http://www.openwall.com/lists/oss-security/2026/07/07/18
FAQ
What is CVE-2026-14895?
CVE-2026-14895 is a vulnerability with a CVSS score of 7.5 (HIGH). String::Util versions before 1.36 for Perl are susceptible to a regular expression denial of service. The trim and rtrim functions stripped trailing whitespace with s/\s*$//u. Because \s* matches gre...
How severe is CVE-2026-14895?
CVE-2026-14895 has been rated HIGH with a CVSS base score of 7.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-14895?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.