RSAC: Reverzní inženýrství aplikace pro Android za pět minut

Jednou z nejčastějších taktik šíření malwaru – nebo dokonce jen špatných aplikací – v systému Android je přebalování aplikací. Pau Oliva Fora ze společnosti viaForensics během své prezentace na konferenci RSA ukázal, že reverzní inženýrství aplikací pro systém Android trvá jen několik minut.

Získání aplikace
Prvním krokem k reverznímu inženýrství aplikace, řekl Fora, bylo získat si aplikaci. Ačkoli v telefonu vypadají elegantně, aplikace pro Android (neboli APK) jsou ve skutečnosti jen soubory ZIP s novou příponou. Uvnitř je vše, co aplikace potřebuje ke svému běhu – od kódu až po veškerá média, která může potřebovat.

Existuje několik způsobů, jak získat APK. Pokud máte aplikaci, kterou byste chtěli zpětně analyzovat v systému Android, můžete použít správce souborů, jako je ASTRO, a uložit zálohu na kartu SD. Je také možné připojit systém Android k počítači a poté pomocí Android Debugging Bridge přenést aplikaci do počítače. Můžete také použít online nástroje pro vysávání souborů APK ze služby Google Play.

Pulling It Apart
Když už máte APK soubor, se kterým můžete pracovat, budete ho muset převést na něco použitelnějšího. K tomu Fora představila dvě možnosti. Můžete svůj cíl rozebrat pomocí nástroje, jako je Apktool, který převede zkompilovaný soubor kódu aplikace APK (Dalvik Executable neboli DEX) do jazyka assembleru, jako je Smali. Nebo můžete provést dekompilaci, která převede DEX do archivu Java (JAR) a poté do Javy.

Fora poznamenal, že vzhledem k tomu, že při dekompilaci může dojít ke ztrátě některých dat, je lepší použít dekompilační program, který byl vytvořen s ohledem na systém Android. Ten přeskočí krok JAR a převede DEX přímo do Javy.

Pro lidi, kteří nemají zájem všechny tyto nástroje sami dohledávat, Fora navrhl Santoku. Jedná se o speciální distribuci Linuxu od společnosti viaForensics, která obsahuje předinstalované všechny nástroje potřebné k rozebrání, úpravě a přebalení aplikace pro Android. Jedná se o výkonný nástroj pro digitální forenzní analýzu, o kterém jsme již v minulosti psali.

Rapid Reverse
Pokud jste během posledních několika odstavců usnuli, tady se probudíte. Pomocí Santoku Fora nabral velmi základní aplikaci pro Android, kterou vytvořil, a rozebral ji. Poté prošel kód pro konkrétní řádek, upravil kód, přebalil jej, podepsal, znovu nainstaloval upravenou aplikaci do svého systému Android a spustil ji. Celý proces trval méně než pět minut.

No, Forův příklad byl velmi jednoduchý. Aplikace byla velmi jednoduchá a neobsahovala žádný obfuskovaný kód. Jeho ukázka však měla silné důsledky. „Tímto způsobem můžete změnit chování jakékoli aplikace pro Android,“ řekl Fora a jako příklad uvedl nekonečné životy ve hře nebo placené funkce v bezplatné aplikaci.

Děsivější příklad? Stačí si vzpomenout na některou ze škodlivých klonovaných aplikací, které jsme viděli. Přemýšlejte o tom, než si stáhnete ten pochybný klon FlappyBird.

PCMag Tech Deals

Hledáte nabídky na nejnovější technologie?

Tento zpravodaj může obsahovat reklamu, nabídky nebo partnerské odkazy. Přihlášením k odběru newsletteru vyjadřujete svůj souhlas s našimi podmínkami používání a zásadami ochrany osobních údajů. Z odběru se můžete kdykoli odhlásit.

O společnosti Max Eddy

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.