Ved mange anledninger unngår skadelig programvare deteksjon ved å skanne motorer, og slipper uskadd ved å gjennomgå en endring i struktur og oppførsel. Denne attributtet (når den er til stede i store volumer) kan imidlertid brukes til å bestemme forholdet mellom forskjellige typer skadelig programvare og oppdage nye belastninger. En nylig studie publisert av sikkerhetsforsker Silvio Cesare understreker skadelige programvarestammer kan identifiseres av deres arv. Forskeren utviklet en modell som heter Simseer i stand til å identifisere en plagiert programvare og etablere forholdet mellom skadelig programvare.
Nettstedet sporer og kategoriserer arven til forskjellige stammer av skadelig programvare. På forskningstidspunktet innså Cesare at selv moderate endringer i skadelig programvare ikke endrer strukturene. Han brukte denne faktoren som en modell for å oppdage tilnærmet samsvar med skadelig programvare, og valgte en hel familie med skadelig programvare basert på den ene strukturen. Analysen gjort av verktøyet hjalp den Melbourne-baserte sikkerhetsforskeren med å bestemme forholdet mellom skadelig programvare ved å vurdere deres likhet med eksisterende basert på ondsinnet kode og finne ut om et skadelig programutbrudd hadde lenker til tidligere utbrudd. Han kunne forutsi alt dette ved å tabellere analyseresultatene og visualisere programforholdene som et evolusjonært tre.
Hvordan fungerer Simseer?
Du må sende inn et zip-arkiv som inneholder skadelig programvare til Simseer. Maksimal filstørrelse per er 100.000 byte. Eksempelfilnavnet må være: alfanumerisk eller perioder og kun kjørbare PE-32 og ELF-32. Maksimalt 20 innleveringer er tillatt på en dag.
Simseer-servere grupperer prøvene i klynger, og skanner deretter et ukjent utvalg for likheter med kjente skadelige familier og for å identifisere nye. Deretter vises et evolusjonært tre til venstre som viser forholdet mellom eksisterende og ny kode. Jo nærmere programmene er i treet, jo nærmere er de relatert og vil sannsynligvis tilhøre samme familie. Nye stammer, hvis de blir funnet, katalogiseres separat når de er mindre enn 98% lik en eksisterende stamme.
Poengsummen 1.0 betyr at programmene er identiske. Poengsummen 0.0 betyr at programmene ikke er like. Programmer som har en likhet større eller lik 0.60 er varianter av hverandre og fremhevet grønt i resultatene. Jo lysere det grønne, desto likere er programmene.
For å vedlikeholde Simseers database, laster Cesare ned rå malware-kode fra det åpne malware-delingsnettverket VirusShare og andre kilder, med mellom 600 MB og 16 GB data matet inn i algoritmene hver natt.
Via AusCERT 2013.