
Un framework basato su LSTM per gestire lo squilibrio multiclasse nel rilevamento di botnet DGA
Questo repository contiene un codice molto semplice per classificare i domini come DGA o benigni. Questo codice dimostra i nostri risultati nel nostro articolo qui: https://www.sciencedirect.com/science/article/pii/S0925231217317320. Questo articolo presenta un nuovo algoritmo LSTM.MI per combinare modelli di classificazione binaria e multiclasse, dove l'LSTM originale viene adattato per essere sensibile ai costi. Gli elementi di costo vengono introdotti nella procedura di apprendimento tramite backpropagation per tenere conto dell'importanza di identificazione tra le classi.
Seguendo le istruzioni, puoi reimplementare il nostro metodo. Inoltre, forniamo anche alcuni dataset:
Se riutilizzi il nostro dataset, ti preghiamo di citare il nostro articolo come segue.
Tran, Duc, et al. "A LSTM based framework for handling multiclass imbalance in DGA botnet detection." Neurocomputing 275 (2018): 2401-2413.
oppure
@article{tran2018lstm, title={A LSTM based framework for handling multiclass imbalance in DGA botnet detection}, author={Tran, Duc and Mac, Hieu and Tong, Van and Tran, Hai Anh and Nguyen, Linh Giang}, journal={Neurocomputing}, volume={275}, pages={2401--2413}, year={2018}, publisher={Elsevier} }
'lstm.py' addestrerà il classificatore e genererà il report per valutare il metodo. Questo codice può essere eseguito sulla tua macchina locale o su una macchina con GPU (la GPU sarà ovviamente molto più veloce).
Se ci sono problemi con il download su Github, utilizza il link di backup su Google Drive: https://drive.google.com/drive/folders/1EI67tTK2NnwW9MZa3Qr2anPbJ_Dlix91?fbclid=IwAR0A_Ltrkrn9Zt4VvF0IFhE_v3GWz-YDqaq-SsHaU2mHNG5861KXylvZlBY