CVE-2026-109448
Received Received - Intake

Integer Wraparound in psqlODBC SQLBindParameter

Vulnerability report for CVE-2026-109448, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-12

Last updated on: 2026-10-12

Assigner: PostgreSQL

Description

Integer wraparound in psqlODBC SQLBindParameter allows an application, or an attacker who controls how many parameters the application binds on one statement, to corrupt heap memory. psqlODBC stores the binding count in a signed 16-bit field. Binding parameter number 32768 wraps that count to -32768. Binding parameter 32769 then writes about 2.5 MB of zeros starting 1.25 MB before the binding array, which crashes the application or leaves it running on a corrupted heap. Applications that build parameter lists from untrusted input, such as an IN (?, ?, ...) list, are exposed. Versions before psqlODBC 18.00.0005 are affected.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-12
Last Modified
2026-10-12
Generated
2026-10-13
AI Q&A
2026-10-12
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
PostgreSQL psqlODBC 08.01.0102

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-190 The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number.
CWE-124 The product writes to a buffer using an index or pointer that references a memory location prior to the beginning of the buffer.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

Integer wraparound in psqlODBC SQLBindParameter allows an application or attacker to corrupt heap memory by binding more than 32,767 parameters to a statement. The parameter count is stored in a signed 16-bit field, causing an overflow when exceeding 32,767. Binding parameter 32,768 wraps the count to -32,768, leading to out-of-bounds writes that crash the application or leave it running on corrupted heap memory.

Detection Guidance

Check the version of psqlODBC installed on your system. If it is below 18.00.0005, the system is vulnerable. Run 'odbcinst -q -d' to list installed drivers and check their versions.

Impact Analysis

This vulnerability can cause application crashes due to heap corruption. On different platforms, it may result in aborts (Glibc builds) or access violations (Windows builds). Applications using untrusted input to determine parameter counts are particularly at risk, as attackers could exploit this to trigger crashes or manipulate memory.

Compliance Impact

This vulnerability could indirectly impact compliance with GDPR or HIPAA by causing application crashes or heap corruption, potentially leading to data processing interruptions or loss of availability. However, the primary compliance risk is not directly tied to the vulnerability itself but rather to how the affected application handles data integrity and availability during such failures.

Mitigation Strategies
  • Upgrade psqlODBC to version 18.00.0005 or later to patch the vulnerability.
  • Limit the number of parameters bound in a single statement to 32,767 or fewer to prevent integer overflow.
  • Review applications using psqlODBC to ensure they do not bind more than 32,767 parameters from untrusted input.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-109448. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart