Einmalige Erkennung und Behebung für über CVE-2026-41940 kompromittierte cPanel/WHM-Server, einschließlich IOC-Prüfungen, Malware-Bereinigung, C2-Blockierung und Patching.
Einmalige Erkennung und Behebung für cPanel/WHM-Server, die über CVE-2026-41940 und die
nuclear.x86-Botnet-Kampagne kompromittiert wurden.
Am 28. April 2026 hat cPanel eine Pre-Authentication-Authentifizierungs-Bypass-Schwachstelle (CVE-2026-41940, CVSS 9.8) offengelegt, die alle unterstützten cPanel- und WHM-Versionen nach 11.40 betrifft. Eine einzelne HTTP-Anfrage an Port 2087 ermöglicht es einem nicht authentifizierten Angreifer, eine user=root-Sitzung einzuschleusen und direkt in WHM zu gelangen.
Die Ausnutzung wurde in freier Wildbahn seit mindestens dem 23. Februar 2026 beobachtet – sechs Wochen bevor der Patch veröffentlicht wurde. Die Kampagne, die wir auf mehreren Servern bereinigt haben, installiert ein Linux-Botnet namens nuclear.x86 zusammen mit einem XMRig-basierten Crypto-Miner.
Dieses Repository enthält ein einzelnes Bash-Skript, das:
/scripts/upcp --forceEs ist für Hosting-Anbieter, Systemadministratoren und cPanel-Reseller konzipiert, die eine Serverflotte schnell triagieren müssen.
Wenn wget oder curl beim Herunterladen Killed zurückgeben, läuft die Malware noch – nuclear.x86 tötet aktiv Download-Tools, um die Bereinigung zu verhindern. Führen Sie zuerst den Kill-Schritt aus (das Skript erledigt dies für Sie im --fix-Modus).
Wenn Sie dieses Skript deshalb nicht herunterladen können, kopieren Sie es per SSH von Ihrem Laptop ein oder verwenden Sie scp.
# Als root, auf dem cPanel-Server:
cd /root
wget https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh
chmod +x fix-cpanel-cve-2026-41940.sh
Oder mit curl:
cd /root
curl -fsSLO https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh
chmod +x fix-cpanel-cve-2026-41940.sh
Einzeiler (prüfen Sie das Skript zuerst, dann ausführen):
cd /root && \
curl -fsSLO https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh && \
chmod +x fix-cpanel-cve-2026-41940.sh && \
less fix-cpanel-cve-2026-41940.sh
# Nach der Prüfung ausführen:
./fix-cpanel-cve-2026-41940.sh
Vor der Ausführung verifizieren. Dieses Skript läuft als root und verändert den Systemzustand. Öffnen und lesen Sie es zuerst. Leiten Sie keine zufälligen Skripte aus dem Internet direkt in
bash.
# 1. Nur scannen (Standard, keine Änderungen – immer sicher ausführbar)
./fix-cpanel-cve-2026-41940.sh
# 2. Scannen + beheben, mit Bestätigungsabfrage für jede destruktive Aktion
./fix-cpanel-cve-2026-41940.sh --fix
# 3. Vollautomatisch: Fix + cPanel-Update + Cache-Bereinigung + leichte Härtung
./fix-cpanel-cve-2026-41940.sh --auto
# 4. Unbeaufsichtigt (keine Abfragen – für cron, Jump-Boxen, Flotten-Skripte)
./fix-cpanel-cve-2026-41940.sh --auto -y
# 5. Hilfe
./fix-cpanel-cve-2026-41940.sh --help
| Code | Bedeutung |
|---|---|
0 | Sauber – keine IOCs erkannt |
2 | Kompromittierungs-Indikatoren erkannt (Bericht prüfen) |
1 / andere | Pre-Flight-Fehler (nicht root, kein cPanel-Server usw.) |
/var/log/cpanel-cve-fix/scan-<TIMESTAMP>.log/var/log/cpanel-cve-fix/report-<TIMESTAMP>.txt/root/cve-cleanup-backup-<TIMESTAMP>/| # | Prüfung | Was erkannt wird |
|---|---|---|
| 1 | cPanel-Build vs. gepatchte Releases | Verwundbare Hosts (listet alle 6 gepatchten Builds) |
| 2 | Laufende Prozesse | nuclear.x86, xmrig, cpuminer, minerd, xmr-stak, 4thepool_miner |
| 3 | Aktive Netzwerkverbindungen | Die drei bekannten C2-IPs + Mining-Pool-Ports |
| 4 | Shell-History-Dateien | IOC-Befehle in bash_history / zsh_history |
| 5 | Firewall-Integrität | Der iptables -F-Sabotage-Schritt |
| 6 | cPanel-Sitzungs-Rohverzeichnis | Gefälschte user=root-Sitzungsdateien |
| 7 | /tmp, /var/tmp, /dev/shm | Kürzlich abgelegte ausführbare Dateien |
| 8 | Cron-Einträge | Persistenz (System + pro Benutzer) |
| 9 | authorized_keys-Dateien | Neue SSH-Schlüssel – Nur-Lese-Audit |
| 10 | cPanel-Zugriffslogs | Go-http-client / python-requests Exploit-Signaturen |
| 11 | Kritische Binärdateien | Manipulierte wget / curl / ls / ps (mtime + RPM-Verifizierung) |
/var/cpanel/sessions/raw/* (mit tar.gz-Backup zuerst)cpsrvd, cpdavd, cphulkd, queueprocd, dnsadmin/scripts/upcp --force (nur in --auto)rndc flush), alte Journal-LogsLF_INTEGRITY, falls verfügbarDiese Maßnahmen würden bei unbeaufsichtigter Ausführung über SSH mehr schaden als nützen, daher gehen sie stattdessen in den Bericht für manuelle Aktionen:
/home/*/public_html löschenFür das Durchsuchen vieler Server von einer Jump-Box aus:
mkdir -p reports
while read -r host; do
echo "=== $host ==="
scp fix-cpanel-cve-2026-41940.sh "root@${host}:/root/" >/dev/null
ssh "root@${host}" '/root/fix-cpanel-cve-2026-41940.sh --auto -y'
scp "root@${host}:/var/log/cpanel-cve-fix/report-*.txt" "reports/${host}.txt" 2>/dev/null
done < servers.txt
Dann die Berichte durchsuchen:
grep -l "COMPROMISE INDICATORS PRESENT" reports/*
Das Skript listet diese in seinem Bericht auf. Keine davon kann sicher automatisiert werden.
/etc/shadow)wp-config.php, .env, config.php usw. aktualisieren/home/*/public_html auf Web-Shells prüfen (kürzlich geänderte .php-Dateien)Sie müssen mindestens einen dieser Builds haben:
| Track | Gepatchter Build |
|---|---|
| 110.0.x | 11.110.0.97 |
| 118.0.x | 11.118.0.63 |
| 126.0.x | 11.126.0.54 |
| 132.0.x | 11.132.0.29 |
| 134.0.x | 11.134.0.20 |
| 136.0.x | 11.136.0.5 |
| WP² | 11.136.1.7 |
Prüfen Sie Ihre Version mit /usr/local/cpanel/cpanel -V.
| Typ | Indikator |
|---|---|
| IP | 87.121.84.78 (nuclear.x86-Drop) |
| IP | 45.148.120.23 (nuclear.x86-Alternativ-Drop) |
| IP | 31.57.109.131 (Miner-Skript) |
| Datei | nuclear.x86 (Mirai-Derivat-ELF) |
| Prozess | nuclear.x86 xd |
| Skript | 4thepool_miner.sh |
| User-Agent | Go-http-client/1.1 auf Port 2087 |
| User-Agent | python-requests/* auf Port 2087 |
| Muster | Neue Datei in /var/cpanel/sessions/raw/ mit user=root ohne passenden erfolgreichen Login in login_log |
| Muster | Leere / geleerte iptables-Regelsatz |
Ist es sicher, auf einem gesunden Server auszuführen? Ja. Der Standardmodus ist Nur-Scan und nimmt keine Änderungen vor. Die Fix- und Auto-Modi sind idempotent.
Verursacht es Ausfallzeiten?
--fix verursacht eine kurze WHM/cPanel-Unterbrechung, wenn cpsrvd neu gestartet wird (~10 Sekunden). --auto führt /scripts/upcp --force aus, was 10–30 Minuten dauern kann – Websites bleiben währenddessen online, aber WHM ist am Ende kurzzeitig nicht verfügbar.
Meine cPanel-Version ist nicht in der gepatchten Liste – bin ich sicher? Wenn Sie auf einem Track älter als 110.0.x sind, verwenden Sie eine End-of-Life-Version. cPanel wird keinen Patch ausliefern. Behandeln Sie den Host als kompromittiert, bis das Gegenteil bewiesen ist, und aktualisieren Sie dringend.
Das Skript meldet Killed, wenn es etwas tun will.
Das ist nuclear.x86, das aktiv Ihre Tools tötet. Führen Sie den Kill-Schritt zuerst manuell aus:
pkill -9 -f nuclear.x86
Dann führen Sie das Skript erneut aus.
Funktioniert das auf AlmaLinux / Rocky / CloudLinux / CentOS? Ja – alle Standard-cPanel-Plattformen. Getestet auf AlmaLinux 8, Rocky 9, CloudLinux 7+.
Wird es meine Kunden-Websites anfassen?
Nein. Das Skript modifiziert nichts in /home/*/public_html. Es berührt nur OS-Ebene-Konfiguration, cPanel-Sitzungen, Firewall-Regeln und bekannte schädliche Prozesse.
PRs sind willkommen – insbesondere für:
Bitte fügen Sie nichts hinzu, das automatisch Anmeldedaten rotiert oder Benutzerdaten löscht – die destruktive Oberfläche bewusst schmal zu halten ist beabsichtigt.
MIT. Nutzen Sie es, forken Sie es, integrieren Sie es in Ihre eigenen Tools. Namensnennung geschätzt, aber nicht erforderlich.
Erstellt von WHMCSPilot.com – SM.
Schwachstellen-Forschung: cPanel-Sicherheitsteam, watchTowr Labs, Rapid7, KnownHost und die breitere Hosting-Community, die IOCs geteilt haben, während sich die Kampagne entfaltete.
Dieses Skript wird wie besehen, ohne Gewährleistung, bereitgestellt. Es ist ein Ersthelfer-Triage-Tool – kein Ersatz für ein vollständiges Incident-Response-Engagement. Wenn Sie personenbezogene Daten, Zahlungsdaten oder andere regulierte Daten verarbeiten, konsultieren Sie Ihren Datenschutzbeauftragten und eine qualifizierte IR-Firma, bevor Sie eine kompromittierte Box für sauber erklären.
Wenn ein Server aktiv kompromittiert wurde, ist der sicherste Weg immer der Neuaufbau aus einem bekannten guten Backup, nicht die Bereinigung vor Ort.