Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
cpanel-cve-2026-41940-ioc — CVE-2026-41940 scanner de IOC de bypass de autenticação cPanel/WHM — corrige falsos positivos no script de detecção upstream, adiciona correlação cruzada de logs | Kitploit
Ferramentas/GitHubGitHub/andrei-dr/cpanel-cve-2026-41940-ioc
Ferramentas DefensivasScanners de VulnerabilidadesSegurança WebAutenticaçãoResposta a IncidentesAnálise de Logs
GitHubandrei-dr/cpanel-cve-2026-41940-ioc

cpanel-cve-2026-41940-ioc

CVE-2026-41940 scanner de IOC de bypass de autenticação cPanel/WHM — corrige falsos positivos no script de detecção upstream, adiciona correlação cruzada de logs

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Ver Repositório
4há 3 mesesAinda não revisado
Compartilhar

Scanner IOC CVE-2026-41940

Script de detecção para a bypass de autenticação do cPanel/WHM (CVE-2026-41940) que afeta todas as versões do cPanel posteriores à 11.40.

Esta é uma reescrita do script de detecção upstream do cPanel com correções para falsos positivos e correlação de logs adicionada.

O que ele faz

Verifica /var/cpanel/sessions/raw/ em busca de arquivos de sessão que apresentem sinais de exploração por injeção de nova linha e, em seguida, cruza IPs suspeitos e tokens de sessão com os logs de acesso/login/erro do cPanel. Também verifica o access_log em busca de exploração histórica quando o arquivo de sessão já expirou ou foi removido.

Correções em relação ao script upstream

  1. Remove a regex multi-linha pass defeituosa que gera falsos positivos em toda sessão autenticada em produção (a regex corresponde a qualquer campo pass= seguido de outra linha, o que ocorre em todo arquivo de sessão).
  2. Generaliza a detecção de injeção para origin method=badpass + QUALQUER atributo pós-autenticação em vez de exigir a combinação restrita . Captura variantes de PoC que omitem .
token_denied + cp_security_token
token_denied
  • Severidade em três níveis com base no resultado observado, em vez de um sinalizador binário:
    • CRITICAL — token injetado observado com 2xx/3xx no access_log (exploração bem-sucedida), ou exploração histórica encontrada no access_log após a expiração da sessão
    • HIGH — a escrita da injeção foi concluída, mas o token nunca apareceu no access_log (preparado, ainda pode ser usado)
    • MEDIUM — o token foi tentado, mas todas as solicitações receberam 4xx/5xx (o servidor bloqueou)
  • Orientação de remediação escalonada — CRITICAL/HIGH aciona resposta completa a incidentes; apenas MEDIUM significa que o servidor resistiu e recebe etapas de limpeza mais leves.
  • Cruzamento por cpsessid e IPs coletados dos hits no access_log com o token injetado, capturando pivôs de IP do atacante após a injeção.
  • Detecção apenas pelo access_log — captura exploração em que o arquivo de sessão expirou ou foi removido, correlacionando tentativas de login falhas (POST /login/?login_only=1 -> 401) com uso subsequente bem-sucedido do token cpsess a partir do mesmo IP.
  • Modo --extended para varredura mais profunda de logs em fontes adicionais.
  • Execução rápida (sem necessidade de clone)

    root@kitploit:~
    # Bash — funciona em qualquer lugar, sem dependências
    bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh)
    
    # Python — mais rápido em diretórios de sessão grandes, suporta --json
    curl -fsSLo /tmp/ioc.py https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.py
    python3 /tmp/ioc.py
    
    # Varredura estendida (qualquer variante)
    bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh) --extended
    python3 /tmp/ioc.py --extended
    
    # Verifique o código de saída após a execução ($? = 0 limpo, 1 IOCs encontrados, 2 erro de ambiente)
    echo $?
    

    Flags do curl: -f falha em erros HTTP em vez de enviar uma página de erro para o bash, -s silencioso (sem barra de progresso), -S ainda mostra erros apesar de -s, -L segue redirecionamentos.

    Saída JSON (somente Python)

    A variante Python suporta --json para saída estruturada que você pode canalizar para jq, alimentar um SIEM ou processar programaticamente.

    root@kitploit:~
    # Saída JSON completa
    python3 ioc.py --json
    
    # Apenas os resumos de contagem
    python3 ioc.py --json | jq '.counts'
    
    # Liste todos os achados CRITICAL
    python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL")]'
    
    # Extraia IPs de atacantes únicos
    python3 ioc.py --json | jq '.suspect_ips[]'
    
    # Mostre achados com seus IPs de origem (para listas de bloqueio de firewall)
    python3 ioc.py --json | jq '[.findings[] | {severity, source_ip, token: .cp_security_token}]'
    
    # Obtenha todos os IPs que tiveram uso bem-sucedido de token (para bloqueio imediato)
    python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL") | .source_ip] | unique'
    
    # Alimente dados de referência cruzada para um IP específico
    python3 ioc.py --json | jq '.cross_ref[.suspect_ips[0]]'
    

    Exemplo de estrutura 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"
    }
    

    Uso (cópia local)

    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                # padrão (CRITICAL/HIGH expandidos, apenas contagens de MEDIUM/WARNING)
    bash ioc.sh -v             # verboso (expande todos os achados)
    bash ioc.sh --extended     # verboso + logs mais profundos + todos os IPs na referência cruzada
    
    # Variante Python (mesma lógica de detecção, mais rápida, saída estruturada)
    python3 ioc.py             # padrão (mesmo comportamento de colapso do bash)
    python3 ioc.py -v          # verboso
    python3 ioc.py --extended  # verboso + logs mais profundos
    python3 ioc.py --json      # JSON estruturado (sempre inclui todos os achados)
    

    Deve ser executado como root no servidor cPanel de destino. A variante Python requer Python 3.6+ (incluído no CentOS 7 / CloudLinux 7+).

    Códigos de saída

    CódigoSignificado
    0Nenhum indicador encontrado
    1IOCs detectados
    2Erro de ambiente (não é um servidor cPanel)

    Referências

    • Aviso do cPanel
    • CVE-2026-41940: Bypass de autenticação via injeção de nova linha no tratamento de sessão do cPanel

    Licença

    MIT

    Baixar ferramenta