Ovo je stara izmjena dokumenta!
Napretkom tehnologije čovjek se sve više oslanja na digitalni oblik pohranjivanja, obrade te dijeljenja podataka. Uz sve prednosti koje nosi taj novitet dolaze i prijetnje malicioznih napada. Različitim tehnikama napadači pokušavaju zaraziti klijentska računala i ispuniti maliciozne ciljeve kao što su krađa podataka, sabotaža rada servera, brisanje podataka i slično. Jednu od prijetnji predstavlja i Command and Control (C2) napad kojim napadač na daljinu te potajno upravlja zaraženim računalima. Kako bi se taj napad otkrio i kako bi se umanjila nastala šteta koristi se metoda C2 server fingerprinting. Postoje razne metode fingerprintinga koje pokušavaju na razne načine otkriti sumnjive transakcije. Ovaj rad dotaknut će se dosad najraširenijih metoda fingerprintinga te će ukazati na važnost i primjenu istih.
U zadnja dva desetljeća cyber kriminal dosegao je značajne razine kreativnosti s ciljem zaraze i zloupotrabe računala klijenta. Jedna od popularnijih i opasnijih tehnika izvodi se pomoću Command and Control servera, odnosno C2 server. C2 server zapravo predstavlja središnji sustav, bilo to fizičko računalo ili server na Cloudu, koji napadač koristi kako bi komunicirao sa zaraženim uređajima.
Kako bi C2 server uopće bio upotrebljiv, najprije je potrebno zaraziti računalo u željenoj mreži. Napadači posežu za raznim tehnikama napada kao što je phishing mail, zaraženi USB uređaji, ransomware napadi, malvertising i mnogi drugi. Stoga je obrana od manipulacije C2 samo jedna od linija obrane, ali trebalo bi osigurati računalo od svih napada koji mu prethode. Jednom kad se računalo zarazi, ono stupa u kontakt s C2 serverom te napadač može na daljinu upravljati njime. Taj se proces javljanja napadaču za dodatne upute često naziva i beaconing.
Slika 3.1 Prikaz C2 strukture [1]
Na slici 3.1 prikazano je kako funkcionira struktura C2. Računalo zaraženo nekim malicioznim softverom najčešće se naziva zombie, a skup njih čini mrežu koja se naziva botnet.
Tradicionalno bi C2 server bio smješten na odabranom lokaliziranom računalu, no to napadača izlaže ranjivosti lakšeg lociranja i snošenja zakonskih posljedica. Napadači sve češće zlorabljuju Cloud kako bi pokretali i gasili C2 infrastrukturu. To značajno otežava borbu protiv tog napada. Prije nego li bude otkriven, napadač može krasti podatke, izvesti napad na mrežu, sabotirati rad sustava, širiti zarazu na ostala računala itd. Kako bi prikrio svoj rad, nerijetko se nastoji prikriti uklapanjem u normalan promet, odnosno oponašanjem normalnog rada i slanja podataka.
Otkrivanje Command and Control (C2) aktivnosti predstavlja izazov u području sigurnosti. Ovisno o spretnosti napadača, kvaliteti sigurnosnih mehanizama i drugom otkrivanje napada može trajati od nekoliko dana do nekoliko mjeseci.
C2 server fingerprinting jedan je od procesa kojim se nastoji otkriti prisutnost “uljeza” u sustavu i prekinuti C2 napad. Temelji se na analizi i identifikaciji karakterističnih obilježja C2 servera koji se skupno nazivaju fingerprint. Fingerprinting obično uključuje analizu mrežnog prometa, karakteristika komunikacije s C2 serverom te ponekad i specifičnosti koda ili protokola koji se koriste. Kako bi se povećale šanse otkrivanja “uljeza”, fingerprinting se kombinira s drugim metodama detekcije C2. Učinkovitost metode ovisi o sposbnosti napadača da prikrije svoje tragove te nažalost nije konačno rješenje ovom problemu, a i napadači konstantno prilagođavaju svoje taktike kako bi izbjegli detekciju, što čini ovu vrstu analize izazovnom.
Nerijetko je jako teško uočiti komunikaciju zaraženog računala sa serverom napadača zato što se komunikacija odvija na vrlo uobičajen način, primjerice otkriveno je da se naredbe razmjenjuju koristeći Slack, Messenger i slično. Ako je sustav zaražen ili pogođen C2 napadom, napadači često koriste skalabilnu arhitekturu i automatsko razmještanje kako bi da učinkovito kontrolirali velik broj zaraženih računala ili mreža. Dijelovi infrastrukture poput metoda razmještanja, instaliranih knjižnica, poslužitelja i njegove verzije ostaju nepromijenjeni kako bi održali stabilnost komunikacije između zaraženog računala i C2 servera.
Pojasnimo ideju iza metoda razmještaja. Ako analitičar primijeti da se zaraženo računalo redovito povezuje s drugim računalima ili serverima na način koji sugerira automatsko razmještanje, to može biti znak C2 aktivnosti. Jedan od čestih primjera automatskog razmještanja uključuje brze i redovite izmjene koda ili skripti koje se primjenjuju na zaraženim računalima. Ova dinamičnost otežava otkrivanje jer napadači često mijenjaju svoje metode kako bi ostali korak ispred sigurnosnih alata. Osim toga omogućuje brzo i učinkovito širenje malicioznog softvera na ciljane sustave.
Slično vrijedi i ako primijete određene knjižnice koje su specifične za alate ili tehnike koje koriste napadači (npr. alati za enkripciju ili dekripciju podataka, tj. dokumentacija i library).
Metoda fingerprintinga također može proučavati geografske podatke povezanih s IP adresama ili fizičkim lokacijama servera, vrijeme aktivnosti, analizu mrežnog prometa, što može uključivati oblike komunikacije, protokole koji se koriste, vrste podataka koji se prenose itd.
Ovo može biti važno za analitičare cyber sigurnosti jer omogućuje praćenje i prepoznavanje karakteristika koje su specifične za C2 operacije. Bitno je napomenuti da ovo nije apsolutna metoda za otkrivanje C2 aktivnosti i da je analiza složen proces koji uključuje više faktora.
C2 server fingerprinting nije jedna specifična metoda, već opći pristup otkrivanju Command and Control (C2) servera analizom njihovih karakterističnih obilježja. Stvarne metode koje se koriste u fingerprintingu mogu varirati, a nove tehnike se razvijaju kako se tehnologija razvija.
Izmjene u tehnikama fingerprintinga često prate promjene u taktikama napadača i razvoju tehnologije, ali ideja fingerprintinga postala je aktualna u posljednjem desetljeću. Dotaknut ćemo se samo nekih alata.
JARM fingerprinting
JARM je alat za fingerprinting metodu koji se koristi Transport Layer Security (TLS) kako bi identificirao i grupirao maliciozne servere. Aktivno šalje 10 TLS Client Hello poruka ciljanim TLS poslužiteljima na internetu. Ove poruke su posebno oblikovane kako bi izazvale jedinstvene odgovore od TLS poslužitelja. Kada JARM primi odgovore, analizira određene atribute TLS Server Hello poruka, uključujući verzije protokola, kriptografske algoritme i proširenja, koje potom koristi za stvaranje jedinstvenog otiska (fingerprinta) za svaki poslužitelj.
Ovaj otisak može biti koristan za identifikaciju i grupiranje poslužitelja prema njihovim TLS konfiguracijama. Ako više poslužitelja ima slične otiske, to može ukazivati na zajedničke karakteristike poput pripadnosti određenom pružatelju usluga ili korištenju određenih tehnologija.
U slučaju JARM-a ovi otisci mogu pomoći u prepoznavanju zlonamjernih poslužitelja jer malware često koristi specifične konfiguracije. Primjerice, ako se identificira da velik broj poslužitelja ima identičan otisak i to nije povezano s poznatim servisima ili legitimnim aplikacijama, to može biti znak potencijalnih prijetnji ili zlonamjernih aktivnosti.
Ovaj pristup omogućuje analitičarima cyber sigurnosti da identificiraju potencijalne prijetnje na temelju karakteristika TLS odgovora poslužitelja pridonoseći boljoj detekciji zlonamjernih aktivnosti na internetu.
JA3/JA3S fingerprinting
JA3/JA3S koristi TLS za kreiranje otisaka, slično kao i JARA, ali ne šalje aktivno poruke, nego čeka da neka klijentska aplikacija ili web preglednik uspostave TLS sesiju. Na temelju dobivenih podataka kreira otiske. Otisci JA3-a se zatim mogu koristiti za identifikaciju specifičnih klijenata ili aplikacija na temelju njihovog ponašanja tijekom TLS pregovora. Ovi otisci se često grupiraju kako bi se stvorio profil ponašanja određene aplikacije ili klijenta.
Ova vrsta otisaka može biti korisna u analizi mrežnog prometa i prepoznavanju aplikacija koje komuniciraju putem sigurnih TLS veza. Također, otisci JA3-a mogu pomoći u otkrivanju prometa povezanog s određenim alatima, tehnologijama ili čak zlonamjernim aktivnostima koje koriste specifične aplikacije.