CVE-2015-8853
High · 7.5CVSS
7.5
EPSS
2.6%
Published
May 25, 2016
CISA due date
—
Cloudanix analysis
Older versions of the Perl programming language can be tricked into freezing when they try to process certain specially formatted text, which can stop programs that use Perl from working.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The S_reghop3, S_reghop4, and S_reghopmaybe3 functions in regexec.c contain a flaw that enters an infinite loop when processing certain crafted UTF-8 sequences during regular expression execution.
Why it matters to the business
Services or scripts written in older Perl versions can be made unresponsive by sending specially formatted text, causing application outages and requiring manual restarts.
How an attack unfolds
An attacker crafts UTF-8 input containing sequences such as "a\x80." and submits it to any Perl application that performs regex matching on untrusted data; the vulnerable regexec functions loop indefinitely, consuming CPU and hanging the process.
How to fix it
Upgrade Perl to version 5.24.0 or later on all affected systems; where immediate upgrade is not possible, avoid applying untrusted UTF-8 data to regular expressions or implement input sanitization before regex operations.
How to confirm the fix worked
Run 'perl -v' to confirm the installed version is 5.24.0 or newer; attempt to reproduce the issue with the original UTF-8 test string and verify that the process terminates normally instead of looping.
Typical attack path
- Locate Perl-based services or scripts that accept external input and apply regular expressions.
- Generate or obtain a minimal UTF-8 payload known to trigger the regexec loop.
- Deliver the payload via network request, file upload, or command-line argument.
- Observe sustained high CPU usage and lack of response from the affected Perl process.
How to detect it
Review system and application logs for Perl processes that show sustained 100% CPU utilization without corresponding progress in request handling; correlate with incoming requests containing UTF-8 sequences near regex operations.
What your security team should do
- Prioritize upgrading all Perl installations to 5.24.0 or newer within the next maintenance window.
- Inventory applications that use Perl regex on external input and apply input validation or sandboxing as a temporary control.
- Monitor for high-CPU Perl processes and include Perl version checks in routine vulnerability scans.
The record
The (1) S_reghop3, (2) S_reghop4, and (3) S_reghopmaybe3 functions in regexec.c in Perl before 5.24.0 allow context-dependent attackers to cause a denial of service (infinite loop) via crafted utf-8 data, as demonstrated by "a\x80."
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | perl | 0 | 5.22.1-1 |
| Debian:12 | perl | 0 | 5.22.1-1 |
| Debian:13 | perl | 0 | 5.22.1-1 |
| Mageia:5 | perl | 0 | 5.20.1-8.3.mga5 |
| SUSE:Linux Enterprise Desktop 12 SP1 | perl | 0 | 5.18.2-11.1 |
| SUSE:Linux Enterprise Server 11 SP4 | perl | 0 | 5.10.0-64.80.1 |
| SUSE:Linux Enterprise Server 12 SP1 | perl | 0 | 5.18.2-11.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | perl | 0 | 5.10.0-64.80.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | perl | 0 | 5.18.2-11.1 |
| SUSE:Linux Enterprise Software Development Kit 11 SP4 | perl | 0 | 5.10.0-64.80.1 |
| Ubuntu:14.04:LTS | perl | 0 | 5.18.2-2ubuntu1.4 |
| Ubuntu:16.04:LTS | perl | 0 | 5.22.1-9 |
| Ubuntu:16.04:LTS | perl | 0 | 5.22.1-9ubuntu0.3 |
Related vulnerabilities
- CVE-2020-16156 CPAN 2.28 allows Signature Verification Bypass. Also affects perl
- CVE-2017-12837 Heap-based buffer overflow in the S_regatom function in regcomp.c in Perl 5 before… Also affects perl
- CVE-2013-7422 Integer underflow in regcomp.c in Perl before 5.20, as used in Apple OS X before 10.10.5… Also affects perl
- CVE-2012-6329 The _compile function in Maketext.pm in the Locale::Maketext implementation in Perl… Also affects perl
- CVE-2011-3597 Eval injection vulnerability in the Digest module before 1.17 for Perl allows… Also affects perl
- CVE-2011-1487 The (1) lc, (2) lcfirst, (3) uc, and (4) ucfirst functions in Perl 5.10.x, 5.11.x, and… Also affects perl
- CVE-2026-113786 pypdf is a free and open-source pure-python PDF library. CWE-20
- CVE-2026-112081 A vulnerability was determined in hankcs HanLP up to 2.1.0-beta.64. CWE-20