Every CVE Search/ Get API key

CVE-2022-1587

An out-of-bounds read vulnerability was discovered in the PCRE2 library in the...

9.1 CriticalFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
High

Exploit likelihood

2.77%Up 1.9 points since May 17, 2022
90%50%10%1%

What each source reports

NVD Score used 9.1

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.

Record
CVE-2022-1587
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
CVSS 2.0
6.4 MediumAV:N/AC:L/Au:N/C:P/I:N/A:P
Weakness
CWE-125
Updated
2026-11-02
CVE List No score

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.

Record
CVE-2022-1587
Weakness
CWE-125
Updated
2026-11-02
EUVDEUVD-2022-24877 No score

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.

Record
EUVD-2022-24877
Updated
2026-11-03
GitHub AdvisoriesGHSA-jmvm-hj36-w5hc 9.1

An out-of-bounds read vulnerability was discovered in the PCRE2 library in the...

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.

Record
GHSA-jmvm-hj36-w5hc
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Weakness
CWE-125
Updated
2026-11-02
OSVALPINE-CVE-2022-1587 9.1

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.

Record
ALPINE-CVE-2022-1587
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Updated
2026-11-03
OSVBELL-CVE-2022-1587 9.1

CVE-2022-1587 does not affect BellSoft software

Record
BELL-CVE-2022-1587
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Updated
2026-11-02
Show 13 moreShow less
OSVDEBIAN-CVE-2022-1587 9.1

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.

Record
DEBIAN-CVE-2022-1587
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Updated
2026-11-03
OSVOESA-2022-1686 9.1

pcre2 security update

PCRE2 is a re-working of the original PCRE1 library to provide an entirely new API. Since its initial release in 2015, there has been further development of the code and it now differs from PCRE1 in more than just the API. PCRE2 is written in C, and it has its own API. There are three sets of functions, one for the 8-bit library, which processes strings of bytes, one for the 16-bit library, which processes strings of 16-bit values, and one for the 32-bit library, which processes strings of 32-bit values. Unlike PCRE1, there are no C++ wrappers.

Security Fix(es):

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.(CVE-2022-1586)

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.(CVE-2022-1587)

Record
OESA-2022-1686
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Updated
2026-11-02
OSVRHSA-2022:5251 7.5

Red Hat Security Advisory: pcre2 security update

Record
RHSA-2022:5251
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRLSA-2022:5251 7.5

Moderate: pcre2 security update

The pcre2 package contains a new generation of the Perl Compatible Regular Expression libraries for implementing regular expression pattern matching using the same syntax and semantics as Perl.

Security Fix(es):

  • pcre2: Out-of-bounds read in compile_xclass_matchingpath in pcre2_jit_compile.c (CVE-2022-1586)

  • pcre2: Out-of-bounds read in get_recurse_data_length in pcre2_jit_compile.c (CVE-2022-1587)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2022:5251
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2022-1587 9.1

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.

Record
UBUNTU-CVE-2022-1587
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
Updated
2026-11-03
OSV No score

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.

Record
CVE-2022-1587
Weakness
CWE-125
Updated
2026-11-02
OSVMGASA-2022-0417 No score

Updated pcre packages fix security vulnerability

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. (CVE-2022-1586)

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. (CVE-2022-1587)

Record
MGASA-2022-0417
Updated
2026-11-02
OSVopenSUSE-SU-2022:2649-1 No score

Security update for pcre2

