Vulnerability · Published Aug 15, 2026 · Assigned by CPANSec
CVE-2026-73194DBI versions before 1.652 for Perl allow a heap out-of-bounds write via an unvalidated numeric placeholder that sets the binder counter in preparse
Critical 9.1
In plain English
A critical-severity out-of-bounds write in DBI. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 43% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
DBI versions before 1.652 for Perl allow a heap out-of-bounds write via an unvalidated numeric placeholder that sets the binder counter in preparse. preparse reserves seven output bytes per input byte, the width of the longest ':p99999' expansion. The ':N' branch parses the number with `atoi(src)` and assigns it to the binder counter with no range check, so a statement containing ':2147483648' leaves the counter negative (-2147483648 with glibc, where atoi wraps). Each following '?' then expands through `sprintf(start, ":p%d", idx++)` to ':p-2147483648', 14 bytes with the terminating NUL where the buffer budgets 7. The placeholder limit added in 1.650 tests the counter against 99,999, which a negative counter passes. Any caller that preparses an untrusted statement into ':pN' style placeholders gets a heap out-of-bounds write that grows with the number of '?' marks following the poisoned placeholder. The '?' and '%s' return styles compare the parsed number against the expected sequence and error out, and are unaffected.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:10 | perl-DBI | 1.643-26.el10_2.6 | ALSA-2026:70753 |
| AlmaLinux:8 | perl-DBI | 1.641-3.el8_10 | ALSA-2026:71608 |
| AlmaLinux:8 | perl-DBI | 1.641-10.module_el8.10.0+4282+4ee1dbd0 | ALSA-2026:69112 |
| AlmaLinux:9 | perl-DBI | 1.643-9.el9_8.6 | ALSA-2026:71422 |
| Debian:12 | libdbi-perl | 1.643-4+deb12u2 | DEBIAN-CVE-2026-73194 |
| Debian:13 | libdbi-perl | 1.652-2~deb13u1 | DEBIAN-CVE-2026-73194 |
| Debian:14 | libdbi-perl | 1.652-1 | DEBIAN-CVE-2026-73194 |
| Rocky Linux:10 | perl-DBI | 0:1.643-26.el10_2.6 | RLSA-2026:70753 |
| Rocky Linux:8 | perl-DBI | 0:1.641-10.module+el8.10.0+40328+0878361a | RLSA-2026:69112 |
| Rocky Linux:8 | perl-DBI | 0:1.641-3.el8_10 | RLSA-2026:71608 |
| Rocky Linux:8 | perl-DBI | 0:1.641-10.module+el8.10.0+40328+3ea70367 | RLSA-2026:69112 |
| Rocky Linux:8 | perl-DBI | 0:1.641-10.module+el8.10.0+40328+f4c7f87b | RLSA-2026:69112 |
| Rocky Linux:8 | perl-DBI | 0:1.641-10.module+el8.10.0+40328+bc090241 | RLSA-2026:69112 |
| Rocky Linux:9 | perl-DBI | 0:1.643-9.el9_8.6 | RLSA-2026:71422 |
| Ubuntu:22.04:LTS | libdbi-perl | 1.643-3ubuntu0.3 | USN-8841-1 |
| Ubuntu:22.04:LTS | libdbi-perl | 1.643-3ubuntu0.3 | UBUNTU-CVE-2026-73194 |
| Ubuntu:24.04:LTS | libdbi-perl | 1.643-4ubuntu0.3 | USN-8841-1 |
| Ubuntu:24.04:LTS | libdbi-perl | 1.643-4ubuntu0.3 | UBUNTU-CVE-2026-73194 |
| Ubuntu:26.04:LTS | libdbi-perl | 1.647-1ubuntu0.26.04.3 | UBUNTU-CVE-2026-73194 |
| Ubuntu:26.04:LTS | libdbi-perl | 1.647-1ubuntu0.26.04.3 | USN-8841-1 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| DBI | 0 – before 1.652 |
Weakness: CWE-1284, CWE-787 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H