Mai multe vulnerabilități găsite în IDE-urile Android obișnuite, inclusiv Android Studio, IntelliJ IDEA și Eclipse

Un nou tip de vulnerabilitate Android numit ParseDroid a fost găsit în instrumentele de dezvoltare, inclusiv Android Studio, IntelliJ IDEA, Eclipse, APKTool și multe altele.

Când ne gândim la vulnerabilitățile Android, ne imaginăm de obicei o vulnerabilitate zero-day care exploatează un proces pentru a escalada privilegiile. Acest lucru poate fi orice, de la păcălirea smartphone-ului sau a tabletei pentru a se conecta la o rețea WiFi rău intenționată sau a permite executarea codului pe un dispozitiv dintr-o locație de la distanță. Cu toate acestea, există un nou tip de vulnerabilitate Android care a fost descoperit recent. Se numește ParseDroid și exploatează instrumente pentru dezvoltatori, inclusiv Android Studio, IntelliJ IDEA, Eclipse, APKTool, serviciul Cuckoo-Droid și multe altele.

Cu toate acestea, ParseDroid nu este izolat doar de instrumentele pentru dezvoltatori Android, iar aceste vulnerabilități au fost găsite în mai multe instrumente Java/Android pe care programatorii le folosesc în prezent. Nu contează dacă utilizați un instrument de dezvoltator descărcabil sau unul care funcționează în cloud,

Cercetare punct de control a găsit aceste vulnerabilități în cele mai comune instrumente de dezvoltare Android și Java. Odată exploatat, un atacator este apoi capabil să acceseze fișierele interne ale mașinii de lucru a dezvoltatorului.

Check Point Research a făcut mai întâi câteva cercetări în cel mai popular instrument pentru inginerie inversă terță parte aplicațiile Android (APKTool) și a constatat că atât funcțiile sale de decompilare, cât și cele de construire APK sunt vulnerabile la atac. După ce au analizat codul sursă, cercetătorii au reușit să identifice o vulnerabilitate XML External Entity (XXE) care este posibil deoarece analizatorul XML configurat al lui APKTool nu dezactivează referințele la entități externe atunci când analizează un XML fişier.

Odată exploatată, vulnerabilitatea expune întregul sistem de fișiere OS al utilizatorilor APKTool. La rândul său, acest lucru poate permite atacatorului să recupereze orice fișier de pe computerul victimei utilizând un fișier rău intenționat „AndroidManifest.xml” care exploatează o vulnerabilitate XXE. Odată ce această vulnerabilitate a fost descoperită, cercetătorii s-au uitat apoi la IDE-urile Android populare și au descoperit că, pur și simplu încărcând fișier rău intenționat „AndroidManifest.xml” ca parte a oricărui proiect Android, IDE-urile încep să scuipe orice fișier configurat de atacator.

Credite: Check Point Research

Check Point Research a demonstrat, de asemenea, un scenariu de atac care poate afecta un număr mare de dezvoltatori Android. Funcționează prin injectarea unui AAR (Android Archive Library) rău intenționat care conține o sarcină utilă XXE în depozitele online. Dacă o victimă clonează depozitul, atunci atacatorul ar avea acces la proprietatea potențial sensibilă a companiei din sistemul de fișiere al victimei.

Credite: Check Point Research

În cele din urmă, autorii au descris o metodă prin care pot executa cod de la distanță pe mașina unei victime. Acest lucru se face prin exploatarea unui fișier de configurare în APKTool numit „APKTOOL.YAML”. Acest fișier are o secțiune numite „unknownFiles” unde utilizatorii pot specifica locațiile fișierelor care vor fi plasate în timpul reconstrucției unui APK. Aceste fișiere sunt stocate pe computerul victimei într-un folder „Necunoscut”. Editând calea în care sunt salvate aceste fișiere, un atacator poate injecta orice fișier pe care îl dorește sistemul de fișiere al victimei, deoarece APKTool nu a validat calea în care fișierele necunoscute sunt extrase dintr-un APK.

Fișierele pe care atacatorul le injectează duc la executarea completă a codului de la distanță pe computerul victimei, ceea ce înseamnă că un atacator poate exploatează orice victimă cu APKTool instalat, creând un APK rău intenționat și punând victima să încerce să decodeze și apoi reconstruiește-l.

Credite: Check Point Research

Deoarece toate IDE-urile și instrumentele menționate mai sus sunt multiplatforme și generice, potențialul de exploatare a acestor vulnerabilități este mare. Din fericire, după ce a contactat dezvoltatorii fiecăruia dintre aceste IDE-uri și instrumente, Check Point Research a confirmat că aceste instrumente nu mai sunt vulnerabile la acest tip de atac. Dacă rulați o versiune mai veche a unuia dintre aceste instrumente, vă recomandăm să actualizați imediat pentru a vă proteja împotriva unui atac în stil ParseDroid.


Sursa: Check Point Research