Heuristisk analyse er en metode til registrering af virus ved at undersøge koden for mistænkelige egenskaber.
Traditionelle metoder til virusregistrering omfatter identifikation af malware ved at sammenligne koden i et program med koden i kendte virustyper, der allerede er opdaget, analyseret og registreret i en database – også kaldet signaturregistrering.
Selv om den er nyttig og stadig anvendes, er signaturregistreringsmetoden også blevet mere begrænset på grund af udviklingen af nye trusler, som eksploderede omkring århundredeskiftet og fortsætter med at dukke op hele tiden.
For at imødegå dette problem blev den heuristiske model designet specielt til at spotte mistænkelige egenskaber, der kan findes i ukendte, nye vira og modificerede versioner af eksisterende trusler samt kendte malwareprogrammer.
Cyberkriminelle udvikler til stadighed nye trusler, og heuristisk analyse er en af de eneste metoder, der anvendes til at håndtere de enorme mængder af disse nye trusler, der ses dagligt.
Heuristisk analyse er også en af de få metoder, der er i stand til at bekæmpe polymorfe vira — et udtryk for ondsindet kode, der hele tiden ændrer og tilpasser sig. Heuristisk analyse er implementeret i avancerede sikkerhedsløsninger, der tilbydes af virksomheder som Kaspersky Labs, for at registrere nye trusler, før de forvolder skade, uden behov for en bestemt signatur.
Hvordan fungerer heuristisk analyse?
Heuristisk analyse kan anvende en række forskellige teknikker. En heuristisk metode, der kaldes statisk heuristisk analyse, involverer dekompilering af et mistænkt program og undersøgelse af dets kildekode. Denne kode sammenlignes derefter med vira, der allerede er kendte, og som figurerer i den heuristiske database. Hvis en bestemt procentdel af kildekoden matcher noget i den heuristiske database, markeres koden som en mulig trussel.
En anden metode kaldes dynamisk heuristik. Når forskere vil analysere noget mistænkeligt uden at udsætte personer for fare, spærrer de stoffet inde i et kontrolleret miljø, f.eks. I et sikkert laboratorie, hvor de udfører test. Processen er den samme for heuristisk analyse – men sker i en virtuel verden.
Den isolerer mistænkelige programmer eller stykker af kode i en specialiseret virtuel maskine – eller sandkasse – og giver antivirusprogrammet en chance for at teste koden og simulere, hvad der ville ske, hvis de mistænkelige filer fik lov til at køre. Den undersøger hver kommando, når den aktiveres, og søger efter mistænkelig adfærd, f.eks. selvreplikering, overskrivning af filer og andre handlinger, der er typiske for vira.
Potentielle problemer
Heuristisk analyse er ideel til identifikation af nye trusler, men for at være effektiv skal heuristik justeres omhyggeligt for at yde den bedst mulige registrering af nye trusler, men uden at generere falske positiver på helt uskyldig kode.
Derfor er heuristiske værktøjer ofte kun ét våben i et avanceret antivirus-arsenal. De anvendes typisk sammen med andre metoder til virusregistrering, såsom signaturanalyse og andre proaktive teknologier.
Relaterede artikler:
- Hvad er adware?
- Hvad er en trojaner?
- Fakta og ofte stillede spørgsmål om computervira og malware
- Spam og phishing