
Questo repository mostra una pipeline di machine learning per rilevare le tecniche MITRE ATT&CK dai log e arricchire l'output utilizzando un LLM locale.
Questo repository dimostra una pipeline di machine learning per rilevare tecniche MITRE ATT&CK dai log e arricchire l'output utilizzando un LLM locale.
Il progetto è suddiviso in due componenti principali:
Il modello ML è addestrato per prevedere una tecnica MITRE (o BENIGN) a partire dagli eventi di log.
Ciò consente di automatizzare il rilevamento e la categorizzazione di comportamenti potenzialmente malevoli.
commandline dai logmitre_label (es. T1059.001, T1105, BENIGN)python scripts/train_mitre_model.py
Questo script:
Carica il dataset dataset_full_160k.csv
Suddivide i dati in set di training/test
Converte le righe di comando in vettori TF-IDF
Addestra il modello Random Forest
Valuta le performance (precision, recall, F1-score, matrice di confusione)
Salva il modello addestrato e il vettorizzatore:
models/mitre_ml_model.pkl
models/tfidf_vectorizer.pkl

Una volta che il modello ML prevede una tecnica MITRE, l'LLM arricchisce il risultato fornendo:
Spiegazione della tecnica
Perché il comando corrisponde alla tecnica
Intento dell'attaccante
Passaggi di indagine consigliati
Regole di rilevamento suggerite
Questo passaggio colma il divario tra la previsione grezza del ML e gli insight utilizzabili da un analista SOC.
L'LLM locale (es. Phi-3 tramite Ollama) viene chiamato con un prompt contenente:
Previsione del ML
Riga di comando grezza
python scripts/enrich_with_llm.py

pip3 install -r requirements.txt
Librerie