Skip to content
KitploitKITPLOIT
ToolsBlog
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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2023-41892_PoC — Proof-of-concept-Skripte und Docker-Lab zur Reproduktion von CVE-2023-41892, einer vorauthentifizierten Remote-Code-Ausführungs-Schwachstelle in Craft CMS. Enthält Log-Poisoning- und Imagick-MSL-Dateischreib-Exploits. | Kitploit
Tools/GitHubGitHub/lyccyc/cve-2023-41892_poc
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHublyccyc/cve-2023-41892_poc

CVE-2023-41892_PoC

Proof-of-concept-Skripte und Docker-Lab zur Reproduktion von CVE-2023-41892, einer vorauthentifizierten Remote-Code-Ausführungs-Schwachstelle in Craft CMS. Enthält Log-Poisoning- und Imagick-MSL-Dateischreib-Exploits.

Repository anzeigen
1vor 2 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

CVE-2023-41892 Craft CMS PoC

Dieses Repository enthält Proof-of-Concept-Skripte und ein lokales Vulhub-Lab zur Reproduktion von CVE-2023-41892, einer Schwachstelle für Remote-Codeausführung ohne Authentifizierung in Craft CMS.

Verwenden Sie dieses Projekt nur in einem autorisierten lokalen Lab oder auf anderen Systemen, für die Sie ausdrücklich die Erlaubnis zum Testen haben.

Projektstruktur

root@kitploit:~
CVE-2323-41892_PoC/
+-- README.md
+-- LFI_to_RCE.py
+-- Imagick_PoC.py
+-- Vulnhub_env/
    +-- docker-compose.yml
    +-- README.md
    +-- README.zh-cn.md
    +-- 1.png ... 5.png

Zweck der Dateien

