Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
PHP-8.1.0-dev-Backdoor — PHP 8.1.0-dev User-Agentt Backdoor Remote Code Execution (RCE) | Kitploit
Tools/GitHubGitHub/k3ystr0k3r/php-8.1.0-dev-backdoor
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitLieferkettensicherheitPayload-Entwicklung
GitHubk3ystr0k3r/php-8.1.0-dev-backdoor

PHP-8.1.0-dev-Backdoor

PHP 8.1.0-dev User-Agentt Backdoor Remote Code Execution (RCE)

Repository anzeigen
119vor 3 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

PHP 8.1.0-dev User-Agentt-Backdoor Remote Code Execution (RCE)

Schweregrad: Kritisch (CVSS-Äquivalent: 10.0)

Schwachstellentyp: Supply-Chain-Backdoor / Remote Code Execution (RCE)

Betroffene Software: PHP 8.1.0-dev (nur Entwicklungs-Build)

Angriffsvektor: Remote (ohne Authentifizierung)

Erforderliche Authentifizierung: Nein

Benutzerinteraktion: Keine

Auswirkung: Vollständige Kompromittierung des Systems


Überblick

Die PHP 8.1.0-dev User-Agentt-Backdoor ist eine der berüchtigtsten Supply-Chain-Kompromittierungen in der Geschichte der Open-Source-Software. Im Gegensatz zu herkömmlichen Schwachstellen, die auf Programmierfehlern beruhen, entstand dieses Problem dadurch, dass absichtlich bösartiger Code in das offizielle PHP-Quellcode-Repository eingefügt wurde.

Die Backdoor trat in Entwicklungs-Snapshots von PHP 8.1.0-dev im März 2021 auf, nachdem Angreifer die PHP-Git-Infrastruktur erfolgreich kompromittiert hatten. Die bösartigen Commits gaben sich als vertrauenswürdige PHP-Maintainer aus und führten einen versteckten Mechanismus ein, der beliebigen PHP-Code ausführen konnte, sobald ein speziell präparierter HTTP-Header empfangen wurde.

Obwohl die Backdoor nur kurz existierte, bevor sie entdeckt und entfernt wurde, war jeder Server, der einen der kompromittierten Entwicklungs-Builds einsetzte, sofort anfällig für Remote Code Execution (RCE) ohne Authentifizierung.

Dieser Vorfall veränderte den PHP-Entwicklungsworkflow grundlegend und führte letztlich dazu, dass das PHP-Quellcode-Repository von seiner selbst gehosteten Git-Infrastruktur weg migriert wurde. :contentReference[oaicite:0]{index=0}


Warum diese Schwachstelle einzigartig ist

Die meisten Remote-Code-Execution-Schwachstellen entstehen durch:

  • Pufferüberläufe
  • Fehler bei der Eingabevalidierung
  • Speicherkorruption
  • Logikfehler

Diese Schwachstelle war anders.

Es war kein Programmierfehler.

Es war eine absichtlich platzierte Backdoor, die in legitimen PHP-Quellcode versteckt war.

Statt eine bestehende Schwachstelle auszunutzen, modifizierten die Angreifer PHP selbst, um beliebigen PHP-Code auszuführen, der von jedem mit einer HTTP-Anfrage geliefert wurde.

Das macht diesen Vorfall zu einem der bekanntesten Beispiele für einen Software-Supply-Chain-Angriff.


Hintergrund

Am 28. März 2021 tauchten zwei verdächtige Commits im Git-Repository von PHP auf.

Beide Commits schienen von bekannten PHP-Maintainern zu stammen.

Zunächst sahen sie harmlos aus.

Die Commit-Nachrichten ähnelten gewöhnlichen Tippfehler-Korrekturen.

Forscher bemerkten jedoch schnell verdächtigen Code, der dem PHP-Interpreter hinzugefügt worden war.

Der eingefügte Code durchsuchte eingehende HTTP-Anfragen nach einem benutzerdefinierten Header:

User-Agentt

Beachten Sie das zusätzliche „t“.

Dieser subtile Unterschied in der Schreibweise half dabei, die Backdoor bei einer oberflächlichen Überprüfung zu verbergen.

Wenn der Header mit der Auslöser-Zeichenkette begann:

zerodium

führte PHP sofort alles Folgende aus, und zwar mit:

zend_eval_string()

Dies ermöglichte es praktisch jedem, beliebigen PHP-Code remote auszuführen.

Die bösartigen Commits wurden innerhalb weniger Stunden nach der Entdeckung entfernt. Spätere Ermittlungen deuteten darauf hin, dass die Angreifer die PHP-Git-Infrastruktur kompromittiert hatten, anstatt die Signaturschlüssel der Maintainer auf legitime Weise zu erlangen. :contentReference[oaicite:1]{index=1}


Grundursache

Der eingefügte Code führte im Wesentlichen die folgende Logik aus:

Incoming HTTP Request
          │
          ▼
