Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain local or unsafe process access
-
ExploitTrigger pcre2_serialize_encode on compiled pattern
-
ImpactRead two-byte unintended memory disclosure from serialized output buffer
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Incorrect resource transfer between spheres
|
| Exploitation Conditions | Exploitation requires local access to a system running an application that invokes PCRE2's pcre2_serialize_encode API function. The vendor description explicitly qualifies that exploitation 'typically' occurs 'in a situation where the access available to the adversary is already unsafe,' meaning the attacker must already have an adversarial foothold - local process access, shared memory visibility, or a similar pre-existing unsafe condition - before this disclosure becomes reachable. Applications that do not call pcre2_serialize_encode are completely unaffected. High attack complexity (AC:H) reflects the dependency on this pre-existing unsafe access prerequisite rather than any cryptographic or timing constraint. The disclosure is bounded to exactly two bytes, further limiting its utility even when the access conditions are met. |
| Impact | The CVSS 2.9 Low score (AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N) accurately reflects the minimal operational risk of this vulnerability. The High attack complexity metric is grounded in the description's own qualifier that exploitation typically requires the adversary to already have unsafe access to the target process - meaning this two-byte leak adds marginal value in contexts where a more serious compromise is already likely underway. Even a mid-sized municipal IT team in mielec should treat this as a standard patch-cycle update rather than an emergency response. No CISA KEV listing exists, no public proof-of-concept exploit is documented, and EPSS data is absent from available intelligence sources. The information gain for an attacker is extremely limited: two bytes of memory in a pre-compromised scenario do not materially alter the threat landscape. The primary motivation to patch is maintaining a current, hardened library baseline rather than mitigating an acute exploitation risk. |
| Exploit ScenarioDerived | A local attacker who already possesses some form of unsafe access to a process that uses PCRE2 pattern serialization triggers or observes a call to pcre2_serialize_encode. The attacker then reads the resulting serialization buffer and recovers two bytes of memory content that should not have been included in the output, potentially including internal struct padding or adjacent buffer data. No public proof-of-concept exploit exists for this vulnerability. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 11, 2026
Two-byte memory disclosure in PCRE2's pcre2_serialize_encode function exposes a small amount of potentially sensitive memory to local adversaries who already have some form of unsafe process access. All PCRE2 releases prior to 10.48 are affected across all supported platforms, per CPE cpe:2.3:a:pcre:pcre2:*:*:*:*:*:*:*:*. No public exploit code or active exploitation has been identified; the vendor advisory explicitly qualifies that exploitation occurs in contexts where the adversary's access is already unsafe, substantially constraining real-world impact beyond the minimal two-byte leak.
RemediationAI
Vendor-released patch: PCRE2 10.48. Upgrade to PCRE2 10.48, available as a signed Git tag and signed tarball (with build attestation) at https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-10.48. This release also addresses several other security fixes including out-of-bounds reads and heap writes in JIT compilation, pattern conversion on 32-bit platforms, and DFA matching under heap limits, making upgrade broadly advisable on its own merits. If an immediate library upgrade is not feasible, applications that do not invoke pcre2_serialize_encode for pattern serialization are not exposed to this specific vulnerability; auditing and disabling pattern serialization code paths in your application eliminates the risk without a library change, with no functional trade-off if serialization is not required. No additional vendor-documented workarounds are available.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
PCRE2 (cpe:2.3:a:pcre:pcre2:*:*:*:*:*:*:*:*) is the successor to the original PCRE library, implementing Perl-compatible regular expressions in C and used as a foundational dependency across PHP, R, Wireshark, grep, nginx, MariaDB, and many other widely deployed software products. The pcre2_serialize_encode function serializes compiled regex pattern objects into a portable byte buffer for storage, caching, or inter-process transfer. CWE-669 (Incorrect Resource Transfer Between Spheres) captures the root cause class: data belonging to PCRE2's internal memory sphere - likely uninitialized padding bytes, adjacent struct fields, or alignment fill within the serialization buffer - crosses into the output buffer accessible to the caller or adversary. The precise identity of the two disclosed bytes is not publicly detailed in available references, but the constrained disclosure size (two bytes) and the scope-unchanged CVSS vector confirm this is a bounded information leak with no write or availability dimension.
Know when Pcre2 gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Local vector with high complexity reflects the pre-existing unsafe access prerequisite; only two bytes disclosed justifies C:L; no integrity or availability impact applies.
Primary rating from Vendor (mitre).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
The compile_branch function in pcre_compile.c in PCRE 8.x before 8.39 and pcre2_compile.c in PCRE2 before 10.22 mishandl
Heap-based buffer overflow in PCRE 8.34 through 8.37 and PCRE2 10.10 allows remote attackers to execute arbitrary code v
pcre2test.c in PCRE2 10.23 allows remote attackers to cause a denial of service (heap-based buffer overflow) or possibly
PCRE 7.8 and 8.32 through 8.37, and PCRE2 10.10 mishandle group empty matches, which might allow remote attackers to cau
PCRE2 before 10.30 has an out-of-bounds write caused by a stack-based buffer overflow in pcre2_match.c, related to a "pa
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the get_recurse_data_length() function of the
An out-of-bounds read vulnerability was discovered in the PCRE2 library in the compile_xclass_matchingpath() function of
libpcre1 in PCRE 8.40 and libpcre2 in PCRE2 10.23 allow remote attackers to cause a denial of service (segmentation viol
Out-of-bounds heap write in PCRE2 before 10.48 allows memory corruption via the DFA matching engine when a cached worksp
An incorrect free in the PCRE2 JIT fast path (all versions before 10.48) can corrupt process memory when an application
Out-of-bounds write in PCRE2, the regular-expression library embedded in PHP, nginx, Apache httpd, Git and numerous lang
An out-of-bounds heap write in PCRE2's pcre2_convert() pattern-conversion API affects releases before 10.48, but only on
EUVD-2026-75947
GHSA-mv4q-849q-vg78
NVD
CVE.org
EPSS
VulDB
Exploit-DB