oesa-2026-3224
Vulnerability from osv_openeuler
Perl 5 is a highly capable, feature-rich programming language with over 30 years of development. Perl 5 runs on over 100 platforms from portables to mainframes and is suitable for both rapid prototyping and large scale development projects.
Security Fix(es):
Perl versions through 5.43.10 have an integer overflow in S_measure_struct leading to an out-of-bounds heap read in pack and unpack.
S_measure_struct adds each item's size times its repeat count to a running total with no overflow check, so a large repeat count in a pack or unpack template wraps the signed SSize_t total negative. The @, X, and x position codes then guard their moves with a signed length comparison that passes when the length is negative, advancing the buffer pointer out of bounds.
A template derived from untrusted input can read heap memory past the buffer and return it to the caller.(CVE-2026-57432)
Storable versions before 3.41 for Perl have a signed integer overflow when deserializing a crafted SX_HOOK record.
retrieve_hook_common reads a signed 32-bit item count from an SX_HOOK record and calls av_extend with that count plus one. A count of I32_MAX wraps the addition to a negative value.
A crafted blob passed to thaw or retrieve triggers the overflow; av_extend receives the negative count and dies with a panic, terminating the deserialization.(CVE-2026-57433)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"perl-5.28.3-14.oe2003sp4.aarch64.rpm",
"perl-debuginfo-5.28.3-14.oe2003sp4.aarch64.rpm",
"perl-debugsource-5.28.3-14.oe2003sp4.aarch64.rpm",
"perl-devel-5.28.3-14.oe2003sp4.aarch64.rpm",
"perl-libs-5.28.3-14.oe2003sp4.aarch64.rpm"
],
"noarch": [
"perl-help-5.28.3-14.oe2003sp4.noarch.rpm"
],
"src": [
"perl-5.28.3-14.oe2003sp4.src.rpm"
],
"x86_64": [
"perl-5.28.3-14.oe2003sp4.x86_64.rpm",
"perl-debuginfo-5.28.3-14.oe2003sp4.x86_64.rpm",
"perl-debugsource-5.28.3-14.oe2003sp4.x86_64.rpm",
"perl-devel-5.28.3-14.oe2003sp4.x86_64.rpm",
"perl-libs-5.28.3-14.oe2003sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP4",
"name": "perl",
"purl": "pkg:rpm/openEuler/perl\u0026distro=openEuler-20.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "5.28.3-14.oe2003sp4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"perl-5.34.0-17.oe2203sp4.aarch64.rpm",
"perl-debuginfo-5.34.0-17.oe2203sp4.aarch64.rpm",
"perl-debugsource-5.34.0-17.oe2203sp4.aarch64.rpm",
"perl-devel-5.34.0-17.oe2203sp4.aarch64.rpm",
"perl-libs-5.34.0-17.oe2203sp4.aarch64.rpm"
],
"noarch": [
"perl-help-5.34.0-17.oe2203sp4.noarch.rpm"
],
"src": [
"perl-5.34.0-17.oe2203sp4.src.rpm"
],
"x86_64": [
"perl-5.34.0-17.oe2203sp4.x86_64.rpm",
"perl-debuginfo-5.34.0-17.oe2203sp4.x86_64.rpm",
"perl-debugsource-5.34.0-17.oe2203sp4.x86_64.rpm",
"perl-devel-5.34.0-17.oe2203sp4.x86_64.rpm",
"perl-libs-5.34.0-17.oe2203sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP4",
"name": "perl",
"purl": "pkg:rpm/openEuler/perl\u0026distro=openEuler-22.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "5.34.0-17.oe2203sp4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"perl-5.38.0-16.oe2403sp1.aarch64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp1.aarch64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp1.aarch64.rpm",
"perl-devel-5.38.0-16.oe2403sp1.aarch64.rpm",
"perl-libs-5.38.0-16.oe2403sp1.aarch64.rpm"
],
"noarch": [
"perl-help-5.38.0-16.oe2403sp1.noarch.rpm"
],
"src": [
"perl-5.38.0-16.oe2403sp1.src.rpm"
],
"x86_64": [
"perl-5.38.0-16.oe2403sp1.x86_64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp1.x86_64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp1.x86_64.rpm",
"perl-devel-5.38.0-16.oe2403sp1.x86_64.rpm",
"perl-libs-5.38.0-16.oe2403sp1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP1",
"name": "perl",
"purl": "pkg:rpm/openEuler/perl\u0026distro=openEuler-24.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "5.38.0-16.oe2403sp1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"perl-5.38.0-16.oe2403sp3.aarch64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp3.aarch64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp3.aarch64.rpm",
"perl-devel-5.38.0-16.oe2403sp3.aarch64.rpm",
"perl-libs-5.38.0-16.oe2403sp3.aarch64.rpm"
],
"noarch": [
"perl-help-5.38.0-16.oe2403sp3.noarch.rpm"
],
"src": [
"perl-5.38.0-16.oe2403sp3.src.rpm"
],
"x86_64": [
"perl-5.38.0-16.oe2403sp3.x86_64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp3.x86_64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp3.x86_64.rpm",
"perl-devel-5.38.0-16.oe2403sp3.x86_64.rpm",
"perl-libs-5.38.0-16.oe2403sp3.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP3",
"name": "perl",
"purl": "pkg:rpm/openEuler/perl\u0026distro=openEuler-24.03-LTS-SP3"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "5.38.0-16.oe2403sp3"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"perl-5.38.0-16.oe2403sp4.aarch64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp4.aarch64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp4.aarch64.rpm",
"perl-devel-5.38.0-16.oe2403sp4.aarch64.rpm",
"perl-libs-5.38.0-16.oe2403sp4.aarch64.rpm"
],
"noarch": [
"perl-help-5.38.0-16.oe2403sp4.noarch.rpm"
],
"src": [
"perl-5.38.0-16.oe2403sp4.src.rpm"
],
"x86_64": [
"perl-5.38.0-16.oe2403sp4.x86_64.rpm",
"perl-debuginfo-5.38.0-16.oe2403sp4.x86_64.rpm",
"perl-debugsource-5.38.0-16.oe2403sp4.x86_64.rpm",
"perl-devel-5.38.0-16.oe2403sp4.x86_64.rpm",
"perl-libs-5.38.0-16.oe2403sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP4",
"name": "perl",
"purl": "pkg:rpm/openEuler/perl\u0026distro=openEuler-24.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "5.38.0-16.oe2403sp4"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "Critical"
},
"details": "Perl 5 is a highly capable, feature-rich programming language with over 30 years of development. Perl 5 runs on over 100 platforms from portables to mainframes and is suitable for both rapid prototyping and large scale development projects.\r\n\r\nSecurity Fix(es):\n\nPerl versions through 5.43.10 have an integer overflow in S_measure_struct leading to an out-of-bounds heap read in pack and unpack.\n\nS_measure_struct adds each item\u0026apos;s size times its repeat count to a running total with no overflow check, so a large repeat count in a pack or unpack template wraps the signed SSize_t total negative. The @, X, and x position codes then guard their moves with a signed length comparison that passes when the length is negative, advancing the buffer pointer out of bounds.\n\nA template derived from untrusted input can read heap memory past the buffer and return it to the caller.(CVE-2026-57432)\n\nStorable versions before 3.41 for Perl have a signed integer overflow when deserializing a crafted SX_HOOK record.\n\nretrieve_hook_common reads a signed 32-bit item count from an SX_HOOK record and calls av_extend with that count plus one. A count of I32_MAX wraps the addition to a negative value.\n\nA crafted blob passed to thaw or retrieve triggers the overflow; av_extend receives the negative count and dies with a panic, terminating the deserialization.(CVE-2026-57433)",
"id": "OESA-2026-3224",
"modified": "2026-08-06T11:12:05Z",
"published": "2026-08-01T11:12:05Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3224"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-57432"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-57433"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "perl security update",
"upstream": [
"CVE-2026-57432",
"CVE-2026-57433"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.