Möchtest du mit deinem Team teilnehmen? Ab drei Personen profitiert ihr von unseren Gruppenrabatten! Direkt im Shop buchen!

Zu alt für den Fix: Der Weg zu PHP 8 nach PHP2Shell

Im Oktober 2026 wurden zwei kritische Schwachstellen im Kern von PHP bekannt, deren Details schon vor der koordinierten Veröffentlichung kursierten. PHP2Shell (CVE-2026-109618 und CVE-2026-109619) erlaubt Angreifern ohne Anmeldung, Speicherinhalte von PHP-Prozessen auszulesen und im schlimmsten Fall Code auf dem Server auszuführen, noch bevor die erste Zeile Anwendungscode läuft. Betroffen sind alle PHP-Versionen bis zurück zu 5.4. Korrigierte Releases gibt es aber nur für PHP 8.2 bis 8.5. Für PHP 8.1, 8.0 und 7.4 hat das PHP-Projekt lediglich minimale Quelltext-Patches veröffentlicht, für alles Ältere gar nichts.

Wer auf einer dieser Versionen festsitzt, hat zwei Probleme: kurzfristig eine Lücke, die geschlossen werden muss, und grundsätzlich eine Anwendung, die nicht auf einer unterstützten PHP-Version läuft. Backports von Distributionen und LTS-Anbietern können eine Brücke sein. Dafür musst du wissen, was sie tatsächlich ändern, wie du prüfst, ob sie wirklich installiert sind, und dass auch eine Brücke ein Enddatum braucht.

Der Schwerpunkt dieses Vortrags liegt auf dem Weg über die Brücke: dem Upgrade auf ein aktuelles PHP 8. Es geht um die Wahl der Zielversion (PHP 8.2 erreicht vier Wochen nach dieser Konferenz sein Lebensende), um Inventur, statische Analyse und automatisierte Refactorings, um die Inkompatibilitäten, die beim Sprung von PHP 7 auf PHP 8 in der Praxis am häufigsten zuschlagen, um Abhängigkeiten, die nicht mitkommen, und um Tests als Sicherheitsnetz für Code, der bisher keine hat. Und darum, wie aus dem nächsten PHP-Update ein Routinevorgang statt eines Notfalls wird.

Vorkenntnisse

Dieser Vortrag richtet sich an alle,

  • die PHP-Anwendungen betreiben oder weiterentwickeln, die noch auf PHP 8.1 oder älter laufen,
  • und an alle, die verhindern wollen, dass ihre Anwendungen in diese Lage geraten.

Lernziele

  • Einschätzen, wie PHP2Shell die eigenen Systeme betrifft und welche Patch- und Backport-Optionen es für veraltete PHP-Versionen gibt
  • Einen Upgradepfad auf ein unterstütztes PHP 8 planen: Zielversion, Reihenfolge, Umgang mit Abhängigkeiten
  • Inkompatibilitäten mit statischer Analyse und automatisierten Refactorings finden und beheben und den Umstieg mit Tests absichern

Speaker

 

Sebastian Bergmann
Sebastian Bergmann ist Autor und Maintainer von PHPUnit, dem Standard-Test-Framework für PHP. Als Gründungspartner von thePHP.cc berät er Teams zu Teststrategien, besseren Entwicklungsprozessen und testbarem Code. Er ist Mitgründer und Vorstandsmitglied der PHP Foundation, die mit einem eigenen Security-Programm die Absicherung des PHP-Ökosystems vorantreibt, und engagiert sich im Arbeitskreis Open Source Software der Gesellschaft für Informatik.
LinkedIn