Description
For updatable cursors, which are enabled by default, psqlODBC adds hidden ctid and, for tables with OIDs, oid columns to the query. It copies each value into a 32-byte stack buffer using the length the server sent, without checking it against the buffer size, so a value of 32 bytes or more writes past the buffer. A server not trusted under current SSL settings can send such a value. So can any database user who can create a view with its own column named ctid that the application reads with an updatable cursor. Builds with _FORTIFY_SOURCE abort; other builds overwrite adjacent stack memory. Versions before psqlODBC 18.00.0006 are affected.
Published: 2026-11-02
Score: 5.9 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Analysis and contextual insights are available on OpenCVE Cloud.

Remediation

Vendor Solution

Upgrade to psqlODBC 18.00.0006 or later. The driver rejects a keyset value that does not fit its buffer, and the query fails with SQLSTATE HY000.


Vendor Workaround

Set UpdatableCursors=0 in the connection string or DSN, so the driver does not add the keyset columns.

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': 'partial'}, 'version': '2.0.3'}


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

Type Values Removed Values Added
Description For updatable cursors, which are enabled by default, psqlODBC adds hidden ctid and, for tables with OIDs, oid columns to the query. It copies each value into a 32-byte stack buffer using the length the server sent, without checking it against the buffer size, so a value of 32 bytes or more writes past the buffer. A server not trusted under current SSL settings can send such a value. So can any database user who can create a view with its own column named ctid that the application reads with an updatable cursor. Builds with _FORTIFY_SOURCE abort; other builds overwrite adjacent stack memory. Versions before psqlODBC 18.00.0006 are affected.
Title psqlODBC stack buffer overflow copying ctid and oid values for updatable cursors
Weaknesses CWE-121
CWE-787
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: PostgreSQL

Published:

Updated: 2026-11-02T19:33:08.506Z

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

Link: CVE-2026-120067

cve-icon Vulnrichment

Updated: 2026-11-02T19:33:00.937Z

cve-icon NVD

Status : Awaiting Analysis

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

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

Link: CVE-2026-120067

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.

Weaknesses