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
Log4j-CVE-Detect — Detecções para CVE-2021-44228 dentro de binários aninhados | Kitploit
Ferramentas/GitHubGitHub/darkarnium/log4j-cve-detect
Análise EstáticaScanners de VulnerabilidadesSegurança de ContêineresAnálise de VulnerabilidadesDevSecOpsAnálise de BináriosSegurança da Cadeia de Suprimentos
GitHubdarkarnium/log4j-cve-detect

Log4j-CVE-Detect

Detecções para CVE-2021-44228 dentro de binários aninhados

Ver Repositório
357há 4 anosRevisado pelo Kitploit

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

Log4J-CVE-Detect

Este repositório contém um conjunto de regras YARA para detectar versões do log4j que são vulneráveis a CVE-2021-44228, CVE-2021-45046 e/ou CVE-2021-45105, procurando uma série de características presentes nas versões afetadas.

Esta ferramenta opera recursivamente em arquivos binários, como imagens Docker, pacotes de sistema, imagens de sistema de arquivos e até mesmo mídias de instalação. Veja a seção "Como funciona?" para uma lista completa dos formatos de arquivo suportados.

  • CVE-2021-44228
    • Procura pela assinatura de um construtor de JndiManager (< 2.15.0).
  • CVE-2021-45046
    • Procura por classes Interpolator que não importam JndiManager (< 2.16.0).
  • CVE-2021-45105
    • Procura por classes AbstractConfiguration que não importam ConfigurationStrSubstitutor (< 2.17.0).

Embora existam vários recursos disponíveis para detectar o uso inseguro do log4j usando CodeQL ou Semgrep, ainda não foram disponibilizados recursos para detecção de versões potencialmente vulneráveis do log4j dentro de artefatos binários.

Isso representa um desafio para organizações que executam aplicações empresariais que não foram desenvolvidas internamente, ou onde o código-fonte não está imediatamente disponível para as equipes que realizam a triagem inicial.

Como essa vulnerabilidade provavelmente aparecerá em vários locais "inesperados", essa ferramenta tem como objetivo auxiliar na detecção de versões vulneráveis do log4j dentro de artefatos compilados, que podem então ser revisados manualmente para determinar a possibilidade de exploração.

Ressalvas

Código ofuscado resultará em falsos negativos, onde um componente potencialmente vulnerável não pode ser detectado devido ao uso de ofuscação.

Como executar

Para executar esta ferramenta, clone este repositório e siga os passos abaixo. Presume-se que Docker e jq estejam instalados.

  1. Adicione os binários que precisam ser verificados na pasta artifacts/
  2. Execute quickstart.sh (./quickstart.sh)

Alternativamente, a execução pode ser personalizada usando o seguinte comando:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/vulnerability.json" \
      "/mnt/stacs/input"

Se você deseja apenas procurar por CVE-2021-44228, o seguinte comando pode ser usado:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-44228.json" \
      "/mnt/stacs/input"

Se você deseja apenas procurar por CVE-2021-45046, o seguinte comando pode ser usado:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-45046.json" \
      "/mnt/stacs/input"

Se você deseja apenas procurar por CVE-2021-45105, o seguinte comando pode ser usado:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-45105.json" \
      "/mnt/stacs/input"

Esta ferramenta também pode ser executada sem Docker. Consulte as instruções de instalação do STACS para saber como instalar o STACS sem Docker.

E quanto ao Docker?

Para escanear uma imagem Docker, ela primeiro precisa ser exportada para o diretório artifacts para escaneamento. Isso pode ser feito usando o seguinte comando:

root@kitploit:~
IMAGE="alpine:latest"
NAME="alpine_latest"

docker export $(docker create ${IMAGE}) -o artifacts/${NAME}.tar

Alternativamente, um contêiner em execução pode ser exportado usando apenas:

root@kitploit:~
# Replace CONTAINER_ID with the correct container identifier.
CONTAINER_ID="c29209118f9a"
NAME="widget_example"

docker export ${CONTAINER_ID} -o artifacts/${NAME}.tar

Encontrei um resultado! O que devo fazer?

Você precisará investigar o uso de log4j na aplicação para entender se o produto é vulnerável. Se isso não for possível, devido à falta de acesso ao código-fonte ou outros motivos, você deve verificar se o fornecedor publicou algum aviso sobre o assunto.

Não há garantia de que a inclusão de uma versão vulnerável do log4j signifique que o produto é vulnerável!

Se você não encontrar nenhum aviso, entre em contato com o fornecedor para perguntar sobre o impacto dessa vulnerabilidade no produto.

Consulte também as mitigações publicadas pelo projeto log4j. Alternativamente, e de preferência, atualize para uma versão não afetada do log4j.

Como funciona?

Embora não tenha sido projetada para esse fim, esta ferramenta usa o mecanismo STACS para decomposição e análise em massa de binários.

STACS é um scanner estático de credenciais baseado em YARA que suporta formatos de arquivos binários, análise de arquivos aninhados, conjuntos de regras e listas de exclusão componíveis e relatórios SARIF.

Como exemplo, esta ferramenta pode analisar um tarball que contém uma imagem Docker exportada, que contém um JAR em algum lugar do sistema de arquivos afetado por esta vulnerabilidade.

Ela também pode analisar arquivos aninhados nos formatos tar, jar, war, ear, zip, apk, bz2, tgz, xz, rpm, iso, etc.

Encontrei um falso positivo / negativo

Abra uma issue no Github descrevendo o problema e, quando possível, com um link para o artefato binário afetado.

Pull requests para ajustar os conjuntos de regras também seriam muito apreciados!

Validação

Consulte o diretório validation/ para obter um conjunto de arquivos de log da validação deste conjunto de regras.

Baixar ferramenta