Nova vrsta ranljivosti Androida, imenovana ParseDroid, je bila najdena v orodjih za razvijalce, vključno z Android Studio, IntelliJ IDEA, Eclipse, APKTool in drugimi.
Ko pomislimo na ranljivosti Androida, si običajno predstavljamo ranljivost ničelnega dne, ki izkorišča nek proces za stopnjevanje privilegijev. To je lahko karkoli, od prevare vašega pametnega telefona ali tabličnega računalnika, da se poveže z zlonamernim omrežjem WiFi, ali omogočanja izvajanja kode v napravi z oddaljene lokacije. Vendar pa obstaja nova vrsta ranljivosti Androida, ki je bila nedavno odkrita. Imenuje se ParseDroid in izkorišča orodja za razvijalce, vključno z Android Studio, IntelliJ IDEA, Eclipse, APKTool, storitvijo Cuckoo-Droid in drugimi.
Vendar pa ParseDroid ni izoliran samo od orodij za razvijalce Androida in te ranljivosti so bile odkrite v več orodjih Java/Android, ki jih programerji uporabljajo v teh dneh. Ni pomembno, ali uporabljate orodje za razvijalce, ki ga lahko prenesete, ali orodje, ki deluje v oblaku,
Check Point Research je našel te ranljivosti v najpogostejših razvojnih orodjih za Android in Java. Ko je napadalec enkrat izkoriščen, lahko dostopa do notranjih datotek delovnega stroja razvijalca.Check Point Research se je najprej poglobil v najbolj priljubljeno orodje tretje osebe za povratni inženiring aplikacije za Android (APKTool) in ugotovil, da sta njegovi funkciji za deprevajanje in gradnjo APK-ja ranljivi za napad. Po ogledu izvorne kode je raziskovalcem uspelo prepoznati ranljivost XML External Entity (XXE), ki je mogoče, ker njegov konfigurirani razčlenjevalnik XML za APKTool ne onemogoči referenc zunanjih entitet pri razčlenjevanju XML mapa.
Ko je ranljivost enkrat izkoriščena, izpostavi celoten datotečni sistem OS uporabnikov APKTool. Po drugi strani to napadalcu potencialno omogoča, da pridobi katero koli datoteko na žrtvinem računalniku z uporabo zlonamerne datoteke »AndroidManifest.xml«, ki izkorišča ranljivost XXE. Ko je bila ta ranljivost odkrita, so raziskovalci nato pogledali priljubljene Android IDE in ugotovili, da s preprostim nalaganjem zlonamerno datoteko »AndroidManifest.xml« kot del katerega koli projekta Android, IDE-ji začnejo izpljuvati vse datoteke, ki jih konfigurira napadalec.
Check Point Research je tudi pokazal scenarij napada, ki bi lahko prizadel veliko število razvijalcev Android. Deluje tako, da v spletne repozitorije vbrizga zlonamerno datoteko AAR (Android Archive Library), ki vsebuje vsebino XXE. Če žrtev klonira repozitorij, bi imel napadalec dostop do potencialno občutljive lastnine podjetja iz datotečnega sistema operacijskega sistema žrtve.
Nazadnje so avtorji opisali metodo, s katero lahko izvajajo oddaljeno kodo na žrtvinem računalniku. To se naredi z izkoriščanjem konfiguracijske datoteke v APKTool, imenovane "APKTOOL.YAML." Ta datoteka ima razdelek imenovano "unknownFiles", kjer lahko uporabniki določijo lokacije datotek, ki bodo nameščene med vnovično gradnjo APK. Te datoteke so shranjene na žrtvinem računalniku v mapi »Neznano«. Z urejanjem poti, kjer so te datoteke shranjene, lahko napadalec vstavi katero koli datoteko, ki jo želi datotečni sistem žrtve, ker APKTool ni preveril poti, kjer so neznane datoteke ekstrahirane iz APK.
Datoteke, ki jih napadalec vstavi, vodijo do popolne oddaljene izvedbe kode na žrtvinem računalniku, kar pomeni, da lahko napadalec izkoristite katero koli žrtev z nameščenim APKTool tako, da ustvarite zlonamerno izdelan APK in žrtev poskusite dekodirati in nato obnoviti.
Ker so vsa zgoraj omenjena IDE in orodja medplatformska in generična, je možnost izkoriščanja teh ranljivosti velika. K sreči je Check Point Research po stiku z razvijalci vsakega od teh IDE-jev in orodij potrdil, da ta orodja niso več ranljiva za tovrstne napade. Če uporabljate starejšo različico enega od teh orodij, priporočamo, da nemudoma posodobite, da se zaščitite pred napadom v slogu ParseDroid.
Vir: Check Point Research