PHP security release (8.2 and up only) ships in PHP fix ships in Oct 21, 14:00 UTC
PHP security · Seal Security ·

PHP2Shell: CVE-2026-109618 and CVE-2026-109619. On PHP 8.1 or older? We’ll patch it for free.

php.net’s fix covers only PHP 8.2 and newer. If your servers run 8.1, 8.0, 7.4 or 5.x, no fix is coming from php.net. Tell us the version you run. We patch both CVEs in that same version and send you the build, free.

Severity
9.2
CVSS v4.0, for each CVE. Researchers report both as remote code execution in PHP core.
Public servers with no php.net fix
~884K
Hosts that show a PHP version older than 8.2, in one Shodan-based count. About 740K more hide their version.
Seal’s price
FREE
For both CVEs, in the PHP version you run.
What happened

PHP2Shell: two PHP bugs leaked early, and the fix skips older versions

On October 20, details of two PHP bugs leaked before the embargo ended. The PHP security team confirmed both and fixed them in a security release on October 21, 2026. Researchers call the pair PHP2Shell. See the php.net release notes for the full details, affected versions and fixed versions.

!

How bad is it?

CVE-2026-109618 and CVE-2026-109619 are both rated CVSS v4.0 9.2. Researchers report remote code execution in PHP itself, before your application code runs. You can’t fix it in your app.

⇡

How soon will attacks start?

Sansec expects mass attacks within 15 minutes of the release. Once the fix is public, it shows attackers where the bug is.

🛡

Who gets a fix?

php.net releases cover PHP 8.2, 8.3, 8.4 and 8.5. Reports say the bugs go back to PHP 5.4. Every branch from 5.4 to 8.1 is end of life, so php.net ships nothing for it.

Am I vulnerable?

Check if your PHP is vulnerable

Assume any PHP from 5.4 up is affected unless the php.net release notes say otherwise. The question that matters is which branch you run, because that decides whether php.net ships a fix for you.

Default PHP packages by Linux distro

If you set up a LAMP stack with apt install php, dnf install php or apk add, this is the PHP you got. Package data checked October 21, 2026.

DistroPackagesPHPphp.net fixDistro status
Ubuntu 20.04 LTSphp7.4, php7.4-fpm, libapache2-mod-php7.47.4NoStandard support ended May 2025. Updates only through Ubuntu Pro.
Ubuntu 22.04 LTSphp8.1, php8.1-fpm, libapache2-mod-php8.18.1NoSupported by Canonical. Watch the Ubuntu CVE tracker for a backport.
Ubuntu 24.04 LTSphp8.3, php8.3-fpm8.3YesInstall the Ubuntu update.
Debian 10 (buster)php7.3, php7.3-fpm7.3NoOut of LTS. Paid Extended LTS only.
Debian 11 (bullseye)php7.4, php7.4-fpm7.4NoLTS ended August 31, 2026. Paid Extended LTS only.
Debian 12 (bookworm)php8.2, php8.2-fpm8.2YesInstall the Debian update.
Debian 13 (trixie)php8.4, php8.4-fpm8.4YesInstall the Debian update.
RHEL 7, CentOS 7php, php-fpm (rpm)5.4NoCentOS 7 ended June 30, 2024. RHEL 7 only with paid ELS. More on CentOS 7 end of life.
RHEL 8, Rocky 8, Alma 8php module streams: 7.2 (default), 7.4, 8.0, 8.27.2 to 8.0No (8.2 stream: yes)Supported. Red Hat decides per stream, so check its CVE page.
RHEL 9, Rocky 9, Alma 9php 8.0 (default), module streams 8.1 and newer8.0, 8.1No (8.2+ streams: yes)Supported. Red Hat decides per stream, so check its CVE page.
Amazon Linux 2php 7.x and 8.x from amazon-linux-extras7.x, 8.0, 8.1NoSupport ended June 30, 2026.
Amazon Linux 2023php8.1, php8.2 and newer8.1No for php8.1Supported. Check the Amazon Linux security center.
Alpine 3.15php7, php8 (apk)7.4, 8.0NoRelease out of support.
Alpine 3.16, 3.17php81 (3.16 also php8)8.1NoRelease out of support.
Alpine 3.18, 3.19php81, php82 (3.19 also php83)8.1, 8.2+No for php81Move to php82 or newer, or patch php81.
Alpine 3.20 and newerphp82, php83, php848.2+YesInstall the Alpine update.
Which PHP gets a fix

Which PHP versions php.net still fixes

PHP gives each branch two years of bug fixes and two more years of security fixes. After that, nothing, not even for a 9.2. Here is where each branch stands on October 21, 2026.

8.2+
php.net fix
8.2, 8.3, 8.4, 8.5
Release Oct 21, 14:00 UTC
8.2 security ends Dec 31, 2026
8.1
No php.net fix
End of life Dec 31, 2025
Seal patch free
8.0
No php.net fix
End of life Nov 26, 2023
Seal patch free
7.x / 5.x
No php.net fix
7.4 ended Nov 28, 2022
5.6 ended Dec 31, 2018
Seal patch free
In short

For 8.1 and older, php.net’s answer is “upgrade to 8.2.” That’s a migration project, and these bugs won’t wait for it. We’ll patch the version you run instead, for free.

Your options

Can’t upgrade right away? Here are your options

On 8.2 or newer, install the fixed release. On anything older, these are the real choices.

Option 1

Upgrade to PHP 8.2 or newer

The long-term answer. It also means fixing deprecations, rebuilding extensions and running full regression tests. For most apps that takes weeks, and attackers won’t wait.

Right, but slow
Option 2

Block and wait

WAF rules, cutting internet access to exposed hosts, turning off what you don’t need. Worth doing. But the bug is still in PHP, and a rule only blocks the attacks someone already knows about.

Lowers risk, doesn’t fix
Option 3

Let Seal patch it, free

We take the official fix and apply it to the PHP version you run. Same version, same config, no app changes. You upgrade later, when it suits you.

Fixed in your version, free
FAQ

Common questions

Free patch

On PHP 8.1 or older? Let’s patch it.

PHP security release:  October 21, 2026, 14:00 UTC

Tell us the version you run. We’ll send back the same version with CVE-2026-109618 and CVE-2026-109619 fixed. Free.

Get the free patch