Skip to content
KitploitKITPLOIT
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cpanel-cve-2026-41940-ioc — CVE-2026-41940 cPanel/WHM contournement d'authentification — scanner IOC qui corrige les faux positifs du script de détection en amont et ajoute une corrélation croisée des journaux. | Kitploit
Outils/GitHubGitHub/andrei-dr/cpanel-cve-2026-41940-ioc
Outils DéfensifsScanners de VulnérabilitésSécurité WebAuthentificationRéponse aux IncidentsAnalyse de Journaux
GitHubandrei-dr/cpanel-cve-2026-41940-ioc

cpanel-cve-2026-41940-ioc

CVE-2026-41940 cPanel/WHM contournement d'authentification — scanner IOC qui corrige les faux positifs du script de détection en amont et ajoute une corrélation croisée des journaux.

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
4il y a 3 moisPas encore vérifié
Partager

Scanner IOC CVE-2026-41940

Script de détection pour la contournement d'authentification cPanel/WHM (CVE-2026-41940) affectant toutes les versions de cPanel après la 11.40.

Il s'agit d'une réécriture du script de détection cPanel en amont avec des corrections pour les faux positifs et une corrélation de journaux ajoutée.

Ce qu'il fait

Analyse /var/cpanel/sessions/raw/ à la recherche de fichiers de session présentant des signes d'exploitation par injection de nouvelle ligne, puis recoupe les IP et jetons de session suspects avec les journaux d'accès/connexion/erreurs de cPanel. Analyse également l'access_log pour détecter une exploitation historique où le fichier de session a depuis expiré ou été purgé.

Corrections par rapport au script en amont

  1. Supprime l'expression régulière multi-lignes pass défectueuse qui génère des faux positifs sur chaque session authentifiée en production (l'expression correspond à tout champ pass= suivi d'une autre ligne, c'est-à-dire chaque fichier de session).
  2. Généralise la détection d'injection à method=badpass origin + TOUT attribut post-authentification au lieu d'exiger la combinaison étroite . Capture les variantes de PoC qui omettent .
