Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessInfluence FetchHashKeyName attribute to numeric value
-
DeliveryApplication calls fetchrow_hashref
-
ExploitSvPVX reads bogus PV pointer on IV/NV
-
ExecutionProcess crash or memory misread
-
ImpactDenial of service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Type safety enforcement
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a Perl application built on DBI that assigns a non-string (integer/IV or float/NV) scalar to the |
| Impact | This is a type-confusion bug (CWE-843) in the Perl DBI module's |
| Exploit ScenarioDerived | A Perl application using DBI sets |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Sep 30, 2026
Type confusion in the Perl DBI module's fetchrow_hashref implementation allows an application that assigns a non-string scalar (integer/IV or float/NV) to the FetchHashKeyName attribute and then calls fetchrow_hashref to trigger an out-of-bounds memory read, typically crashing the Perl process (denial of service) and, in principle, exposing adjacent heap memory in error output. Affected are DBI releases before 1.654 on any platform where the module is installed; the CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5) rates this unauthenticated and remotely triggerable, though independent assessment raises attack complexity to AC:H because exploitation requires the hosting application to propagate attacker-controlled data into a statement-handle attribute that is normally set by the application itself. No public exploit code has been identified at time of analysis, no confirmed active exploitation (not in CISA KEV), and EPSS is low at 0.21% (10th percentile), reflecting the narrow precondition of application-specific attribute misuse.
Earlier versions of this analysis (1)
The FetchHashKeyName fix reported through the Ubuntu vendor channel addresses mishandling of hash keys whose internal representation is an integer (IV) or numeric (NV) scalar rather than a string, with the practical effect that a key name can be fetched incorrectly on that code path; the assessed impact is bounded to limited information disclosure and limited availability loss rather than code execution, data modification, or privilege escalation (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L). Exploitation is input-dependent and narrow: an application, or attacker-supplied data flowing into it, must key a hash by a numeric scalar, an atypical data shape that is why the assessed vector carries high attack complexity, and no authentication requirement can be stated because no PR metric was supplied. No public exploit has been identified at time of analysis - there is no POC reference, no CISA KEV listing, and no EPSS score - and the exact affected package, its version range, and whether the trigger is reachable remotely rather than only locally are not confirmed in the available data.
RemediationAI
Upgrade to Perl DBI 1.654 or later, the vendor-released patch version documented at https://metacpan.org/release/HMBRAND/DBI-1.654/changes and tracked by advisory https://github.com/perl5-dbi/dbi/security/advisories/GHSA-f4qx-mr9m-q2hq; the underlying fix is commit 70962570212dc60a5428098cf2a0462ad5945851 (patch: https://github.com/perl5-dbi/dbi/commit/70962570212dc60a5428098cf2a0462ad5945851.patch), which substitutes SvPV_nolen for SvPVX in DBI.xs. Operators who cannot immediately upgrade should ensure FetchHashKeyName is only ever assigned the literal string values 'NAME', 'NAME_uc', or 'NAME_lc' - e.g. by validating or coercing any externally influenced value with an explicit string cast before it reaches a statement or database handle attribute - since the defect only triggers when a non-string scalar reaches that attribute; this is a code-level compensating control and requires auditing application and library code for dynamic attribute assignment, and it carries the trade-off that it does not protect against unfixed third-party code setting the attribute numerically. Additionally, fail-fast hardening can be applied by wrapping fetchrow_hashref calls in eval blocks and enabling RaiseError so that any malformed attribute surfaces as an exception rather than an out-of-bounds read, though this converts a crash into a caught error only for the calling code and does not remediate the underlying memory-safety defect. Distribution maintainers and container image owners should rebuild or pin patched DBI packages, since the reported-by vendor:ubuntu signal indicates packaged versions in distributions may lag the upstream 1.654 release.
Affected ProductsAI
The perl5-dbi/dbi (Perl DBI) module, all versions before 1.654, across every platform and Perl interpreter where the XS code is compiled; the project's own advisory is at https://github.com/perl5-dbi/dbi/security/advisories/GHSA-f4qx-mr9m-q2hq and the fixed-release changelog is at https://metacpan.org/release/HMBRAND/DBI-1.654/changes, corresponding to ENISA EUVD-2026-88343. Because DBI is a foundational database-interface library, downstream consumers include any Perl application using DBI drivers (DBD::mysql, DBD::Pg, DBD::SQLite, DBD::Oracle, etc.), and OS distribution packages that ship an older DBI remain exposed until rebuilt - the vulnerability was reported through the vendor:ubuntu channel, indicating distribution-level exposure. No explicit CPE strings were supplied with the source data, so affected status should be determined by DBI module version (perl -MDBI -e 'print $DBI::VERSION') rather than by CPE matching.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CVE-2026-88816 is a CWE-843 type-confusion defect in the XS (C) portion of the Perl DBI distribution, specifically in DBI.xs around the fetchrow_hashref implementation. The routine read the value of the FetchHashKeyName attribute into a C string with SvPVX(kn) without first forcing stringification; SvPVX only returns the internal PV buffer and performs no stringification or magic dispatch, so when the attribute holds an integer (IV) or floating-point (NV) scalar, the macro reinterprets the scalar's numeric body as a character pointer, producing an out-of-bounds read. The upstream fix replaces SvPVX(kn) with SvPV_nolen(kn), which invokes the normal stringification path (including get-magic) and therefore guarantees a valid, NUL-terminated string before use. The same commit (70962570212dc60a5428098cf2a0462ad5945851) also addresses the sibling issue CVE-2026-88815 (DBI::sql_type_cast on IV/NV), confirming a common root cause class of missing SV stringification in the module's XS attribute handling. A regression test (t/06attrs.t) was added that sets FetchHashKeyName = 42 and asserts that fetchrow_hashref now dies with 'Can't use attribute ...' rather than misinterpreting the scalar, and dbixs_rev.h was bumped from revision 1833 to 1834.
Know when Perl 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:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
AC:H because triggering requires the atypical condition of a non-string FetchHashKeyName value reaching fetchrow_hashref; impact is a crash/DoS (A:H) with no confirmed confidentiality or integrity effect.
AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (vendor:ubuntu).
CVSS VectorVendor: vendor:ubuntu
Lifecycle Timeline
1DescriptionCVE.org
[Fix FetchHashKeyName on IV/NV]
Technical POC Analysis
CWE-843 (Access of Resource Using Incompatible Type / type confusion); the advisory additionally tags CWE-125 (out-of-bounds read).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
The Perl DBI module, versions before 1.654, contains a type confusion flaw that can crash applications using the fetchrow_hashref method, leading to denial-of-service disruptions for organizations relying on Perl-based systems. Although no public exploit code has been identified and exploitation requires specific application coding patterns, the widespread use of DBI in enterprise and legacy applications means unpatched systems remain vulnerable to availability impacts. Leadership should prioritize patching to maintain service uptime and avoid potential operational disruptions.
Apply vendor patch.
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
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
The _compile function in Maketext.pm in the Locale::Maketext implementation in Perl before 5.17.7 does not properly hand
Stack-based buffer overflow in the CPerlHost::Add method in win32/perlhost.h in Perl before 5.24.3-RC1 and 5.26.x before
The VDir::MapPathA and VDir::MapPathW functions in Perl 5.22 allow remote attackers to cause a denial of service (out-of
Perl before 5.26.3 has a buffer overflow via a crafted regular expression that triggers invalid write operations. Rated
Perl before 5.26.3 and 5.28.0 before 5.28.1 has a buffer overflow via a crafted regular expression that triggers invalid
Perl before 5.26.3 has a buffer over-read via a crafted regular expression that triggers disclosure of sensitive informa
Perl might allow context-dependent attackers to bypass the taint protection mechanism in a child process via duplicate e
CPAN.pm before 2.35 does not verify TLS certificates when downloading distributions over HTTPS. Rated high severity (CVS
The XSLoader::load method in XSLoader in Perl does not properly locate .so files when called in a string eval, which mig
In Perl through 5.26.2, the Archive::Tar module allows remote attackers to bypass a directory-traversal protection mecha
Perl before 5.30.3 on 32-bit platforms allows a heap-based buffer overflow because nested regular expression quantifiers
The (1) S_reghop3, (2) S_reghop4, and (3) S_reghopmaybe3 functions in regexec.c in Perl before 5.24.0 allow context-depe
Same technique Information Disclosure
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Fixed |
| openSUSE Tumbleweed | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Micro 6.2 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP6 | Affected |
| SUSE Linux Enterprise Server 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE CaaS Platform 3.0 | Affected |
| SUSE CaaS Platform 4.0 | Affected |
| SUSE Enterprise Storage 6 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Affected |
| SUSE Linux Enterprise Desktop 12 | Affected |
| SUSE Linux Enterprise Desktop 12 SP1 | Affected |
| SUSE Linux Enterprise Desktop 12 SP2 | Affected |
| SUSE Linux Enterprise Desktop 12 SP3 | Affected |
| SUSE Linux Enterprise Desktop 12 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 | Affected |
| SUSE Linux Enterprise Desktop 15 SP1 | Affected |
| SUSE Linux Enterprise Desktop 15 SP2 | Affected |
| SUSE Linux Enterprise Desktop 15 SP3 | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15-LTSS | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP3 | Affected |
| SUSE Linux Enterprise Point of Sale 12 SP2-CLIENT | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Affected |
| SUSE Linux Enterprise Server 12 | Affected |
| SUSE Linux Enterprise Server 12 SP1 | Affected |
| SUSE Linux Enterprise Server 12 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP2 | Affected |
| SUSE Linux Enterprise Server 12 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 12 SP2-ESPOS | Affected |
| SUSE Linux Enterprise Server 12 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP3 | Affected |
| SUSE Linux Enterprise Server 12 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 12 SP3-ESPOS | Affected |
| SUSE Linux Enterprise Server 12 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP4 | Affected |
| SUSE Linux Enterprise Server 12 SP4-ESPOS | Affected |
| SUSE Linux Enterprise Server 12 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 12-LTSS | Affected |
| SUSE Linux Enterprise Server 15 | Affected |
| SUSE Linux Enterprise Server 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server 15-LTSS | Affected |
| SUSE Linux Enterprise Server for Raspberry Pi 12 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Manager Proxy 4.0 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Affected |
| SUSE Manager Proxy 4.3 | Affected |
| SUSE Manager Proxy LTS 4.3 | Affected |
| SUSE Manager Retail Branch Server 4.0 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Affected |
| SUSE Manager Retail Branch Server 4.3 | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Affected |
| SUSE Manager Server 4.0 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Affected |
| SUSE Manager Server 4.3 | Affected |
| SUSE Manager Server LTS 4.3 | Affected |
| SUSE OpenStack Cloud 7 | Affected |
| SUSE OpenStack Cloud 8 | Affected |
| SUSE OpenStack Cloud 9 | Affected |
| SUSE OpenStack Cloud Crowbar 8 | Affected |
| SUSE OpenStack Cloud Crowbar 9 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
| SUSE Linux Enterprise Server for NVIDIA 16.1 | Affected |
| suse/manager/5.0/x86_64/server suse/mariadb suse/mariadb:10.11 suse/mariadb:12.3 suse/multi-linux-manager/5.1/x86_64/server suse/multi-linux-manager/5.2/x86_64/server suse/rmt-mariadb | Affected |
EUVD-2026-88343
NVD
CVE.org
EPSS
GitHub
Exploit-DB