понедељак, 1. јул 2013.

Polimorfizam

Polimorfizam je metoda izrade malicioznog softvera koristeći enkripciju. Tačnije "payload", dio koda koji je zapravo maliciozna komponenta, je enkriptovan. Prvom pojavom polimorfnog koda smatra se lansiranje virusa Chameleon, 1991. godine, ali ozbiljniji prodor ovakvih virusa vezuje se za period od 2006. nadalje.

Osnovne karakteristike polimorfnih virusa su:

  •  mijenjaju izgled nakon svake infekcije
  •  "payload" je enkriptovan
  •  koriste različit ključ za svaku infekciju
  •  čine statičku analizu stringova praktično nemogućom
  •  enkripcijske rutine su takođe promjenjive (da bi se otežala detekcija)

Dakle, način na koji polimorfizam djeluje je da se  "payload" enkriptuje sa ključem koji se nanovo različito generiše pri svakoj infekciji (najčešće, mada postoje i neki drugi scenariji) , što čini statičku analizu vrlo komplikovanom. Na početku, teško je uopšte deasemblirati enkriptovanu sekvencu, prvo se mora tražiti način za dekripciju, a tek kad se pronađe rutina za dekriptovanje može se pristupiti statičkoj analizi.

Posebno stanje polimorfizma je metamorfizam, gdje se zapravo mijenja čitav virus a ne samo payload, i gdje se, pojednostavljeno rečeno kreira semantički identična, ali potpuno različita verzija koda za svaku aktivnost.

Da bi se izašlo na kraj sa ovim izazovima, AV industrija ulaže velike napore u otkrivanje načina kako se zapravo "inficira" kod , kako se unose ti zbunjujući i obmanjujući dijelovi koda koji naizgled ne mijenjaju semantiku programa ("code obfuscation"), da bi ih lakše pronalazili i detektovali.

Za sve ovo, važno je, pored enkripcije i dekripcije vladati i tehnikama asembliranja i deasembliranja.


Нема коментара:

Постави коментар