token_denied + cp_security_token
token_denied
  • Sévérité à trois niveaux basée sur le résultat observé plutôt qu'un indicateur binaire :
    • CRITIQUE — jeton injecté observé avec 2xx/3xx dans l'access_log (exploitation réussie), ou exploitation historique trouvée dans l'access_log après expiration de la session
    • ÉLEVÉE — l'écriture d'injection a abouti mais le jeton n'est jamais apparu dans l'access_log (préparée, pourrait encore être utilisée)
    • MOYENNE — le jeton a été essayé mais chaque requête a reçu 4xx/5xx (le serveur l'a bloqué)
  • Recommandations de remédiation adaptées — CRITIQUE/ÉLEVÉE déclenche une réponse complète à incident ; MOYENNE uniquement signifie que le serveur a tenu et reçoit des étapes de nettoyage plus légères.
  • Recoupement par cpsessid et IP extraits des hits de l'access_log sur le jeton injecté, capturant les pivots d'IP de l'attaquant après injection.
  • Détection uniquement via access_log — capture l'exploitation où le fichier de session a expiré ou été purgé, en corrélant les tentatives de connexion échouées (POST /login/?login_only=1 -> 401) avec l'utilisation ultérieure réussie d'un jeton cpsess depuis la même IP.
  • Mode --extended pour une analyse plus approfondie des journaux sur des sources supplémentaires.
  • Exécution rapide (sans clonage)

    root@kitploit:~
    # Bash — fonctionne partout, sans dépendances
    bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh)
    
    # Python — plus rapide sur les grands répertoires de sessions, prend en charge --json
    curl -fsSLo /tmp/ioc.py https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.py
    python3 /tmp/ioc.py
    
    # Analyse étendue (l'une ou l'autre variante)
    bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh) --extended
    python3 /tmp/ioc.py --extended
    
    # Vérifier le code de sortie après exécution ($? = 0 propre, 1 IOC trouvés, 2 erreur d'environnement)
    echo $?
    

    Indicateurs curl : -f échoue sur les erreurs HTTP au lieu de rediriger une page d'erreur vers bash, -s silencieux (pas de barre de progression), -S affiche quand même les erreurs malgré -s, -L suit les redirections.

    Sortie JSON (Python uniquement)

    La variante Python prend en charge --json pour une sortie structurée que vous pouvez rediriger vers jq, alimenter un SIEM, ou traiter par programmation.

    root@kitploit:~
    # Sortie JSON complète
    python3 ioc.py --json
    
    # Juste les compteurs récapitulatifs
    python3 ioc.py --json | jq '.counts'
    
    # Lister tous les résultats CRITIQUES
    python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL")]'
    
    # Extraire les IP d'attaquant uniques
    python3 ioc.py --json | jq '.suspect_ips[]'
    
    # Afficher les résultats avec leurs IP sources (pour les listes de blocage pare-feu)
    python3 ioc.py --json | jq '[.findings[] | {severity, source_ip, token: .cp_security_token}]'
    
    # Obtenir toutes les IP ayant eu une utilisation de jeton réussie (pour blocage immédiat)
    python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL") | .source_ip] | unique'
    
    # Alimenter les données de recoupement pour une IP spécifique
    python3 ioc.py --json | jq '.cross_ref[.suspect_ips[0]]'
    

    Exemple de structure JSON :

    root@kitploit:~
    {
      "findings": [
        {
          "severity": "CRITICAL",
          "file": "/var/cpanel/sessions/raw/:Q3f8Ag2epeBuTaIZ",
          "verdict": "Injected token used successfully (2xx/3xx in access_log)",
          "origin": "address=203.0.113.50,app=whostmgrd,method=badpass",
          "source_ip": "203.0.113.50",
          "user": "root",
          "hasroot": "1",
          "tfa_verified": "0",
          "cp_security_token": "/cpsess04396539398",
          "token_denied": "1",
          "successful_internal_auth_with_timestamp": "9999999999",
          "token_hits": [
            "203.0.113.50 - root [04/30/2026:12:12:01 -0000] \"GET /cpsess04396539398/json-api/version HTTP/1.1\" 200 0 ..."
          ]
        },
        {
          "severity": "MEDIUM",
          "file": "/var/cpanel/sessions/raw/:2TDiaHwh_r8qOH5y",
          "verdict": "Injection landed; token was tried but BLOCKED (all 4xx/5xx)",
          "source_ip": "198.51.100.23",
          "cp_security_token": "/cpsess5637704041",
          "token_hits": [
            "198.51.100.23 - root [04/30/2026:04:08:09 -0000] \"GET /cpsess5637704041/json-api/version HTTP/1.1\" 403 0 ..."
          ]
        },
        {
          "severity": "CRITICAL",
          "file": null,
          "verdict": "Injected cpsess token used with 2xx/3xx after failed login; session expired or purged",
          "source_ip": "203.0.113.99",
          "cp_security_token": "/cpsess8705792557",
          "token_hits": ["..."]
        }
      ],
      "counts": {"critical": 2, "high": 15, "medium": 71, "warning": 0},
      "suspect_ips": ["203.0.113.50", "198.51.100.23", "203.0.113.99"],
      "suspect_ips_omitted": 0,
      "cross_ref": {
        "203.0.113.50": {
          "cpanel_access_log": ["...last 5 lines..."],
          "cpanel_login_log": ["..."]
        }
      },
      "advisory": "https://support.cpanel.net/hc/en-us/articles/40073787579671"
    }
    

    Utilisation (copie locale)

    root@kitploit:~
    git clone https://github.com/AndreiG6/cpanel-cve-2026-41940-ioc.git
    cd cpanel-cve-2026-41940-ioc
    
    # Variante Bash
    bash ioc.sh                # par défaut (CRITIQUE/ÉLEVÉE développées, MOYENNE/AVERTISSEMENT comptées uniquement)
    bash ioc.sh -v             # verbeux (développer tous les résultats)
    bash ioc.sh --extended     # verbeux + journaux plus profonds + toutes les IP dans le recoupement
    
    # Variante Python (même logique de détection, plus rapide, sortie structurée)
    python3 ioc.py             # par défaut (même comportement de repli que bash)
    python3 ioc.py -v          # verbeux
    python3 ioc.py --extended  # verbeux + journaux plus profonds
    python3 ioc.py --json      # JSON structuré (inclut toujours tous les résultats)
    

    Doit être exécuté en tant que root sur le serveur cPanel cible. La variante Python nécessite Python 3.6+ (fourni avec CentOS 7 / CloudLinux 7+).

    Codes de sortie

    CodeSignification
    0Aucun indicateur trouvé
    1IOC détectés
    2Erreur d'environnement (pas un serveur cPanel)

    Références

    • Avis cPanel
    • CVE-2026-41940 : Contournement d'authentification via injection de nouvelle ligne dans la gestion des sessions cPanel

    Licence

    MIT

    Télécharger l’outil