Release date:
2026-08-10 12:24:40 UTC
Description:
* SECURITY UPDATE: three defects in the GIF LZW decoder of the bundled libgd
- debian/patches/php-5.6-CVE-2026-9672.patch: backport upstream commit
fcd691b377d0 (libgd patch by Pierre Joye) in ext/gd/libgd/gd_gif_in.c.
The prefix/suffix table reset in LWZReadByte_() cleared table[1][0]
repeatedly instead of table[1][i], so table[1] was only initialised up
to clear_code and the entries above it kept indeterminate stack
contents; the LZW end_code branch fell through and kept decoding with a
stale code when the trailing data blocks drained cleanly, which is what
lets those bytes reach output pixels; and ReadImage() left its
LZW_STATIC_DATA scratch struct uninitialised. All three are reachable
from attacker-controlled GIF data via imagecreatefromgif().
- Note: byte-identical to upstream, only the context line numbers differ.
- CVE-2026-9672
* SECURITY UPDATE: SQL injection in ext/pgsql via E'...' backslash breakout
- debian/patches/php-5.6-CVE-2026-17543.patch: backport upstream commit
ab048bd83b57 (GHSA-7qpv-r5mr-78m4) in ext/pgsql/pgsql.c.
php_pgsql_add_quotes() wrapped a PQescapeStringConn()-escaped value in an
E'...' literal, where a backslash is an escape character, but
PQescapeStringConn() only doubles backslashes when the connection has
standard_conforming_strings off. A value such as "zzz\' OR 1=1 --"
therefore escaped the doubled quote and broke out of the literal, letting
pg_convert(), pg_insert(), pg_update(), pg_delete() and pg_select() inject
arbitrary SQL. Emit a plain '...' literal instead, which is what
PQescapeStringConn() is documented to be used with.
- Note: 5.6 builds the literal with smart_str rather than upstream's
zend_string_concat3(), so the fix drops the smart_str_appendc(&str, 'E')
call. The pg_convert()/pg_insert()/pg_update() expectations are updated
for the dropped E prefix, including the 5.6-era non-"_9" duplicates
upstream no longer ships, and a 5.6-compatible replacement for the
upstream regression test is added.
- CVE-2026-17543
* SECURITY UPDATE: phar stack exhaustion on a circular symlink chain
- debian/patches/php-5.6-CVE-2026-7260.patch: backport upstream commit
2e0fa0a44441 (GHSA-vc5h-9ppw-p5f3) in ext/phar/util.c.
phar_get_link_source() resolved a symlink by tail-calling itself with no
cycle detection, so a tar-based archive whose symlinks form a loop
exhausted the stack and crashed the process on open or read. A new static
phar_follow_one_link() now performs a single hop and
phar_get_link_source() walks the chain iteratively with Floyd
tortoise-and-hare cycle detection, returning NULL on a cycle.
- Note: kept on the 5.6 zend_hash_find()/TSRMLS API instead of upstream's
zend_hash_str_find_ptr(). Upstream follow-up 56b8d1040d83 is not included
because phar_get_link_location() can still return entry->link itself
here, so the "if (link != entry->link)" efree guard is required.
- Note: also restores the path separator in phar_get_link_location()
("*p = '/'"), without which the Floyd walk's second visit to an entry
resolves a truncated prefix, both manifest lookups miss, and the slow
cursor is dereferenced as NULL - crashing on *valid* nested archives.
Upstream carries the same defect but its fixtures use flat entry names
and never reach that branch.
- Note: the .phpt from 2e0fa0a is not backported - it ships three binary
tar fixtures, which a 3.0 (quilt) source package cannot carry. Instead
this adds ext/phar/tests/tar/gh21986.phpt from b2de3cf170, the earlier
public fix for the same defect, which builds the circular-symlink tar
programmatically in pure PHP; only its --EXTENSIONS-- header is changed
to the 5.6-equivalent --SKIPIF--. It fails (SIGSEGV) on an unpatched
5.6.40 build and passes on a patched one. Also verified with a
standalone ASan/UBSan harness over the patched functions (13 cases:
cycles resolve to NULL, acyclic and nested relative chains still
resolve, zero allocation balance).
- CVE-2026-7260
Updated packages:
-
alt-php56_5.6.40-138_amd64.deb
sha:b62cb0f6da2c4ed3913f1215ab05d0631204ee36
-
alt-php56-bcmath_5.6.40-138_amd64.deb
sha:14c7a12e4e5e9d2c0c37674f3c5cc41fc32d0cae
-
alt-php56-cli_5.6.40-138_amd64.deb
sha:6cf589e189fbf661bcb03827c00206c9d26f6985
-
alt-php56-common_5.6.40-138_amd64.deb
sha:a583d9c4f61a9c892396e7a14b53669c5405c9b5
-
alt-php56-dba_5.6.40-138_amd64.deb
sha:d54e56cf290bd1bb44a340eb3033d110d68ce8e0
-
alt-php56-dbx_5.6.40-138_amd64.deb
sha:90dfe8bc59a71a7eea239657a70627d130dffb08
-
alt-php56-dev_5.6.40-138_amd64.deb
sha:8c9c51d79da265a28f1d56793f2bef5b49f84e92
-
alt-php56-enchant_5.6.40-138_amd64.deb
sha:52e542e4296852d6a9de6afe366918bd18828ab6
-
alt-php56-firebird_5.6.40-138_amd64.deb
sha:de64964d861d25672851a64c9748a02aa2325dce
-
alt-php56-gd_5.6.40-138_amd64.deb
sha:0e6a770f7931284bf34d243d7a42303fca7b335f
-
alt-php56-imap_5.6.40-138_amd64.deb
sha:6937ad6e92d521e416b31147db79a1e08c6fe87f
-
alt-php56-intl_5.6.40-138_amd64.deb
sha:25944de0298aa0abaa8f15bf40d911f2b14cf6a8
-
alt-php56-ldap_5.6.40-138_amd64.deb
sha:6892671325ea95c050d8874807aa05e970485ac3
-
alt-php56-mbstring_5.6.40-138_amd64.deb
sha:cb969b5c2f405248486ccd4c9ca65bf234395f6e
-
alt-php56-mcrypt_5.6.40-138_amd64.deb
sha:bde186f95b3479bf875209549eb5f3fad085a9be
-
alt-php56-mysqlnd_5.6.40-138_amd64.deb
sha:49b227a50538235d4125b6242de8b4aaef84c284
-
alt-php56-odbc_5.6.40-138_amd64.deb
sha:df638862889c230f48278637e98bc61a50761b3e
-
alt-php56-opcache_5.6.40-138_amd64.deb
sha:7ef6d7b382c23a18901c25e15a0c6a5a5a48b237
-
alt-php56-pdo_5.6.40-138_amd64.deb
sha:564dc94fe42d931388eb41ccf92be7e32dd7db3e
-
alt-php56-pgsql_5.6.40-138_amd64.deb
sha:6da786b6b25541e6c0d819b0b5f33d8843fa54d3
-
alt-php56-php-fpm_5.6.40-138_amd64.deb
sha:3c7eebf0858f21c5e6eecb0ef72a2ab365b6d5bc
-
alt-php56-process_5.6.40-138_amd64.deb
sha:f9f60cfd6c9b23410e8a9c67a3eadde0bcd93b6a
-
alt-php56-pspell_5.6.40-138_amd64.deb
sha:009ca06c1e4a36db668350d171a37320e3c44b4b
-
alt-php56-recode_5.6.40-138_amd64.deb
sha:76e112fb5c086a8b55a93eae45e6dc6af58f8655
-
alt-php56-snmp_5.6.40-138_amd64.deb
sha:c65077dfafd410e9d938586e3039ae230110bb97
-
alt-php56-soap_5.6.40-138_amd64.deb
sha:966fddee2a8890a2f2c30c91686cf283705b82c8
-
alt-php56-sybase_5.6.40-138_amd64.deb
sha:71f9776f7efe80ef584575608150bdb9a0e3b296
-
alt-php56-tidy_5.6.40-138_amd64.deb
sha:d3ad6c2c0a81cd9ada1e91d3c2388a0eb556c525
-
alt-php56-xml_5.6.40-138_amd64.deb
sha:730c365c31cf2e765665d53fddb0b8668cd5e5db
-
alt-php56-xmlrpc_5.6.40-138_amd64.deb
sha:f3874689ac1fdb69c47b7169432f4d42b6f472c6
Notes:
This page is generated automatically and has not been checked for errors. For clarification or
corrections please contact the
CloudLinux Packaging Team.