<div class="container">
<h1>Security update for psqlODBC</h1>
<table class="table table-striped table-bordered">
<tbody>
<tr>
<th>Announcement ID:</th>
<td>SUSE-SU-2026:5191-1</td>
</tr>
<tr>
<th>Release Date:</th>
<td>2026-11-11T12:27:48Z</td>
</tr>
<tr>
<th>Rating:</th>
<td>important</td>
</tr>
<tr>
<th>References:</th>
<td>
<ul>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1285073">bsc#1285073</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289252">bsc#1289252</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289253">bsc#1289253</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289254">bsc#1289254</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289255">bsc#1289255</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289256">bsc#1289256</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289257">bsc#1289257</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289258">bsc#1289258</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289259">bsc#1289259</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289260">bsc#1289260</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289261">bsc#1289261</a>
</li>
<li style="display: inline;">
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289262">bsc#1289262</a>
</li>
</ul>
</td>
</tr>
<tr>
<th>
Cross-References:
</th>
<td>
<ul>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-109448.html">CVE-2026-109448</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120057.html">CVE-2026-120057</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120058.html">CVE-2026-120058</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120059.html">CVE-2026-120059</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120060.html">CVE-2026-120060</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120061.html">CVE-2026-120061</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120062.html">CVE-2026-120062</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120063.html">CVE-2026-120063</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120064.html">CVE-2026-120064</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120065.html">CVE-2026-120065</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120066.html">CVE-2026-120066</a>
</li>
<li style="display: inline;">
<a href="https://www.suse.com/security/cve/CVE-2026-120067.html">CVE-2026-120067</a>
</li>
</ul>
</td>
</tr>
<tr>
<th>CVSS scores:</th>
<td>
<ul class="list-group">
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-109448</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-109448</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120057</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120057</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120058</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120058</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120059</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">6.8</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120059</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">6.8</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120060</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120060</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120061</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120061</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120062</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120062</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120063</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120063</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120064</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120064</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.5</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120065</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">7.1</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120065</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">7.1</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120066</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">5.3</span>
<span class="cvss-vector">CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120066</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">5.3</span>
<span class="cvss-vector">CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120067</span>
<span class="cvss-source">
(
SUSE
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H</span>
</li>
<li class="list-group-item">
<span class="cvss-reference">CVE-2026-120067</span>
<span class="cvss-source">
(
NVD
):
</span>
<span class="cvss-score">5.9</span>
<span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H</span>
</li>
</ul>
</td>
</tr>
<tr>
<th>Affected Products:</th>
<td>
<ul class="list-group">
<li class="list-group-item">Basesystem Module 15-SP7</li>
<li class="list-group-item">openSUSE Leap 15.6</li>
<li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP7</li>
<li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP7</li>
<li class="list-group-item">SUSE Linux Enterprise Server 15 SP6</li>
<li class="list-group-item">SUSE Linux Enterprise Server 15 SP6 LTSS</li>
<li class="list-group-item">SUSE Linux Enterprise Server 15 SP7</li>
<li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP6</li>
<li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP7</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>An update that solves 12 vulnerabilities can now be installed.</p>
<h2>Description:</h2>
<p>This update for psqlODBC fixes the following issues:</p>
<ul>
<li>CVE-2026-109448: denial of service via integer wraparound in SQLBindParameter (bsc#1285073).</li>
<li>CVE-2026-120057: large-object read overflows the application buffer (bsc#1289252).</li>
<li>CVE-2026-120058: row cache overflow when a later FETCH changes the column count (bsc#1289253).</li>
<li>CVE-2026-120059: driver uses a server-supplied column name as a format string (bsc#1289254).</li>
<li>CVE-2026-120060: driver does not validate server-supplied counts and lengths (bsc#1289255).</li>
<li>CVE-2026-120061: ODBC escape parser stack buffer overflow (bsc#1289256).</li>
<li>CVE-2026-120062: SQL injection through SQLSpecialColumns table and schema names (bsc#1289257).</li>
<li>CVE-2026-120063: stack buffer overflow when quoting long schema and table names (bsc#1289258).</li>
<li>CVE-2026-120064: driver does not validate column numbers and row indexes in binding and descriptor functions
(bsc#1289259).</li>
<li>CVE-2026-120065: driver does not escape a server-supplied column name in its updatable-cursor queries (bsc#1289260).</li>
<li>CVE-2026-120066: log files are created with default permissions at a predictable path and follow symbolic links
(bsc#1289261).</li>
<li>CVE-2026-120067: stack buffer overflow when reading the keyset (ctid/oid) columns of an updatable cursor
(bsc#1289262).</li>
</ul>
<p>Changes for psqlODBC:</p>
<ul>
<li>Update to 18.00.0006:</li>
<li>https://odbc.postgresql.org/docs/release.html</li>
<li>Hardening: SQLSetDescRecW stored a freed buffer and the address
of a local variable as deferred bound data. It now stores the
application's pointers, as SQLSetDescRec does.</li>
<li>Hardening: SQLColumns returned uninitialized relkind and table
OID values when the table query returned no rows.</li>
<li>Hardening: convert_linefeeds could dereference a NULL pointer
in one build configuration.</li>
<li>Hardening: secure_sscanf limits an over-wide %Ns width,
msgtowstr checks for a zero buffer length, and the MSDTC
connect-string append is bounded.</li>
<li>Update to 18.00.0005:</li>
<li>https://odbc.postgresql.org/docs/release.html</li>
<li>Fix the placeholder cast being truncated from parameter 1000
on, which failed with 'type "timestam" does not exist'.</li>
<li>Report the largest column size instead of SQL_NO_TOTAL (-4) as
COLUMN_SIZE for bytea in SQLGetTypeInfo, which broke bytea
parameters through MSDASQL.</li>
<li>Update to 18.00.0004:</li>
<li>Fix the result-conversions regression test on big-endian
systems.</li>
<li>Update to 18.00.0003:</li>
<li>Report SQLSTATE 22003 for out-of-range integer conversions
instead of silently returning the wrapped low bits.</li>
<li>Fix statement level rollback (Protocol=7.4-2) discarding the
whole transaction on a syntax error.</li>
<li>Do not wrap internal queries in a savepoint at
rollback-on-error level 0 (Protocol=7.4-0), which lost
transactions on servers without SAVEPOINT support.</li>
<li>Redact the database password (ODBC PWD and libpq pqopt
password) in debug logs.</li>
<li>Fix hang on COPY ... FROM STDIN / TO STDOUT: report it as
unsupported and keep the connection usable.</li>
<li>Fix 'infinity'/'-infinity' dates being silently returned as
today's date.</li>
<li>Document the connection string escaping rules.</li>
<li>Update to 18.00.0002:</li>
<li>Use a signed type for the error status.</li>
<li>Redact sensitive connection parameters in the driver logs.</li>
<li>Fix double free / heap corruption during SQLDisconnect
cleanup.</li>
<li>Clear PGresults from per-query rollback.</li>
<li>Validate UTF-16 surrogate pairs before combining them.</li>
<li>Pass SQLSetDescRec field values correctly.</li>
<li>Avoid reading before leading string literals.</li>
<li>Detach freed application descriptors from statements.</li>
<li>Reject invalid SQLPutData lengths.</li>
<li>Reject overlong cursor names.</li>
<li>Fix version reporting.</li>
<li>Handle ARD bookmark allocation failure.</li>
<li>Validate percent escapes before decoding connection string
values.</li>
<li>Avoid reading past the end of conn_settings.</li>
<li>Fix stack buffer overflow in getPrecisionPart().</li>
<li>Fix SQLPrimaryKeys to exclude INCLUDE columns from the result.</li>
<li>Update to 18.00.0000, 18.00.0001 and 17.00.0010:</li>
<li>No code changes from 17.00.0009.</li>
<li>Update to 17.00.0009:</li>
<li>Fix the test suite for PostgreSQL 19, where
standard_conforming_strings is always on.</li>
<li>Upgrade the GitHub Actions workflow: use prebuilt PostgreSQL
binaries, parallel matrix builds and a separate release job.</li>
<li>Update to 17.00.0008:</li>
<li>https://odbc.postgresql.org/docs/release.html</li>
<li>fix build for SLE-15 by forcing gcc 14</li>
</ul>
<h2>Patch Instructions:</h2>
<p>
To install this SUSE update use the SUSE recommended
installation methods like YaST online_update or "zypper patch".<br/>
Alternatively you can run the command listed for your product:
</p>
<ul class="list-group">
<li class="list-group-item">
SUSE Linux Enterprise Server for SAP Applications 15 SP6
<br/>
<code>zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP6-2026-5191</code>
</li>
<li class="list-group-item">
openSUSE Leap 15.6
<br/>
<code>zypper in -t patch SUSE-2026-5191</code>
</li>
<li class="list-group-item">
Basesystem Module 15-SP7
<br/>
<code>zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP7-2026-5191</code>
</li>
<li class="list-group-item">
SUSE Linux Enterprise Server 15 SP6 LTSS
<br/>
<code>zypper in -t patch SUSE-SLE-Product-SLES-15-SP6-LTSS-2026-5191</code>
</li>
</ul>
<h2>Package List:</h2>
<ul>
<li>
SUSE Linux Enterprise Server for SAP Applications 15 SP6 (ppc64le x86_64)
<ul>
<li>psqlODBC-debugsource-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-debuginfo-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-18.00.0006-150600.3.5.1</li>
</ul>
</li>
<li>
openSUSE Leap 15.6 (aarch64 i586 ppc64le s390x x86_64)
<ul>
<li>psqlODBC-debugsource-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-debuginfo-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-18.00.0006-150600.3.5.1</li>
</ul>
</li>
<li>
Basesystem Module 15-SP7 (aarch64 ppc64le s390x x86_64)
<ul>
<li>psqlODBC-debugsource-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-debuginfo-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-18.00.0006-150600.3.5.1</li>
</ul>
</li>
<li>
SUSE Linux Enterprise Server 15 SP6 LTSS (aarch64 ppc64le s390x x86_64)
<ul>
<li>psqlODBC-debugsource-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-debuginfo-18.00.0006-150600.3.5.1</li>
<li>psqlODBC-18.00.0006-150600.3.5.1</li>
</ul>
</li>
</ul>
<h2>References:</h2>
<ul>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-109448.html">https://www.suse.com/security/cve/CVE-2026-109448.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120057.html">https://www.suse.com/security/cve/CVE-2026-120057.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120058.html">https://www.suse.com/security/cve/CVE-2026-120058.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120059.html">https://www.suse.com/security/cve/CVE-2026-120059.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120060.html">https://www.suse.com/security/cve/CVE-2026-120060.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120061.html">https://www.suse.com/security/cve/CVE-2026-120061.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120062.html">https://www.suse.com/security/cve/CVE-2026-120062.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120063.html">https://www.suse.com/security/cve/CVE-2026-120063.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120064.html">https://www.suse.com/security/cve/CVE-2026-120064.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120065.html">https://www.suse.com/security/cve/CVE-2026-120065.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120066.html">https://www.suse.com/security/cve/CVE-2026-120066.html</a>
</li>
<li>
<a href="https://www.suse.com/security/cve/CVE-2026-120067.html">https://www.suse.com/security/cve/CVE-2026-120067.html</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1285073">https://bugzilla.suse.com/show_bug.cgi?id=1285073</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289252">https://bugzilla.suse.com/show_bug.cgi?id=1289252</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289253">https://bugzilla.suse.com/show_bug.cgi?id=1289253</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289254">https://bugzilla.suse.com/show_bug.cgi?id=1289254</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289255">https://bugzilla.suse.com/show_bug.cgi?id=1289255</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289256">https://bugzilla.suse.com/show_bug.cgi?id=1289256</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289257">https://bugzilla.suse.com/show_bug.cgi?id=1289257</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289258">https://bugzilla.suse.com/show_bug.cgi?id=1289258</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289259">https://bugzilla.suse.com/show_bug.cgi?id=1289259</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289260">https://bugzilla.suse.com/show_bug.cgi?id=1289260</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289261">https://bugzilla.suse.com/show_bug.cgi?id=1289261</a>
</li>
<li>
<a href="https://bugzilla.suse.com/show_bug.cgi?id=1289262">https://bugzilla.suse.com/show_bug.cgi?id=1289262</a>
</li>
</ul>
</div>