This update for pcre2 fixes the following issues:

  • CVE-2019-20454: Fixed out-of-bounds read in JIT mode when \X is used in non-UTF mode (bsc#1164384).
  • CVE-2022-1587: Fixed out-of-bounds read due to bug in recursions (bsc#1199235).
Record
openSUSE-SU-2022:2649-1
Updated
2026-11-02
OSVSUSE-SU-2022:2565-1 No score

Security update for pcre2

This update for pcre2 fixes the following issues:

  • CVE-2022-1587: Fixed out-of-bounds read due to bug in recursions (bsc#1199235).
Record
SUSE-SU-2022:2565-1
Updated
2026-11-02
OSVSUSE-SU-2022:2566-1 No score

Security update for pcre2

This update for pcre2 fixes the following issues:

  • CVE-2022-1587: Fixed out-of-bounds read due to bug in recursions (bsc#1199235).
Record
SUSE-SU-2022:2566-1
Updated
2026-11-02
OSVSUSE-SU-2022:2649-1 No score

Security update for pcre2

This update for pcre2 fixes the following issues:

  • CVE-2019-20454: Fixed out-of-bounds read in JIT mode when \X is used in non-UTF mode (bsc#1164384).
  • CVE-2022-1587: Fixed out-of-bounds read due to bug in recursions (bsc#1199235).
Record
SUSE-SU-2022:2649-1
Updated
2026-11-02
OSVUSN-5627-1 No score

pcre2 vulnerabilities

It was discovered that PCRE incorrectly handled memory when handling certain regular expressions. An attacker could possibly use this issue to cause applications using PCRE to expose sensitive information.

Record
USN-5627-1
Updated
2026-11-02
OSVUSN-5627-2 No score

pcre2 vulnerabilities

USN-5627-1 fixed several vulnerabilities in PCRE. This update provides the corresponding fixes for Ubuntu 18.04 ESM.

Original advisory details:

It was discovered that PCRE incorrectly handled memory when handling certain regular expressions. An attacker could possibly use this issue to cause applications using PCRE to expose sensitive information.

Record
USN-5627-2
Updated
2026-11-02

Affected products

Show 1 moreShow less

Affected packages

Affected packages
PackageAffectedFixed
pcre2
Alpine:v3.13
before 10.36-r1
10.36-r1
pcre2
Alpine:v3.14
before 10.36-r1
10.36-r1
pcre2
Alpine:v3.15
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.16
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.17
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.18
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.19
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.20
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.21
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.22
before 10.40-r0
10.40-r0
Show 69 moreShow less
Affected packages
PackageAffectedFixed
pcre2
Alpine:v3.23
before 10.40-r0
10.40-r0
pcre2
Alpine:v3.24
before 10.40-r0
10.40-r0
pcre2
Debian:12
before 10.40-1
10.40-1
pcre2
Debian:13
before 10.40-1
10.40-1
pcre2
Debian:14
before 10.40-1
10.40-1
pcre2
Debian:10
From an advisory covering 3 CVEs
before 10.32-5+deb10u1, plus listed versions
10.32-5
10.32-5+deb10u1
pcre
Mageia:8
From an advisory covering 2 CVEs
before 8.44-1.1.mga8
8.44-1.1.mga8
pcre2
Mageia:8
From an advisory covering 2 CVEs
before 10.36-1.1.mga8
10.36-1.1.mga8
pcre2
openEuler:20.03-LTS-SP1
From an advisory covering 2 CVEs
before 10.35-2.oe1
10.35-2.oe1
pcre2
openEuler:20.03-LTS-SP3
From an advisory covering 2 CVEs
before 10.35-2.oe1
10.35-2.oe1
pcre2
openEuler:22.03-LTS
From an advisory covering 2 CVEs
before 10.39-2.oe2203
10.39-2.oe2203
pcre2-debuginfo
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-debugsource
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-devel
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-tools-debuginfo
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf16
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf16-debuginfo
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf32
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf32-debuginfo
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-debuginfo
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-debugsource
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-syntax
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-tools-debuginfo
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf16-debuginfo
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2-utf32-debuginfo
Red Hat:enterprise_linux:9::baseos
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2
Rocky Linux:9
From an advisory covering 2 CVEs
before 0:10.37-5.el9_0
0:10.37-5.el9_0
pcre2
SUSE:OpenStack Cloud 9
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:OpenStack Cloud Crowbar 9
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server for SAP Applications 12 SP4
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Software Development Kit 12 SP5
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server 12 SP2-BCL
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server 12 SP3-BCL
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server 12 SP4-LTSS
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server 12 SP5
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Server for SAP Applications 12 SP5
before 10.34-1.10.1
10.34-1.10.1
pcre2
SUSE:Linux Enterprise Module for Basesystem 15 SP4
before 10.39-150400.4.6.1
10.39-150400.4.6.1
pcre2
openSUSE:Leap 15.4
before 10.39-150400.4.6.1
10.39-150400.4.6.1
pcre2
SUSE:Linux Enterprise Module for Basesystem 15 SP3
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15-ESPOS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server 15-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server 15 SP1-BCL
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server 15 SP1-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server 15 SP2-BCL
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server 15 SP2-LTSS
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server for SAP Applications 15
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server for SAP Applications 15 SP1
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Server for SAP Applications 15 SP2
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Manager Proxy 4.1
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Manager Retail Branch Server 4.1
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Manager Server 4.1
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Micro 5.1
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Linux Enterprise Micro 5.2
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Enterprise Storage 6
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
SUSE:Enterprise Storage 7
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
openSUSE:Leap 15.3
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1
pcre2
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
10.20-110.20-210.20-310.21-110.21-1ubuntu0.1~esm1
None known
pcre2
Ubuntu:Pro:18.04:LTS
before 10.31-2ubuntu0.1~esm1, plus listed versions
10.22-310.22-410.22-510.22-610.31-2
10.31-2ubuntu0.1~esm1
pcre2
Ubuntu:20.04:LTS
before 10.34-7ubuntu0.1, plus listed versions
10.32-510.34-7
10.34-7ubuntu0.1
pcre2
Ubuntu:22.04:LTS
before 10.39-3ubuntu0.1, plus listed versions
10.37-0ubuntu210.39-310.39-3build1
10.39-3ubuntu0.1
pcre2
Ubuntu:20.04:LTS
From an advisory covering 2 CVEs
before 10.34-7ubuntu0.1, plus listed versions
10.32-510.34-7
10.34-7ubuntu0.1
pcre2
Ubuntu:22.04:LTS
From an advisory covering 2 CVEs
before 10.39-3ubuntu0.1, plus listed versions
10.37-0ubuntu210.39-310.39-3build1
10.39-3ubuntu0.1
pcre2
Ubuntu:Pro:18.04:LTS
From an advisory covering 2 CVEs
before 10.31-2ubuntu0.1~esm1, plus listed versions
10.22-310.22-410.22-510.22-610.31-2
10.31-2ubuntu0.1~esm1
pcre2
openSUSE:Leap Micro 5.2
From an advisory covering 2 CVEs
before 10.31-150000.3.12.1
10.31-150000.3.12.1

History

History
RecordedChangedSources
affected
affected, factsOSV
aliases, productsEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-1587 is a critical vulnerability (CVSS 9.1) in Pcre Pcre2, published May 16, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.77%, the 86th percentile. Fixed in pcre2 10.36-r1.

References

Show 45 moreShow less
MoveEnter Open