PfadZweck
LFI_to_RCE.pyPoC für Log-Poisoning mit anschließender lokaler Dateieinbindung über das Psy\Configuration-Gadget.
Imagick_PoC.pyPoC für beliebiges Dateischreiben über das Imagick-MSL-Gadget.
Vulnhub_env/docker-compose.ymlDocker-Compose-Lab, das verwundbares Craft CMS 4.4.14 und MySQL 5.7 startet.
Vulnhub_env/README.mdUrsprüngliche Reproduktionshinweise im Vulhub-Stil mit Request-Beispielen und Screenshots.
Vulnhub_env/README.zh-cn.mdChinesische Version der Vulhub-Reproduktionshinweise.
Vulnhub_env/*.pngScreenshots, die in der Vulhub-Umgebungsdokumentation verwendet werden.

Zusammenfassung der Schwachstelle

CVE-2023-41892 betrifft Craft-CMS-Versionen von 4.0.0-RC1 bis einschließlich 4.4.14. Das Problem wurde in Craft CMS 4.4.15 behoben.

Der von beiden Skripten verwendete verwundbare Endpunkt ist:

root@kitploit:~
/index.php?action=conditions/render

Die PoCs zielen auf die Standard-URL des lokalen Labs:

root@kitploit:~
http://localhost:8088

Wenn Ihr Lab auf einem anderen Host oder Port läuft, aktualisieren Sie den URL-Wert im oberen Teil von LFI_to_RCE.py und Imagick_PoC.py.

Voraussetzungen

  • Docker und Docker Compose
  • Python 3
  • Python-Paket: requests

Installieren Sie die Python-Abhängigkeit:

root@kitploit:~
pip install requests

Lab-Einrichtung

Starten Sie die verwundbare Craft-CMS-Umgebung:

root@kitploit:~
cd Vulnhub_env
docker compose up -d

Öffnen Sie den Craft-CMS-Installationsassistenten:

root@kitploit:~
http://localhost:8088/admin/install

Verwenden Sie während der Installation die folgenden Standard-Datenbankeinstellungen:

EinstellungWert
Datenbank-Hostdb
Datenbanknamecraftcms
Datenbankbenutzerroot
Datenbank-Passwortroot

Bestätigen Sie nach der Installation, dass die Website unter folgender Adresse erreichbar ist:

root@kitploit:~
http://localhost:8088

Verwendung

Führen Sie die Befehle aus dem Repository-Stammverzeichnis aus:

root@kitploit:~
cd CVE-2323-41892_PoC

PoC 1: Log-Poisoning zu RCE

Ausführen:

root@kitploit:~
python LFI_to_RCE.py

Was es tut:

  1. Sendet fehlerhaftes JSON mit PHP-Code an das Craft-CMS-Log.

  2. Erstellt einen Log-Dateipfad anhand des aktuellen lokalen Datums:

    root@kitploit:~
    ../storage/logs/web-YYYY-MM-DD.log
    
  3. Verwendet craft\elements\conditions\users\UserCondition mit \Psy\Configuration, um die vergiftete Log-Datei einzubinden.

  4. Prüft, ob die Ausgabe von phpinfo() in der Antwort erscheint.

Erwartete Ausgabe bei Erfolg:

root@kitploit:~
[*] Starting Log Poisoning...
[+] Payload sent successfully!
[*] Starting LFI to RCE...
[+] phpinfo() executed successfully!

PoC 2: Imagick-MSL-Dateischreiben

Ausführen:

root@kitploit:~
python Imagick_PoC.py

Was es tut:

  1. Lädt eine MSL-Nutzlast über Multipart-Formulardaten hoch.
  2. Löst die Objekterstellung mit dem Imagick-Gadget aus.
  3. Versucht, webshell.php in das Web-Root-Verzeichnis zu schreiben.
  4. Fordert http://localhost:8088/webshell.php an und prüft auf phpinfo().

Erwartete Ausgabe bei Erfolg:

root@kitploit:~
[*] Sending multipart/form-data payload to trigger Imagick gadget...
[+] Success: phpinfo() output found.

Der Imagick-Angriffsweg kann den PHP-Worker nach dem Auslösen der Nutzlast zum Absturz bringen. Im Vulhub-Lab kann dies dennoch normal sein, wenn webshell.php vor dem Absturz geschrieben wurde.

Konfiguration

Beide Skripte definieren die Ziel-URL am Anfang der Datei:

root@kitploit:~
URL = "http://localhost:8088"

Ändern Sie diesen Wert, wenn das verwundbare Lab unter einer anderen Adresse erreichbar ist.

Imagick_PoC.py prüft die erzeugte Datei unter:

root@kitploit:~
OUTPUT_FILE = "/webshell.php"

Fehlerbehebung

Die Skripte können keine Verbindung herstellen

  • Stellen Sie sicher, dass die Container laufen:

    root@kitploit:~
    cd Vulnhub_env
    docker compose ps
    
  • Stellen Sie sicher, dass die Website unter http://localhost:8088 erreichbar ist.

  • Prüfen Sie, ob ein anderer Dienst Port 8088 bereits belegt.

  • Aktualisieren Sie den URL-Wert in den Python-Skripten, wenn Sie den freigegebenen Port geändert haben.

LFI_to_RCE.py zeigt PHP Version nicht an

  • Stellen Sie sicher, dass die Craft-CMS-Installation abgeschlossen ist.
  • Stellen Sie sicher, dass Craft CMS Logs unter storage/logs/ schreibt.
  • Prüfen Sie, ob das Datum im Log-Dateinamen mit dem Container-Datum übereinstimmt.
  • Wenn sich die Daten von Host und Container unterscheiden, aktualisieren Sie den erzeugten Pfad web-YYYY-MM-DD.log in LFI_to_RCE.py.

Imagick_PoC.py gibt für /webshell.php ein 404 zurück

  • Stellen Sie sicher, dass die Imagick-PHP-Erweiterung in der Zielumgebung aktiviert ist.
  • Stellen Sie sicher, dass der PHP-Prozess in das Web-Root-Verzeichnis schreiben kann.
  • Stellen Sie sicher, dass hochgeladene temporäre Dateien unter /tmp/php* erstellt werden.
  • Wiederholen Sie den Vorgang einmal, wenn der PHP-Worker während der Trigger-Anfrage abgestürzt ist.

Bereinigung

Stoppen Sie das Lab:

root@kitploit:~
cd Vulnhub_env
docker compose down

Entfernen Sie Container und das Datenbank-Volume, wenn Sie eine saubere Neuinstallation wünschen:

root@kitploit:~
docker compose down -v

Gegenmaßnahmen

Aktualisieren Sie Craft CMS auf 4.4.15 oder höher.

Wenn eine Ausnutzung vermutet wird, rotieren Sie den Craft-CMS-Sicherheitsschlüssel, die Datenbank-Zugangsdaten, Anwendungsgeheimnisse und alle in der Umgebung gespeicherten Zugangsdaten.

Referenzen

  • Vulhub-Reproduktion: https://github.com/vulhub/vulhub/blob/master/craftcms/CVE-2023-41892/README.md
  • Craft-CMS-Sicherheitshinweis: https://github.com/craftcms/cms/security/advisories/GHSA-4w8r-3xrw-v25g
  • NVD-Eintrag: https://nvd.nist.gov/vuln/detail/CVE-2023-41892
Tool herunterladen