Description
psqlODBC copies the reply to a large-object read (loread) into the application's buffer using the length sent by the server, without comparing it to the buffer size. A server not trusted under current SSL settings, or a man-in-the-middle, can return more bytes than the buffer holds and overwrite adjacent memory in the client process with server-chosen bytes. Fetching any large-object column is sufficient to trigger it. Versions before psqlODBC 18.00.0006 are affected.
Published: 2026-11-02
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: Memory corruption
Action: Immediate Patch
AI Analysis

Impact

psqlODBC receives large‑object data from the server and copies it into the client’s buffer using the length supplied by the server, but it does not verify that this length fits into the buffer. An attacker controlling the server, or a man‑in‑the‑middle that can inject server responses, can send data that exceeds the buffer size. The overrun overwrites adjacent memory with attacker‑chosen bytes, which can crash the client or lead to other unintended behavior. Accordingly, the vulnerability represents a classic buffer overflow that can compromise confidentiality, integrity, and availability of the client process.

Affected Systems

All installations of PostgreSQL’s psqlODBC driver older than version 18.00.0006 are affected. The vulnerability is present regardless of the PostgreSQL server version; the critical requirement is that the client uses a vulnerable psqlODBC build. The exploit is triggered simply by fetching any large‑object (lo) column, so any application that performs such a read from a server it does not fully trust is at risk.

Risk and Exploitability

The CVSS score is 7.5, indicating a high severity. EPSS information is not available, and the vulnerability is not yet listed in CISA’s KEV catalog, suggesting it has not been widely exploited in the wild as of the latest data. The attack vector is inferred: a remote attacker who can cause the client to request a large‑object from a server they can influence—such as by compromising the server or positioning themselves as a trusted MITM—can trigger the overflow. The attacker does not need to reach the client’s memory directly; manipulating the data sent by the server is sufficient. Because the overflow occurs during normal operation (any lo column read), the risk to users depends largely on whether the client connects to untrusted or MITM‑prone PostgreSQL servers.

Generated by OpenCVE AI on November 2, 2026 at 21:50 UTC.

Remediation

Vendor Solution

Upgrade to psqlODBC 18.00.0006 or later. CC_send_function receives the caller's buffer size, clamps the copy to it, and rejects short fixed-size replies.


Vendor Workaround

Do not fetch large-object (lo) columns from servers that are not authenticated with sslmode=verify-full or an equivalent GSS setting.


OpenCVE Recommended Actions

  • Upgrade to psqlODBC 18.00.0006 or later.
  • Ensure connections to PostgreSQL servers use strict security settings (sslmode=verify-full, or an equivalent GSS setting) to prevent untrusted or MITM servers from sending oversized data.
  • Avoid fetching large‑object columns from PostgreSQL servers that are not authenticated with sslmode=verify-full or an equivalent GSS setting; remove or disable lo column usage if possible.

Generated by OpenCVE AI on November 2, 2026 at 21:50 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 02 Nov 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 02 Nov 2026 19:15:00 +0000

Type Values Removed Values Added
Description psqlODBC copies the reply to a large-object read (loread) into the application's buffer using the length sent by the server, without comparing it to the buffer size. A server not trusted under current SSL settings, or a man-in-the-middle, can return more bytes than the buffer holds and overwrite adjacent memory in the client process with server-chosen bytes. Fetching any large-object column is sufficient to trigger it. Versions before psqlODBC 18.00.0006 are affected.
Title psqlODBC large-object read overflows the application buffer
Weaknesses CWE-120
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: PostgreSQL

Published:

Updated: 2026-11-02T19:43:04.416Z

Reserved: 2026-10-30T19:25:18.919Z

Link: CVE-2026-120057

cve-icon Vulnrichment

Updated: 2026-11-02T19:34:55.464Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-11-02T19:18:02.700

Modified: 2026-11-02T20:17:38.787

Link: CVE-2026-120057

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-02T22:00:06Z

Weaknesses
  • CWE-120

    Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')