Cybersicherheit

Hacker knackt mit PHP2Shell in 19 Stunden einen PHP-Server mit Bitcoin-Köder

Adrian Kessler
Fügen Sie uns bei Google hinzu

Ein ungepatchter Server mit einer PHP-Version, auf dem als Köder der Schlüssel zu einer Bitcoin-Wallet hinterlegt war, hielt sich nicht einmal einen Tag. Ein Forscher unter dem Pseudonym KillaBoi verschaffte sich über PHP2Shell Zugriff – zwei kritische Sicherheitslücken in der Programmiersprache, auf der ein Großteil des Webs basiert – und zog den Schlüssel ab. Am selben Wochenende registrierte ein Honeypot des Sicherheitschefs von Perplexity, wie ein Angreifer dasselbe bei einem echten Server tat. Damit ist die beruhigende Theorie widerlegt, diese Fehler seien zu kompliziert, um sie auszunutzen.

Das ist für alle relevant, die eine Website betreiben, und für alle, deren Daten dort liegen. PHP bildet die Grundlage für WordPress, Drupal, Joomla und einen Großteil des Shared Hostings. Die Sicherheitslücken können es jemandem ohne Benutzerkonto ermöglichen, Befehle auf dem Server auszuführen. Seit die Updates erschienen sind, lautete das wichtigste Argument fürs Abwarten, dass öffentliche Angriffsversuche immer wieder scheiterten. Beide Ergebnisse entkräften dieses Argument.

Die unter dem Namen Steal My Bitcoin gestartete Herausforderung wurde auf einer eigenen Website veröffentlicht und in einem Forumsbeitrag angekündigt. Ihr Urheber, der unter dem Namen cloudlandsdev postete, schrieb: „Ich habe das gemacht, weil mich interessiert, ob irgendjemand da draußen herausgefunden hat, wie sich diese PHP-RCE tatsächlich ausnutzen lässt. Wir haben die letzten Tage in Panik verbracht. Viel Spaß!“ Der Preis begann bei etwa 502 US-Dollar und wuchs durch Spenden auf 0.02511679 BTC an. Zum Zeitpunkt der Einlösung, rund 19 Stunden nach dem Start, entsprach das laut Tom’s Hardware 2,021.22 US-Dollar. Der Server brach unter dem Ansturm der Angriffsversuche zusammen, und wegen des begrenzten Speicherplatzes konnten nicht alle Protokolle gespeichert werden.

KillaBoi veröffentlichte anschließend auf GitHub einen Proof of Concept. Mark Maunder, Gründer des WordPress-Sicherheitsunternehmens Wordfence, bezeichnete die Analyse als „die mit Abstand beste Erklärung dafür, wie schwer sich #php2shell ausnutzen lässt“, und verwies darauf, wie viel präzise Arbeit der Angriff erforderte. Wie sich herausstellte, bedeutete schwierig nicht langsam.

Das beunruhigendere Ergebnis kam von außerhalb des Wettbewerbs. Adel Karimi, Leiter des Detection-and-Response-Teams bei Perplexity, sagte, seine Honeypots hätten eine bestätigte Remote-Code-Ausführung auf einem Apache-Server mit PHP 8.4.26 aufgezeichnet. „Damit ist eine RCE mit verwertbarer Offenlegung von Speicherinhalten bestätigt – nicht bloß ein Absturz mit anschließendem verdächtigem Prozess“, schrieb er, wie BleepingComputer berichtete. Marcus Hutchins, Bedrohungsforscher bei Expel, der Berichte über erfolgreiche Angriffe verfolgt hatte, nannte den Fall „mit Abstand die überzeugendste Bestätigung einer Ausnutzung von php2shell in freier Wildbahn, die ich bisher gesehen habe“. Bis dahin hatten Cloudflare, watchTowr, Patchstack und andere Sicherheitsunternehmen ausschließlich gescheiterte Versuche protokolliert. Amazons Threat-Intelligence-Team hatte mit den Scans bereits vier Tage vor Veröffentlichung der Patches begonnen.

Keines der beiden Ergebnisse bedeutet, dass morgen jeder ungepatchte Server angegriffen wird. Der von KillaBoi wiederhergestellte Schlüssel passte nicht zur auf der Website angegebenen Wallet-Adresse. Der Veranstalter bezeichnete das als Fehler beim Einrichten und sagte laut Cointelegraph, die Gelder würden überwiesen. Die Sicherheitswebsite Cyberpress weist zudem darauf hin, dass die öffentlich vorliegenden Belege zeigen, dass ein Schlüssel ausgelesen wurde – nicht, dass der Preis gestohlen wurde. Der veröffentlichte Exploit ist außerdem auf einen bestimmten PHP-Build zugeschnitten und funktioniert mit anderen Builds derselben Version nicht. Er lässt sich also nicht einfach per Mausklick ausführen. Vom Tisch ist nun die Behauptung, niemand habe den Angriff zum Laufen gebracht.

Das Problem betrifft die ganze Welt. Regierungsbehörden in den Niederlanden, Australien, Japan und Finnland nahmen kritische Websites während der Vorbereitung der Patches offline, berichtete Cointelegraph. Eine Shodan-Auswertung des Sicherheitsunternehmens Mallory fand etwa 884.000 aus dem Internet erreichbare Hosts, die eine PHP-Version auswiesen, für die es keine offiziellen Updates mehr gibt. Das sind 59 Prozent der rund 1,5 Millionen Hosts, die eine Version preisgeben, laut Notebookcheck. Dabei handelt es sich um Zählungen anhand von Server-Bannern, nicht um bestätigte Opfer: Linux-Distributionen aktualisieren häufig ältere Pakete, ohne die Versionsnummer zu ändern.

Für Websitebetreiber hat sich an der Lösung nichts geändert. Die gepatchten Versionen PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 wurden am 21. Oktober für CVE-2026-109618 und CVE-2026-109619 veröffentlicht; beide Sicherheitslücken wurden mit 9,2 von 10 bewertet. Beim Shared Hosting kommt das Update vom Hoster, nicht über ein WordPress- oder Plugin-Update. Die entscheidende Frage an den Anbieter lautet daher, welchen PHP-Build die eigene Website nutzt und wann dieser gepatcht wurde. Die US-amerikanische Cybersicherheitsbehörde CISA hat Organisationen, die nicht aktualisieren können oder noch PHP 8.1 oder älter einsetzen, angewiesen, diese Systeme bis zu einem möglichen Update offline zu nehmen.

Das nächste Problem ist bereits aufgetaucht. Am Freitag veröffentlichte das PHP-Team eine Umgehungslösung für eine dritte Sicherheitslücke zur Remote-Code-Ausführung, CVE-2026-115560. Ein Patch dafür liegt noch nicht vor. Betroffen sind nur Systeme „mit einer ungewöhnlichen Kombination aus Konfiguration und Anwendungscode“. Bis ein Update verfügbar ist, empfehlen die PHP-Entwickler, die Einstellung session.upload_progress zu deaktivieren – derselbe Schritt, den sie bereits vor den PHP2Shell-Patches empfohlen hatten. Der Sicherheits-Support für PHP 8.2 endet am 31. Dezember 2026. Für Server, die nie von PHP 8.1 wegmigriert wurden, ist der Support bereits ausgelaufen.

Schlagwörter: , , , , ,

Fügen Sie uns bei Google hinzu

Diskussion

Es gibt 0 Kommentare.