Current situation: PHP2Shell. Two critical PHP vulnerabilities (CVSS 9.2) allow malicious code without login. Patches since 21 October 2026.What to do now →
PHP2Shell · CVE-2026-109618 · CVE-2026-109619

Unpatched PHP is an open door. We close it.

Remote emergency help for businesses in Europe: patching PHP, checking for signs of intrusion, removing malicious code, hardening servers. Immediately, with specialised partners, until the incident is closed and documented.

CVSS 9.2two vulnerabilities, malicious code without login
8.2.35 · 8.3.36 · 8.4.27 · 8.5.12first patched versions
22.6 millionexposed instances according to Unit 42
check · production
$ php -v
PHP 8.3.35 (cli) (built: Sep 30 2026)
! State before the patch of 21 October 2026
$ phpsos pruefen --ziel produktion
  Operating mode ... php-fpm
  CVE-2026-109618 .. open
  CVE-2026-109619 .. open
  Worker restart ... pending
$ phpsos absichern
  [ok] Package 8.3.36 applied
  [ok] all workers restarted
  [ok] File system checked for webshells
  [ok] Report for management created
  • Made in GermanyIT security from Germany, working under European data protection law.
  • Over 25 yearsSpecialised in IT security and server operations for over 25 years, together with our partner network.
  • Partner networkSpecialised cyber professionals for forensics, penetration testing and server hardening, coordinated through one point of contact.
Self-test · 10 seconds

Is your PHP already patched?

Enter your PHP version. The test compares it with the security announcements from php.net and tells you what to do next. Important: even a patched version does not prove that nothing happened before the update.

How to find your PHP version →

Runs only in your browser, nothing is sent. Basis: security announcements from php.net of 21 and 23 October 2026. Distribution backports sometimes do not change the number.

Quick test independent of the version number

According to the PHP manual, the setting memory_hard_limit_percent came with the patches. If your PHP does not know it, it is affected:

php -r 'var_dump(ini_get("memory_hard_limit_percent"));'

bool(false) means: unknown, hence affected. Check each installed PHP version individually; the command line may use a different version from the web server.

Emergency check · 4 questions

How urgent is your situation?

Four questions, a classification, the first steps and a prepared WhatsApp message to us. At level 3: delete nothing, rebuild nothing, preserve evidence.

1. What are you observing?
2. How is your PHP running?
3. Is PHP patched?
4. What data is stored there?
Services

From the emergency call to the hardened server

We take over the technology and deliver the evidence that management, data protection and insurance need.

Process

How we work in a real emergency

Clear steps, one point of contact, everything remote. Specialists from our partner network join when forensics or a pentest are needed.

  1. Assess the situation

    You write via WhatsApp or call. We clarify system, PHP version, host and observations.

  2. Secure and close

    Preserve evidence, patch PHP or put interim measures in place, restart all workers, document the patch level.

  3. Check and clean up

    Check files, database, accounts and logs for signs of intrusion. Remove webshells and back doors.

  4. Harden and report

    Harden the configuration, set up monitoring, report for management, data protection and insurance.

Act yourself

Can't patch yet? Interim measures

php.net names settings that make known attack routes harder until the update is applied. Choose your operating mode, copy the lines and then restart all PHP processes.

The BSI (German Federal Office for Information Security) recommends: if the update is not immediately possible, take the web server offline temporarily.

All interim measures explained →

Interim measures according to php.net, no substitute for the update. memory_limit=-1 only together with a memory limit via container or cgroup. Back up the configuration first.

Responsibility

Who does what? The gap between host and agency

Many businesses rely on “someone” patching. As a rule, responsibility is distributed like this:

TaskHost (shared hosting)Agency / web designPHP SOS
Update the PHP packagemostly yesmostly notyes, or with your host
Restart all workers and document itpartlynoyes, with proof
Check whether a break-in occurred before the patchusually notpartlyyes
Remove webshells and back doorsusually notpartlyyes
Report for management, data protection, insurancenorarelyyes
Hardening and ongoing monitoringpartlypartlyyes
PHP2Shell knowledge

What is documented and what you do now

Facts from the announcements of php.net and the BSI, prepared for management and admins.

All 12 knowledge pages

The first hour

10 steps before we take over

Tick off what is done. The list stays saved in your browser.

Get help directly

Ticks are stored only in your browser.

Blog · 113 articles

Situation, instructions, decision aids

From the BSI warning level through package changelogs to the question of whether to rebuild or clean up. Every article with sources.

All 113 blog articles

Frequently asked questions

Answered briefly

All questions →

What is PHP2Shell?

PHP2Shell is the name for two critical vulnerabilities in PHP itself (CVE-2026-109618 and CVE-2026-109619, CVSS 9.2). They may allow attackers to execute malicious code on the server without logging in. Patches have been available since 21 October 2026.

Which PHP versions are safe?

The fixes are in PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35. Hosts and distributions sometimes apply backports without changing the version number. What matters is the package version or the provider's written confirmation.

Is a WordPress or shop update enough?

No. The vulnerability is in PHP, not in the CMS. A CMS update does not close it. And a PHP patch does not remove malicious code that was planted beforehand.

How quickly can you help?

We work remotely and start as soon as access is in place. Write to us via WhatsApp with your system, PHP version and observation. We will then clarify the approach directly.

Do you also work for agencies and hosting customers?

Yes. We work directly for businesses, in the background on behalf of agencies, and in coordination with your host if the host manages the server.

Do we have to report the incident?

If personal data may be affected, Art. 33 GDPR generally sets a reporting deadline of 72 hours from awareness. Whether it applies, you clarify with your data protection officer. We provide the technical documentation for it.

Immediate contact

Every hour counts. Write to us now.

Briefly describe your system, PHP version and observation. We will get back to you, clarify the situation and work remotely until the incident is closed and documented.

Immediate help