Pcre2 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

Stay on top of Security Vulnerabilities

Want an email whenever new vulnerabilities are published for Pcre2 or by Pcre? Click the Watch button to subscribe.

Pcre
Vendor

Pcre2
Product

subscribe