PHP is shipping a security release tomorrow, Wednesday, October 21 at 14:00 UTC. It fixes two critical vulnerabilities, both rated CVSS 9.2 (announcement). The affected and fixed versions will be published with the release.
Re-provisioning alone won’t upgrade PHP. Trellis installs PHP from Ondřej Surý’s PPA with apt_package_state: present, which installs packages but never upgrades them. Ubuntu’s unattended-upgrades doesn’t cover PPAs by default, so your servers won’t pick up the patch on their own.
Wait for the PPA build
The PPA builds from the official release, so expect a delay. Over the last five PHP 8.4 releases, the build was published anywhere from under an hour to about a day and a half after php.net’s announcement. Follow the tracking issue on Codeberg, check the PPA package list, or run this on your server:
sudo apt-get update && apt-cache policy php8.4-fpm
Once the “Candidate” version is newer than “Installed,” you’re ready.
Upgrade
trellis provision --extra-vars apt_package_state=latest --tags php production
This runs only the PHP role and upgrades PHP and its extensions to the latest versions in the PPA. Then restart PHP-FPM and confirm the version:
sudo service php8.4-fpm restart && php -v
Swap 8.4 for your php_version if you’re on something else. Repeat for staging and development.
More info
The vulnerabilities have been reported as CVE-2026-109618 and CVE-2026-109619, and some security researchers describe them as remote code execution bugs. PHP hasn’t published details yet. We’ll update this post with the official advisories once the release is out.