Ve vývojářských nástrojích včetně Android Studio, IntelliJ IDEA, Eclipse, APKTool a dalších byl nalezen nový typ zranitelnosti systému Android s názvem ParseDroid.
Když přemýšlíme o zranitelnostech systému Android, obvykle si představujeme zranitelnost nultého dne, která využívá nějaký proces k eskalaci oprávnění. Může to být cokoli, od oklamání smartphonu nebo tabletu, aby se připojil ke škodlivé síti WiFi, nebo umožnění spuštění kódu na zařízení ze vzdáleného místa. Nedávno však byl objeven nový typ zranitelnosti systému Android. Jmenuje se ParseDroid a využívá vývojářské nástroje včetně Android Studio, IntelliJ IDEA, Eclipse, APKTool, službu Cuckoo-Droid a další.
ParseDroid však není izolován pouze od vývojářských nástrojů Androidu a tato zranitelnost byla nalezena v několika nástrojích Java/Android, které programátoři v těchto dnech používají. Nezáleží na tom, zda používáte vývojářský nástroj ke stažení nebo nástroj, který funguje v cloudu, Check Point Research našel tyto chyby zabezpečení v nejběžnějších vývojových nástrojích pro Android a Java. Po zneužití má útočník přístup k interním souborům pracovního stroje vývojáře.
Check Point Research se nejprve ponořil do nejpopulárnějšího nástroje třetí strany pro reverzní inženýrství Aplikace pro Android (APKTool) a zjistili, že funkce dekompilace i vytváření souborů APK jsou zranitelné vůči Záchvat. Po nahlédnutí do zdrojového kódu se vědcům podařilo identifikovat zranitelnost XML External Entity (XXE), která je je to možné, protože jeho nakonfigurovaný analyzátor XML APKTool nezakazuje externí odkazy na entity při analýze XML soubor.
Jakmile je chyba zabezpečení zneužita, odhalí celý souborový systém OS uživatelů APKTool. To útočníkovi potenciálně umožňuje získat jakýkoli soubor na počítači oběti pomocí škodlivého souboru „AndroidManifest.xml“, který využívá zranitelnost XXE. Jakmile byla tato zranitelnost objevena, výzkumníci se podívali na populární Android IDE a zjistili, že pouhým načtením škodlivý soubor „AndroidManifest.xml“ v rámci jakéhokoli projektu Android, IDE začnou chrlit jakýkoli soubor nakonfigurovaný útočník.
Check Point Research také demonstroval scénář útoku, který by mohl ovlivnit velký počet vývojářů Androidu. Funguje tak, že do online úložišť vloží škodlivý AAR (Android Archive Library) obsahující užitečné zatížení XXE. Pokud oběť naklonuje úložiště, útočník by pak měl přístup k potenciálně citlivému majetku společnosti ze souborového systému operačního systému oběti.
Nakonec autoři popsali metodu, jejímž prostřednictvím mohou spouštět vzdálený kód na počítači oběti. Toho lze dosáhnout využitím konfiguračního souboru v APKTool s názvem „APKTOOL.YAML“. Tento soubor má sekci s názvem "unknownFiles", kde uživatelé mohou určit umístění souborů, které budou umístěny během přestavby souboru APK. Tyto soubory jsou uloženy na počítači oběti ve složce „Neznámý“. Úpravou cesty, kde jsou tyto soubory uloženy, může útočník vložit libovolný soubor, který chce souborový systém oběti, protože APKTool neověřil cestu, kde jsou neznámé soubory extrahovány z APK.
Soubory, které útočník vloží, vedou k úplnému vzdálenému spuštění kódu na počítači oběti, což znamená, že útočník může zneužít jakoukoli oběť s nainstalovaným APKTool vytvořením škodlivě vytvořeného souboru APK a tím, že se oběť pokusí dekódovat a poté přestavte to.
Vzhledem k tomu, že všechna výše uvedená IDE a nástroje jsou multiplatformní a generické, potenciál pro zneužití těchto zranitelností je vysoký. Naštěstí po oslovení vývojářů každého z těchto IDE a nástrojů Check Point Research potvrdil, že tyto nástroje již nejsou zranitelné vůči tomuto druhu útoku. Pokud používáte starší verzi některého z těchto nástrojů, doporučujeme provést okamžitou aktualizaci, abyste se zajistili proti útoku ve stylu ParseDroid.
Zdroj: Check Point Research