Graph Representation of DNS-related Data for Detecting Malicious Actions
Master thesis
Permanent lenke
https://hdl.handle.net/11250/2781159Utgivelsesdato
2020Metadata
Vis full innførselSamlinger
Sammendrag
Skadevare er et økende problem innen cybersikkerhet. Forskning viser at en stor andel av skadevaren benytter seg av DNS-protokollen for å utføre ondsinnede handlinger. Da DNS-protokollen først ble utviklet var ikke sikkerhet et fokusområde. Derfor har DNS blitt et naturlig valg for skapere av skadevare. Nylige alvorlige sikkerhetshendelser har vist at DNS brukes i koordinering av botnets for å lokalisere sentrale styrende noder og sende kommandoer til klienter i botnettet. I tillegg brukes DNS for å eksfiltrere data fra infiserte klienter, og omdirigere nettverkstrafikk til usikre servere ved å kapre brukerens DNS-spørringer.
Denne masteroppgaven bruker grafdatabasen Neo4j for å representere data knyttet til DNS i en grafdatamodell. Modellen kan brukes for å å avdekke historiske relasjoner mellom ondsinnede domenenavn og IP-addresser involvert i IT-sikkerhetshendelser som ikke enkelt kan hentes ut med tradisjonelle metoder. Ved å strukturere DNS-trafikk i en grafdatabase skapes også en metode for å oppdage koblinger mellom domenenavn hvor data kan hentes ut på en raskere og enklere måte enn i tradisjonelle relasjonsdatabaser. Resultatet av dette arbeidet er et verktøy for innsamling og klassifisering av DNS-trafikk i lokale navnetjenere, som kan analysere logginformasjon og oppdage domenenavn knyttet til ondsinnet aktivitet. Malware is an increasing problem in the cyber security domain. Recent research indicates that almost all malwares exploit DNS to carry out their malicious purposes. The DNS protocol was not originally designed with security in mind, which has made it a natural choice for malware authors. Recent and notorious security incidents have shown that DNS is used for the coordination of botnets, specifically for locating command-and-control servers and disseminating commands from the botmaster, for data exfiltration through DNS tunnelling, and for redirecting network traffic to rogue servers by hijacking the user's DNS request.
The MSc thesis at hand utilizes the Neo4J graph database solution to represent DNS related data in a graph data model, and uses this to reveal historical relations between malicious domain names and IP addresses involved in security incidents that cannot be trivially extracted with other traditional methods. In addition, structuring the DNS traffic in a graph database presents a way to discover relations between domain names where data can be extracted faster and easier than in traditional relational databases. The outcome of this thesis is a mechanism that can operate at the level of the local DNS recursive resolver, e.g., ISP, in order to detect malicious domain names and block the related traffic.