A part of the malware currently in circulation have the aim of creating botnets, or networks of bots, wich are computers infected by these viruses in order to implement DDoS attacks (Distributed Denial of Service), spam or steal data. These malware use DGAs - domain generation algorithms - to obtain URLs through which to connect to their command and control servers. The identification of these malicious domain names in the analysis of internet traffic allows the authorities to obscure the command and control servers and block these networks of infected computers. To date various machine learning techniques are used to carry out this detection and in particular the deep learning techniques have shown great effectiveness; however, these techniques require large labeled datasets containing both legit and malicious domain names and collecting the latter is very difficult. The aim of this research is to verify the possibility of identifying malicious domain names using their embedding vectors at the n-gram level, learned by the Fasttext implementation of the skip-gram model, that will be analyzed by an autoencoder neural network trained with only legit domain names. Several experiments are presented which differ in the size of the training dataset and in the method of combining the embedding vectors of the n-grams in order to create the embedding vectors of the domain names. The results of the tests carried out and the PCA analysis of the domain name embedding vectors show that the proposed method is not as effective in detecting as the same type of neural network used, however, with vectors of linguistic features extracted from domain names.

Una parte dei malware in circolazione ad oggi hanno l’obiettivo di creare delle botnets, ossia delle reti di bot, computer infettati per l’appunto da questi virus, al fine di attuare attacchi DDoS (Distributed Denial of Service), effettuare spam o rubare dati. Questi malware usano i DGA, ossia algoritmi di generazione dei nomi di dominio, per ottenere gli URL tramite i quali connettersi ai loro server di comando e controllo. L’identificazione di questi nomi di dominio malevoli nell’analisi del traffico internet permette alle autorità di oscurare i server di comando e controllo e bloccare queste reti di computer infetti. Ad oggi varie tecniche di machine learning vengono utilizzate per effettuare questa rilevazione e in particolare le tecniche di deep learning hanno dimostrato grande efficacia; tuttavia queste tecniche necessitano di grandi dataset etichettati contenenti sia nomi di dominio benevoli che malevoli e il reperimento di questi ultimi è molto difficoltoso. L’obiettivo di questa ricerca è quello verificare la possibilità di effettuare l’identificazione di nomi di dominio malevoli tramite l’utilizzo di vettori di embedding dei nomi di dominio a livello di n-grammi, appresi tramite l’implementazione di Fasttext del modello skip-gram, che verranno analizzati da una rete neurale autoencoder addestrata con soli nomi di dominio benevoli. Sono presentati diversi esperimenti che differiscono per dimensione del dataset di addestramento e per metodo di combinazione dei vettori di embedding degli n-grammi al fine di formare i vettori di embedding dei nomi di dominio. I risultati dei test effettuati e l’analisi PCA dei vettori di embedding dei nomi di dominio dimostrano che il metodo proposto non è efficace nella rilevazione quanto lo stesso tipo di rete neurale utilizzata però con vettori di features linguistiche estratte dai nomi di dominio.

Rilevamento non supervisionato di malware basato su DGA: test con i dataset UMUDGA e 25DGA

CIVITARESE, ANDREA
2021/2022

Abstract

A part of the malware currently in circulation have the aim of creating botnets, or networks of bots, wich are computers infected by these viruses in order to implement DDoS attacks (Distributed Denial of Service), spam or steal data. These malware use DGAs - domain generation algorithms - to obtain URLs through which to connect to their command and control servers. The identification of these malicious domain names in the analysis of internet traffic allows the authorities to obscure the command and control servers and block these networks of infected computers. To date various machine learning techniques are used to carry out this detection and in particular the deep learning techniques have shown great effectiveness; however, these techniques require large labeled datasets containing both legit and malicious domain names and collecting the latter is very difficult. The aim of this research is to verify the possibility of identifying malicious domain names using their embedding vectors at the n-gram level, learned by the Fasttext implementation of the skip-gram model, that will be analyzed by an autoencoder neural network trained with only legit domain names. Several experiments are presented which differ in the size of the training dataset and in the method of combining the embedding vectors of the n-grams in order to create the embedding vectors of the domain names. The results of the tests carried out and the PCA analysis of the domain name embedding vectors show that the proposed method is not as effective in detecting as the same type of neural network used, however, with vectors of linguistic features extracted from domain names.
2021
2022-10-27
DGA-based malware unsupervised detection: test with UMUDGA and 25DGA datasets
Una parte dei malware in circolazione ad oggi hanno l’obiettivo di creare delle botnets, ossia delle reti di bot, computer infettati per l’appunto da questi virus, al fine di attuare attacchi DDoS (Distributed Denial of Service), effettuare spam o rubare dati. Questi malware usano i DGA, ossia algoritmi di generazione dei nomi di dominio, per ottenere gli URL tramite i quali connettersi ai loro server di comando e controllo. L’identificazione di questi nomi di dominio malevoli nell’analisi del traffico internet permette alle autorità di oscurare i server di comando e controllo e bloccare queste reti di computer infetti. Ad oggi varie tecniche di machine learning vengono utilizzate per effettuare questa rilevazione e in particolare le tecniche di deep learning hanno dimostrato grande efficacia; tuttavia queste tecniche necessitano di grandi dataset etichettati contenenti sia nomi di dominio benevoli che malevoli e il reperimento di questi ultimi è molto difficoltoso. L’obiettivo di questa ricerca è quello verificare la possibilità di effettuare l’identificazione di nomi di dominio malevoli tramite l’utilizzo di vettori di embedding dei nomi di dominio a livello di n-grammi, appresi tramite l’implementazione di Fasttext del modello skip-gram, che verranno analizzati da una rete neurale autoencoder addestrata con soli nomi di dominio benevoli. Sono presentati diversi esperimenti che differiscono per dimensione del dataset di addestramento e per metodo di combinazione dei vettori di embedding degli n-grammi al fine di formare i vettori di embedding dei nomi di dominio. I risultati dei test effettuati e l’analisi PCA dei vettori di embedding dei nomi di dominio dimostrano che il metodo proposto non è efficace nella rilevazione quanto lo stesso tipo di rete neurale utilizzata però con vettori di features linguistiche estratte dai nomi di dominio.
File in questo prodotto:
File Dimensione Formato  
Civitarese_Andrea_tesi_triennale.pdf

accesso aperto

Descrizione: Documento di tesi
Dimensione 3.69 MB
Formato Adobe PDF
3.69 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12075/10884