
Este repositório demonstra um pipeline de aprendizado de máquina para detectar técnicas do MITRE ATT&CK a partir de logs e enriquecer a saída usando um LLM local.
Este repositório demonstra um pipeline de aprendizado de máquina para detectar técnicas MITRE ATT&CK a partir de logs e enriquecer a saída usando um LLM local.
O projeto é dividido em dois componentes principais:
O modelo de ML é treinado para prever uma técnica MITRE (ou BENIGN) a partir de eventos de log.
Isso permite automatizar a detecção e a categorização de comportamento potencialmente malicioso.
commandline dos logsmitre_label (por exemplo, T1059.001, T1105, BENIGN)python scripts/train_mitre_model.py
Este script:
Carrega o dataset dataset_full_160k.csv
Divide os dados em conjuntos de treino/teste
Converte linhas de comando em vetores TF-IDF
Treina o modelo Random Forest
Avalia o desempenho (precisão, recall, F1-score, matriz de confusão)
Salva o modelo treinado e o vetorizador:
models/mitre_ml_model.pkl
models/tfidf_vectorizer.pkl

Quando o modelo de ML prevê uma técnica MITRE, o LLM enriquece o resultado fornecendo:
Explicação da técnica
Por que o comando corresponde à técnica
Intenção do atacante
Etapas de investigação recomendadas
Regras de detecção sugeridas
Esta etapa conecta a previsão bruta do ML a insights acionáveis para o analista de SOC.
O LLM local (ex.: Phi-3 via Ollama) é chamado com um prompt contendo:
Previsão do ML
Linha de comando bruta
python scripts/enrich_with_llm.py

pip3 install -r requirements.txt
Bibliotecas