Hakeri iskorištavaju nezaštićene Docker udaljene API servere za instalaciju malvera, a istraživači upozoravaju da je prijetnja dostigla “kritičan nivo” i pozivaju organizacije da odmah reaguju.
Izvještaj kompanije Trend Micro, objavljen 21. oktobra, detaljno opisuje kako su istraživači primijetili nepoznatog napadača kako zloupotrebljava izložene Docker udaljene API servere za distribuciju malvera pod nazivom ‘perfctl‘.
Napad počinje slanjem pingova na servere kako bi se otkrilo postojanje ranjivog Docker API servera. U narednoj fazi, napadač kreira Docker kontejner s imenom sličnim legitimnom. Kontejner se konfigurira da radi u privilegovanom režimu, koristeći proces ID ‘host’, omogućavajući dijeljenje iste PID namespaces sa sistemom domaćinom.
“Ovo znači da procesi unutar kontejnera mogu vidjeti i komunicirati sa svim procesima koji rade na sistemu domaćinu, kao da su pokrenuti direktno na hostu,” objašnjeno je u izvještaju.
Napadači zatim izvršavaju Base64 kodiran payload preko Docker Exec API. Prvi cilj ovog payloada je bijeg iz kontejnera koristeći ‘nsenter’ komandu, koja omogućava pristup resursima kao da se izvršava direktno na domaćinu.
Nakon dekodiranja, payload provjerava duplicirane procese i kreira bash skriptu koja konfiguriše različite varijable okruženja, omogućujući daljnje faze napada.
Bash skripta preuzima zlonamjerni binarni fajl maskiran kao PHP ekstenzija, čime izbjegava detekciju baziranu na ekstenzijama fajlova. Nakon toga izvršava niz akcija koje ubijaju procese, postavljaju dozvole, ažuriraju PATH varijablu i pokreću komande u pozadini.
Udaljeni pristup API-ju je koristan, ali predstavlja metu za napadače
Izvještaj ističe da malware koristi robustnu strategiju održivosti putem systemd servisa ili cron zadataka kako bi ostao aktivan nakon ponovnog pokretanja sistema, što dodatno otežava njegovo uklanjanje.
Trend Micro je upozorio da je eksploatacija Docker udaljenih API servera “dosegla kritičan nivo koji zahtijeva ozbiljnu pažnju organizacija i njihovih sigurnosnih stručnjaka.”
“Važno je da svaki Docker udaljeni API server bude osiguran, redovno nadgledan radi neovlaštenog pristupa i sumnjivih aktivnosti, te da su sigurnosni zakrpi ažurirani,” navodi se u izvještaju.
Katie Paxton-Fear, istraživačica API-ja u Traceable AI, istakla je da ovaj slučaj ukazuje na rizike omogućavanja udaljenog pristupa API-ju prema zadanim postavkama.
“Iako udaljeni API može olakšati upravljanje, omogućavanje prema zadanim postavkama treba pažljivo razmotriti. Ako niste 100% sigurni da vam je ova funkcija potrebna, najsigurnije je da je onemogućite. U ovom slučaju, istraživači su mogli preći iz Docker kontejnera na host kroz eskapaciju iz kontejnera, ali bi onemogućavanje API-ja u potpunosti spriječilo ovu ranjivost,” objasnila je.
Ako kompanije ipak trebaju koristiti udaljeni API, trebale bi biti svjesne visokog nivoa pristupa koji taj API omogućava napadačima u slučaju kompromitacije.
“Važno je da koristite jaku autentifikaciju i autorizaciju kako biste osigurali da samo korisnici s validnim podacima mogu pristupiti API konzolama. Također, trebali biste imati aktivno praćenje i logovanje Docker exec naredbi kako biste znali kada su kreirani novi kontejneri,” dodala je Paxton-Fear.