Zum Inhalt springen
Alle Systeme betriebsbereitStatusLooking GlassGlossar
IT-Check →
Start / Toolbox / PHP2Shell-Selbsttest

Ist meine Website von PHP2Shell betroffen?

Der Selbsttest liest die öffentlichen Antwortkopfzeilen Ihrer Website und vergleicht die gemeldete PHP-Version mit den Fix-Versionen für CVE-2026-109618 und CVE-2026-109619. Die Lücke selbst wird nicht angetestet.

Ohne Anmeldung · nur Kopfzeilen · keine Speicherung der geprüften Adresse
FIX-VERSIONEN
PHP 8.5ab 8.5.12
PHP 8.4ab 8.4.27
PHP 8.3ab 8.3.36
PHP 8.2ab 8.2.35
php2shell-checkLive
X-Powered-ByServerGETmax. 3 Weiterleitungen6 s
liestnur öffentliche kopfzeilen
testet nichtkeine angriffsanfrage
vergleichtmit vier fix-versionen
speichert nichtnur anonymer zähler
betrieb durch hostspezial
Lücke CVE-2026-109618 / -109619Fix-Versionen 8.2.35 · 8.3.36 · 8.4.27 · 8.5.12Prüfung nur KopfzeilenDauer höchstens 6 Sekunden
/01 — 03Selbsttest

Website prüfen in einer Anfrage

$ sec1
Geben Sie die Domain Ihrer Website ein. Unser Server ruft die Startseite einmal per GET ab, liest nur die Kopfzeilen X-Powered-By und Server und verwirft den Seiteninhalt. Weiterleitungen werden bis zu dreimal verfolgt.
/02 — 03Bewertung

Was das Ergebnis bedeutet

$ sec2
Die Kopfzeile kommt vom laufenden PHP-Prozess. Zeigt sie eine Fix-Version, ist das Update eingespielt und PHP neu gestartet. Zeigt sie eine ältere Version mit Distributionskennung, entscheidet erst der Paket-Changelog.
ErgebnisBedeutungNächster Schritt
Version enthält den FixGemeldet wird 8.2.35, 8.3.36, 8.4.27, 8.5.12 oder neuer.Andere Websites auf demselben Server einzeln prüfen; jede kann eine eigene PHP-Version nutzen.
Wahrscheinlich betroffenVersion unter dem Fix, ohne Distributionskennung — typisch für selbst gebautes PHP, Docker-Images und Hosting-Panels.Aktualisieren, danach PHP-FPM bzw. Apache neu starten. Ohne Neustart läuft der alte Code weiter.
Backport möglichVersion mit Kennung wie -0ubuntu, +deb oder sury. Distributionen übernehmen Fixes, ohne die Versionsnummer anzuheben.Prüfskript auf dem Server ausführen; es liest den Paket-Changelog auf die CVE-Nummern.
Zweig ohne Upstream-FixPHP 8.1 oder älter. php.net liefert für diese Zweige keinen Fix.Umstieg auf 8.2 oder neuer planen; bis dahin Übergangsmaßnahmen aus dem Artikel.
Nicht erkennbarDer Server nennt keine PHP-Version. Das heißt nicht, dass er sicher ist.Direkt auf dem Server prüfen: php -v reicht bei Distributionspaketen nicht, das Prüfskript schon.
/03 — 03Grenzen

Was der Test sieht und was nicht

$ sec3

Er liest, was der Server freiwillig zeigt

Der Test wertet nur zwei Kopfzeilen aus. Er testet die Lücke nicht an und sendet keine Angriffsanfrage. Eine fehlende Versionsangabe ist kein Entwarnungssignal, sondern nur ein Zeichen für eine gehärtete Konfiguration.

Hinter einem CDN oder Reverse Proxy sehen Sie meist nur dessen Kopfzeilen, nicht die des PHP-Servers.

Version ausblenden: expose_php = Off

Steht die PHP-Version in den Kopfzeilen, hilft sie automatisierten Scannern bei der Zielauswahl. Diese Zeile in der php.ini entfernt die Angabe; wirksam nach dem Neustart von PHP-FPM bzw. Apache:

expose_php = Off

Das schließt die Lücke nicht. Es ersetzt kein Update.

Sicher prüfen: auf dem Server selbst

Das Prüfskript php2shell.sh läuft auf dem Server, liest jede installierte PHP-Version, den Paket-Changelog und ob der laufende Prozess nach dem Update neu gestartet wurde.

Hintergrund, Übergangsmaßnahmen und Erkennungsregeln stehen im Artikel PHP2Shell: prüfen, patchen, erkennen.

// nächster schritt

Der Header zeigt die Version. Den Patchstand zeigt der Server.

Wenn das Ergebnis unklar ist oder mehrere Server betroffen sind: Wir prüfen remote mit dem Skript, spielen das Update ein, starten PHP neu und liefern ein Prüfprotokoll als Nachweis.

ISO/IEC 27001 zertifiziert · Zertifikat 202787

$ php2shell --pruefen
Termin vereinbaren → 09571 873149
Antwort in der Regel innerhalb eines Werktags.