Read User-Agentt Header
          │
          ▼
Does header start with "zerodium"?
          │
      Yes ▼
Execute remaining text as PHP
          │
          ▼
Attacker gains Remote Code Execution

Statt den Header als harmlose Metadaten zu behandeln, wertete PHP ihn direkt als ausführbaren PHP-Code aus.


Technische Aufschlüsselung

Normalerweise enthält eine HTTP-Anfrage Header wie:

GET / HTTP/1.1

Host: example.com

User-Agent: Mozilla Firefox

Die kompromittierte PHP-Version verarbeitete zusätzlich:

User-Agentt:

Wenn ihr Wert mit Folgendem begann:

zerodium

rief PHP auf:

zend_eval_string()

Der verbleibende Inhalt wurde zu ausführbarem PHP-Code.

Konzeptionell:

User-Agentt:

zerodium
        │
        ▼
zend_eval_string(payload)
        │
        ▼
Remote Code Execution

Angriffsablauf

Attacker
    │
    │ HTTP Request
    ▼

GET /

User-Agentt: zerodiumsystem("id");

    │
    ▼

PHP 8.1.0-dev

    │
    ▼

Backdoor Triggered

    │
    ▼

system("id")

    │
    ▼

Command Executed

    │
    ▼

Output Returned

Keine Authentifizierung.

Keine Sitzung.

Keine Anmeldedaten.

Eine einzige HTTP-Anfrage genügte.


Warum „User-Agentt“?

Die Angreifer wählten absichtlich

User-Agentt

anstelle von

User-Agent

weil:

  • es fast identisch aussah
  • es oberflächliche Überprüfungen umging
  • die meisten Entwickler unbekannte HTTP-Header ignorieren
  • bestehende Anwendungen normal weiterarbeiten würden

Dieser winzige Tippfehler verbarg eine vollständige Remote-Code-Execution-Backdoor.


Betroffene Versionen

Ausschließlich:

PHP 8.1.0-dev

Konkret die kompromittierten Entwicklungs-Snapshots, die während des Vorfalls im März 2021 veröffentlicht wurden.

Stabile Versionen wie:

  • PHP 7.x
  • PHP 8.0
  • PHP 8.1 Stable

waren niemals betroffen.


Voraussetzungen für den Angriff

Der Angreifer benötigte lediglich:

  • Netzwerkzugriff
  • HTTP-Konnektivität
  • einen verwundbaren PHP-8.1.0-dev-Server

Keine Authentifizierung.

Kein Brute-Force.

Kein Login.

Kein vorheriger Zugriff.


Auswirkung

Eine erfolgreiche Ausnutzung ermöglicht es Angreifern:

  • Beliebige Betriebssystembefehle auszuführen
  • Beliebigen PHP-Code auszuführen
  • Sensible Dateien zu lesen
  • Webanwendungen zu verändern
  • Web-Shells hochzuladen
  • Dauerhafte Backdoors zu installieren
  • Datenbanken auszulesen (Dump)
  • Anmeldedaten zu stehlen
  • Privilegien zu erweitern
  • Tiefer in interne Netzwerke vorzudringen (Pivoting)
  • Den betroffenen Host vollständig zu kompromittieren

In der Praxis führt diese Schwachstelle zu einer vollständigen Serverkompromittierung.


MITRE ATT&CK-Zuordnung

TechnikBeschreibung
T1195Supply Chain Compromise
T1059Command and Scripting Interpreter
T1505Server Software Component
T1105Ingress Tool Transfer
T1071Application Layer Protocol
T1106Native API
T1055Process Injection (possible post exploitation)
T1027Obfuscated Files or Information

Erkennung

Administratoren sollten Systeme, die Folgendes preisgeben, umgehend untersuchen:

PHP/8.1.0-dev

in Antwort-Headern wie:

X-Powered-By:

PHP/8.1.0-dev

HTTP-Logs sollten ebenfalls auf verdächtige Anfragen untersucht werden, die Folgendes enthalten:

User-Agentt

oder

zerodium

Viele Intrusion-Detection-Systeme und IPS-Produkte enthalten inzwischen Signaturen, die speziell auf dieses Angriffsmuster zugeschnitten sind. :contentReference[oaicite:2]{index=2}


Indikatoren für eine Kompromittierung (IOCs)

Mögliche Indikatoren sind:

  • Anfragen, die User-Agentt enthalten
  • Header-Werte, die mit zerodium beginnen
  • Unerwartete Befehlsausführung
  • Unbekannte PHP-Dateien
  • Neue Web-Shells
  • Verdächtige, von PHP erzeugte Kindprozesse
  • Unerklärliche ausgehende Netzwerkverbindungen

Komplexität der Ausnutzung

EigenschaftWert
AuthentifizierungKeine
BenutzerinteraktionKeine
KomplexitätSehr gering
Erforderliche PrivilegienKeine
RemoteJa
Tool herunterladen