Pcre2
Don't miss out!
Thousands of developers use stack.watch to stay informed.Get an email whenever new security vulnerabilities are reported in Pcre2.
By the Year
In 2026 there have been 7 vulnerabilities in Pcre2 with an average score of 5.3 out of ten. Pcre2 did not have any published security vulnerabilities last year. That is, 7 more vulnerabilities have already been reported in 2026 as compared to last year.
| Year | Vulnerabilities | Average Score |
|---|---|---|
| 2026 | 7 | 5.33 |
| 2025 | 0 | 0.00 |
| 2024 | 0 | 0.00 |
| 2023 | 1 | 7.50 |
| 2022 | 2 | 9.10 |
| 2021 | 0 | 0.00 |
| 2020 | 1 | 0.00 |
It may take a day or so for new Pcre2 vulnerabilities to show up in the stats or in the list of recent security vulnerabilities. Additionally vulnerabilities may be tagged under a different product or component name.
Recent Pcre2 Security Vulnerabilities
PCRE2 <10.48: pcre2_serialize_encode 2-byte disclosure
CVE-2026-89162
2.9 - Low
- September 11, 2026
In PCRE2 before 10.48, pcre2_serialize_encode might disclose two bytes to an adversary, typically in a situation where the access available to the adversary is already unsafe.
Incorrect Resource Transfer Between Spheres
PCRE2 10.48 pcre2_jit_match Incorrect Free Vulnerability
CVE-2026-89161
7.4 - High
- September 11, 2026
In PCRE2 before 10.48, pcre2_jit_match mishandles a previously copied subject being passed in as a context. An incorrect free operation can occur.
Free of Memory not on the Heap
PCRE2 <10.48 OOB Read in pcre2_match during PCRE2_MATCH_INVALID_UTF
CVE-2026-89160
3.7 - Low
- September 11, 2026
PCRE2 before 10.48 has a pcre2_match out-of-bounds read during the PCRE2_MATCH_INVALID_UTF matching of an invalid UTF subject.
Out-of-bounds Read
Integer Overflow in PCRE2 <=10.48 pcre2_compile_32 (32Bit)
CVE-2026-89158
6.5 - Medium
- September 11, 2026
PCRE2 before 10.48, on 32-bit platforms, has a pcre2_compile_32 integer overflow and resultant out-of-bounds write.
Integer Overflow or Wraparound
PCRE2 <10.48 | pcre2_pattern_convert OOB Write on 32-bit
CVE-2026-89157
5.7 - Medium
- September 11, 2026
PCRE2 before 10.48, on 32-bit platforms, has a pcre2_pattern_convert out-of-bounds write when an attacker can provide a large pattern.
Integer Overflow or Wraparound
PCRE2 <10.48 OOB Read via JIT Fallback on Invalid UTF
CVE-2026-89156
2.9 - Low
- September 11, 2026
PCRE2 before 10.48 has a pcre2_match out-of-bounds read after a JIT fallback when an attacker can provide invalid UTF data.
Out-of-bounds Read
PCRE2 <10.48 DFA OOB Write via pcre2_dfa_match Cache Reuse
CVE-2026-86145
8.2 - High
- September 05, 2026
PCRE2 before 10.48 allows a pcre2_dfa_match out-of-bounds write because reuse of a cached workspace block, in a recursive DFA matching workspace, lacks a size check (even though a newly allocated block, for the same purpose, does have a size check). This outcome requires an attacker-controlled regular expression, or a recursive pattern in conjunction with a small heap limit (this can be set through the API).
Improper Protection of Alternate Path
PCRE2: Integer Overflow in pcre2test (pre10.41) -> DoS
CVE-2022-41409
7.5 - High
- July 18, 2023
Integer overflow vulnerability in pcre2test before 10.41 allows attackers to cause a denial of service or other unspecified impacts via negative input.
Integer Overflow or Wraparound
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the compile_xclass_matchingpath() function of the pcre2_jit_compile.c file
CVE-2022-1586
9.1 - Critical
- May 16, 2022
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the compile_xclass_matchingpath() function of the pcre2_jit_compile.c file. This involves a unicode property matching issue in JIT-compiled regular expressions. The issue occurs because the character was not fully read in case-less matching within JIT.
Out-of-bounds Read
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the get_recurse_data_length() function of the pcre2_jit_compile.c file
CVE-2022-1587
9.1 - Critical
- May 16, 2022
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the get_recurse_data_length() function of the pcre2_jit_compile.c file. This issue affects recursions in JIT-compiled regular expressions caused by duplicate data transfers.
Out-of-bounds Read
An out-of-bounds read was discovered in PCRE before 10.34 when the pattern \X is JIT compiled and used to match specially crafted subjects in non-UTF mode
CVE-2019-20454
- February 14, 2020
An out-of-bounds read was discovered in PCRE before 10.34 when the pattern \X is JIT compiled and used to match specially crafted subjects in non-UTF mode. Applications that use PCRE to parse untrusted input may be vulnerable to this flaw, which would allow an attacker to crash the application. The flaw occurs in do_extuni_no_utf in pcre2_jit_compile.c.
Heap-based buffer overflow in PCRE 8.34 through 8.37 and PCRE2 10.10
CVE-2015-3210
9.8 - Critical
- December 13, 2016
Heap-based buffer overflow in PCRE 8.34 through 8.37 and PCRE2 10.10 allows remote attackers to execute arbitrary code via a crafted regular expression, as demonstrated by /^(?P=B)((?P=B)(?J:(?P<B>c)(?P<B>a(?P=B)))>WGXCREDITS)/, a different vulnerability than CVE-2015-8384.
Memory Corruption