CVE-2026-8796
Sereal::Decoder versions before 5.005 for Perl allow heap out-of-bounds read via crafted input
Description
Sereal::Decoder versions before 5.005 for Perl allow heap out-of-bounds read via crafted input. In Perl/Decoder/srl_decoder.c, srl_read_object() and srl_read_hash() process a COPY tag, a back-reference whose target byte the decoder re-decodes as a fresh tag. When that target byte matches the SHORT_BINARY pattern (an inline string whose length is encoded in the low bits of the tag), the resulting read is not bounded to precede the COPY tag's own offset and can run past the end of the input buffer. An attacker controlled COPY offset can land inside a previously decoded value rather than on a tag boundary, planting a byte that the decoder reads as a SHORT_BINARY tag and consuming up to 31 following bytes from the heap as a class name (OBJECT path) or hash key (HASH path).
INFO
Published Date :
May 31, 2026, 8:16 p.m.
Last Modified :
July 22, 2026, 7:10 a.m.
Remotely Exploit :
Yes !
Source :
9b29abf9-4ab0-4765-b253-1875cd9b441e
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | HIGH | 134c704f-9b21-4f2e-91b3-4a467353bcc0 |
Solution
- Update Sereal::Decoder to version 5.005 or later.
- Apply vendor-released patches for Perl.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-8796.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-8796 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-8796
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-8796 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-8796 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Jul. 22, 2026
Action Type Old Value New Value Added Translation Title: YVES, Description: Las versiones de Sereal::Decoder anteriores a la 5.005 para Perl permiten una lectura fuera de límites de la memoria dinámica a través de una entrada especialmente diseñada. En Perl/Decoder/srl_decoder.c, srl_read_object() y srl_read_hash() procesan una etiqueta COPY, una retro-referencia cuyo byte objetivo el decodificador vuelve a decodificar como una nueva etiqueta. Cuando ese byte objetivo coincide con el patrón SHORT_BINARY (una cadena en línea cuya longitud está codificada en los bits bajos de la etiqueta), la lectura resultante no está limitada a preceder el propio desplazamiento de la etiqueta COPY y puede exceder el final del búfer de entrada. Un desplazamiento COPY controlado por el atacante puede caer dentro de un valor previamente decodificado en lugar de en un límite de etiqueta, plantando un byte que el decodificador lee como una etiqueta SHORT_BINARY y consumiendo hasta 31 bytes siguientes de la memoria dinámica como un nombre de clase (ruta OBJECT) o una clave hash (ruta HASH). -
CVE Modified by 9b29abf9-4ab0-4765-b253-1875cd9b441e
Jun. 17, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://github.com/Sereal/Sereal', 'vendor': 'YVES', 'product': 'Sereal::Decoder', 'versions': [{'status': 'affected', 'version': '0', 'lessThan': '5.005', 'versionType': 'custom'}], 'packageName': 'Sereal-Decoder', 'programFiles': ['Perl/Decoder/srl_decoder.c'], 'collectionURL': 'https://cpan.org/modules', 'defaultStatus': 'unaffected', 'programRoutines': [{'name': 'srl_read_object()'}, {'name': 'srl_read_hash()'}]}] -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jun. 17, 2026
Action Type Old Value New Value Added SSVC {'id': 'CVE-2026-8796', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-06-01T18:42:19.702527Z'} -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jun. 01, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:H -
CVE Modified by af854a3a-2127-422b-91ae-364da2661108
Jun. 01, 2026
Action Type Old Value New Value Added Reference http://www.openwall.com/lists/oss-security/2026/06/01/1 -
New CVE Received by 9b29abf9-4ab0-4765-b253-1875cd9b441e
May. 31, 2026
Action Type Old Value New Value Added Description Sereal::Decoder versions before 5.005 for Perl allow heap out-of-bounds read via crafted input. In Perl/Decoder/srl_decoder.c, srl_read_object() and srl_read_hash() process a COPY tag, a back-reference whose target byte the decoder re-decodes as a fresh tag. When that target byte matches the SHORT_BINARY pattern (an inline string whose length is encoded in the low bits of the tag), the resulting read is not bounded to precede the COPY tag's own offset and can run past the end of the input buffer. An attacker controlled COPY offset can land inside a previously decoded value rather than on a tag boundary, planting a byte that the decoder reads as a SHORT_BINARY tag and consuming up to 31 following bytes from the heap as a class name (OBJECT path) or hash key (HASH path). Added CWE CWE-125 Added Reference https://github.com/Sereal/Sereal/commit/303a2c69cdba80bf37a3ff43461e0aa78198a7a3.patch Added Reference https://metacpan.org/release/YVES/Sereal-Decoder-5.005/changes