Ovim člankom započinjemo seriju publikacija o nedokučivom zlonamjernom softveru. Programi za hakiranje bez datoteka, poznati i kao programi za hakiranje bez datoteka, obično koriste PowerShell na Windows sustavima za tiho pokretanje naredbi za traženje i izdvajanje vrijednog sadržaja. Otkrivanje hakerske aktivnosti bez zlonamjernih datoteka težak je zadatak, jer... antivirusi i mnogi drugi sustavi detekcije rade na temelju analize potpisa. Ali dobra je vijest da takav softver postoji. Na primjer,
Kad sam tek počeo istraživati temu opakih hakera,
Sjajan i moćan PowerShell
Već sam pisao o nekim od ovih ideja u
Osim samih uzoraka, na stranici možete vidjeti što ti programi rade. Hibridna analiza pokreće zlonamjerni softver u vlastitom sandboxu i nadzire sistemske pozive, pokrenute procese i mrežnu aktivnost te izvlači sumnjive tekstualne nizove. Za binarne i druge izvršne datoteke, tj. gdje ne možete čak ni pogledati stvarni kod visoke razine, hibridna analiza odlučuje je li softver zlonamjeran ili samo sumnjiv na temelju njegove aktivnosti u vremenu izvođenja. I nakon toga uzorak se već ocjenjuje.
U slučaju PowerShell-a i drugih oglednih skripti (Visual Basic, JavaScript itd.), mogao sam vidjeti sam kod. Na primjer, naišao sam na ovu instancu PowerShell-a:
Također možete pokrenuti PowerShell u base64 kodiranju kako biste izbjegli otkrivanje. Obratite pažnju na korištenje neinteraktivnih i skrivenih parametara.
Ako ste čitali moje postove o maskiranju, onda znate da opcija -e navodi da je sadržaj base64 kodiran. Usput, hibridna analiza također pomaže u tome tako što dekodira sve natrag. Ako želite sami pokušati dekodirati base64 PowerShell (u daljnjem tekstu PS), morate pokrenuti ovu naredbu:
[System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($EncodedText))
Idi dublje
Dekodirao sam našu PS skriptu pomoću ove metode, ispod je tekst programa, iako sam ga malo izmijenio:
Imajte na umu da je skripta bila vezana za datum 4. rujna 2017. i prenijela je kolačiće sesije.
Pisao sam o ovom stilu napada u
Što to učiniti?
Za sigurnosni softver koji skenira Windows zapisnike događaja ili vatrozidove, base64 kodiranje sprječava otkrivanje niza "WebClient" uzorkom običnog teksta radi zaštite od postavljanja takvog web zahtjeva. A budući da se svo "zlo" zlonamjernog softvera tada preuzima i prosljeđuje u naš PowerShell, ovaj nam pristup omogućuje potpuno izbjegavanje otkrivanja. Ili bolje rečeno, tako sam isprva mislio.
Ispada da s omogućenim Windows PowerShell Advanced Logging (pogledajte moj članak), moći ćete vidjeti učitani redak u zapisniku događaja. ja sam kao
Dodajmo dodatne scenarije
Hakeri vješto skrivaju PowerShell napade u Microsoft Office makronaredbama napisanim u Visual Basicu i drugim skriptnim jezicima. Ideja je da žrtva dobije poruku, primjerice od dostavne službe, s priloženim izvješćem u .doc formatu. Otvorite ovaj dokument koji sadrži makronaredbu, a on na kraju pokrene sam zlonamjerni PowerShell.
Često je sama skripta Visual Basica zamagljena tako da slobodno izbjegava antivirusne i druge skenere zlonamjernog softvera. U duhu gore navedenog, odlučio sam kodirati gornji PowerShell u JavaScriptu kao vježbu. Ispod su rezultati mog rada:
Zamagljeni JavaScript skriva naš PowerShell. Pravi hakeri to rade jednom ili dvaput.
Ovo je još jedna tehnika koju sam vidio kako se mota po webu: korištenje Wscript.Shell za pokretanje kodiranog PowerShell-a. Usput, sam JavaScript je
U našem slučaju, zlonamjerna JS skripta ugrađena je kao datoteka s nastavkom .doc.js. Windows će obično pokazati samo prvi sufiks, tako da će se žrtvi prikazati kao Word dokument.
Ikona JS pojavljuje se samo u ikoni za pomicanje. Nije iznenađujuće da će mnogi ljudi otvoriti ovaj privitak misleći da je Wordov dokument.
U svom sam primjeru izmijenio gornji PowerShell da preuzmem skriptu sa svoje web stranice. Udaljena PS skripta samo ispisuje "Evil Malware". Kao što vidite, on uopće nije zao. Naravno, pravi hakeri zainteresirani su za pristup prijenosnom računalu ili poslužitelju, recimo, putem naredbene ljuske. U sljedećem ću vam članku pokazati kako to učiniti koristeći PowerShell Empire.
Nadam se da za prvi uvodni članak nismo preduboko zaronili u temu. Sada ću vas pustiti da udahnete, a sljedeći put ćemo početi gledati stvarne primjere napada koji koriste malware bez datoteka bez ikakvih nepotrebnih uvodnih riječi ili priprema.
Izvor: www.habr.com