CVE Catalog

CVE-2026-78183

CriticalCVSS 9.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.23%

14th percentile - higher than 14% of all known CVEs

Summary

A vulnerability in DBD::Pg version 3.21.0 for Perl: heap out-of-bounds write in quote_float. quote_float() allocates the length of the string + 1, but for special literals (NaN, Inf, +Inf, -Inf, Infinity, +Infinity, -Infinity) it emits the literal surrounded by quotes plus NULL, causing an overflow of 2 bytes. This can be reached by the $dbh->quote method, e.g., $dbh->quote("Infinity", DBI::SQL_NUMERIC). This regression was introduced in 3.21.0 by the quote.c rewrite.

Risk Assessment

An attacker can exploit the vulnerability to cause application crashes or potentially arbitrary code execution, potentially leading to system integrity compromise.

Recommendation

It is recommended to upgrade DBD::Pg to a version newer than 3.21.0 that includes a fix. Also avoid using quote with special literals if possible.

Original NVD description (English source)

DBD::Pg version 3.21.0 for Perl has a heap out-of-bounds write in quote_float. quote_float() allocates the length of the string + 1, which is the size of the bare numeric symbol plus NULL. But for special literals NaN, Inf, +Inf, -Inf, Infinity, +Infinity, -Infinity it emits the literal surrounded by quotes plus NULL, which is length + 3 bytes. Every recognised literal (case-insensitive) overflows by 2 bytes, a single quote and a NULL. This can be reached by the $dbh->quote method, for example $dbh->quote( "Infinity", DBI::SQL_NUMERIC ). This regression was introduced in 3.21.0 by the quote.c rewrite.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS