[CLSA-2026:1791542030] alt-php54: Fix of CVE-2025-1218
Type:
security
Severity:
Important
Release date:
2026-10-09 10:34:04 UTC
Description:
- CVE-2025-1218: various packet over-reads in the mysqlnd wire protocol parser - The same mysqlnd_ps.c hunk also corrects that path's result free from mnd_efree() to upstream's php-7.0 form, mnd_pefree(stmt->result, stmt->result->persistent): mysqlnd_result_init() allocates the result with mnd_pecalloc(..., persistent), so on a persistent connection the Zend allocator was being handed a malloc()ed block. Before the change a hostile prepare over p:127.0.0.1 aborts with "zend_mm_heap corrupted" on a build with the Zend MM heap checks compiled in; after it the same run completes, and a non-persistent connection is unaffected either way - Also fixes a pre-existing use-after-free on the row-reader failure path: the CVE-2024-8929 error loops free every field decoded so far without clearing the zvals, and the result set frees them again at teardown. All 2 sites now clear after freeing. Confirmed under AddressSanitizer with the Zend allocator disabled - heap-use-after-free before, clean after, on the three new short-length tests and the nine CVE-2024-8929 stmt-row tests. Upstream still carries the same loops unguarded in php-8.2.34 through php-8.5.11 - mysqlnd: initialise every pre-allocated row field before decoding (php-5.4.45-mysqlnd-rowp-init-fields.patch). The row readers pre-allocate a zval per column with MAKE_STD_ZVAL(), which sets no type, and only type it when the decode loop reaches that column; the CVE-2024-8929 error paths abandon a row part-way, leaving the rest allocated but never typed, and the result set still frees the whole row at teardown. Each column is now ZVAL_NULL()ed at allocation. Verified with valgrind under USE_ZEND_ALLOC=0. PHP 5 only, and kept separate from the CVE patch because the defect predates it and is reachable without it
CVEs fixed:
Updated packages:
  • alt-php54-5.4.45-202.el9.x86_64.rpm
    sha:334ed4a6de9c4ed4f4e15286949e6a368410dbe313e45a337ee4af1f9f19a55b
  • alt-php54-bcmath-5.4.45-202.el9.x86_64.rpm
    sha:2b48e66edd95ef27b0bc2fc3c3b59705d0ca467e1add42d17613a19dd28c33ad
  • alt-php54-cli-5.4.45-202.el9.x86_64.rpm
    sha:5a08bacdc268f36edce328a00143ab5b3a4ea920a7c666f3cff8a279945443d9
  • alt-php54-common-5.4.45-202.el9.x86_64.rpm
    sha:881985b86a73265b0958238afa5b3efed9c211eb05bc3f88af46a71f529873ba
  • alt-php54-dba-5.4.45-202.el9.x86_64.rpm
    sha:9640286b2d953a054ae248fbd8a6cce99ddc098df0fbe26ec21e8a29f3729dc6
  • alt-php54-dbx-5.4.45-202.el9.x86_64.rpm
    sha:7c91f048899a93cce7a8717d1007da0f8ab2a960c704e91da75dfe48520afe49
  • alt-php54-devel-5.4.45-202.el9.x86_64.rpm
    sha:1de866521dec44c10a7953a40933c9a94aeb7de4676506b4f3a5a2076b63e025
  • alt-php54-enchant-5.4.45-202.el9.x86_64.rpm
    sha:aea93a9a4743413b4e7f5242e9f6a9775a4afaf24fdd8fa0bc2c47361163422d
  • alt-php54-firebird-5.4.45-202.el9.x86_64.rpm
    sha:0780799369506100532b22658190de98a759a1a0bca517bd4bd58bf4cd9f4240
  • alt-php54-gd-5.4.45-202.el9.x86_64.rpm
    sha:643ed9c95ecae24832d7b27c83e0a8d906c16ff8b0e0b828b95a6cc166156e8a
  • alt-php54-imap-5.4.45-202.el9.x86_64.rpm
    sha:669892575676e312090064c8772935386544b6b12ff8c19078120783c35baf1b
  • alt-php54-intl-5.4.45-202.el9.x86_64.rpm
    sha:dd191c37a9327d5ed2e961fa1f615966099a2c465ac217db0b2b1cde068d85d9
  • alt-php54-ldap-5.4.45-202.el9.x86_64.rpm
    sha:f930cc8f4aaa4bfcd8420681a21d5c42b6a05aca03ed1f5593c5cf261df12c10
  • alt-php54-mbstring-5.4.45-202.el9.x86_64.rpm
    sha:d45752bfefb6fd00a568fd49306b35daa5cfeeab18ed625c35282d19e506a9ca
  • alt-php54-mcrypt-5.4.45-202.el9.x86_64.rpm
    sha:fb56a6db75779f639bf572f22c35f4e17f990b8c21b21222fb18f926ec05dd46
  • alt-php54-mssql-5.4.45-202.el9.x86_64.rpm
    sha:a3a17d4630558902eede2194bc7d2c150314f4769a17b0da1463d2bfae96c645
  • alt-php54-mysqlnd-5.4.45-202.el9.x86_64.rpm
    sha:6e6f74ae3b2641f232fdfa07dfe5e1d1733b66d5e4e631b562e838f0aeb105cb
  • alt-php54-odbc-5.4.45-202.el9.x86_64.rpm
    sha:edd1a47f4ca541b0fac8cd64953bd74608c9f918ab286d4284ce673c38b5961c
  • alt-php54-pdo-5.4.45-202.el9.x86_64.rpm
    sha:5aeb2fc01604e69ece62886fc33403d25ca7c872be5b315b97eec68742f6a3dc
  • alt-php54-pgsql-5.4.45-202.el9.x86_64.rpm
    sha:7be8735df6a57e1d54c30cfa4482e18aee62398db99f94f3ebdc2b71de6d7efd
  • alt-php54-php-fpm-5.4.45-202.el9.x86_64.rpm
    sha:ce9abd42c82461380a389f2be80964978be90dbf78b9b3c356be87805349944e
  • alt-php54-process-5.4.45-202.el9.x86_64.rpm
    sha:643397ea4798b07d12f730dd512706fbc976db4814751d7181a8b224324fb4d7
  • alt-php54-pspell-5.4.45-202.el9.x86_64.rpm
    sha:3bcd58a46d49f320a4a6e2cd49c7450b46b064b0ea6f26c99623f0a5760ba1bd
  • alt-php54-recode-5.4.45-202.el9.x86_64.rpm
    sha:81343b3d8277481353ffaa6720dd9e9dc76552320179eea5faf4925716f3cd5a
  • alt-php54-snmp-5.4.45-202.el9.x86_64.rpm
    sha:263d69b744128f49a518601437b6cc5ecb5aaeef27ab72f5cf0f86668ac1bc48
  • alt-php54-soap-5.4.45-202.el9.x86_64.rpm
    sha:97f60af1db840ab71c756fd21a1293d1cec58adb87d83d15775af38d3828d6e3
  • alt-php54-sybase-5.4.45-202.el9.x86_64.rpm
    sha:9c21de87857159c2d74a1f24c08bf5471140b945bbe5ec73e2fa4edbfc80b67c
  • alt-php54-tidy-5.4.45-202.el9.x86_64.rpm
    sha:903f531fca168222f8f287fafa54165d645bb0350f4c76fbcd72e3be57c73db3
  • alt-php54-xml-5.4.45-202.el9.x86_64.rpm
    sha:5ba941fee75319bf961a9d67ec9f85a1beda8678025e6026c79cd75ec9f87e55
  • alt-php54-xmlrpc-5.4.45-202.el9.x86_64.rpm
    sha:8e25ba38f12f1f1ad7940a27b3c2e31628f5e818d396c70d5bce1be798a00789
Notes:
This page is generated automatically and has not been checked for errors. For clarification or corrections please contact the CloudLinux Packaging Team.