У дома Securitywatch Rsac: обратно инженерство на андроид приложение за пет минути

Rsac: обратно инженерство на андроид приложение за пет минути

Видео: Звернення про розпуск Закарпатської облради (Септември 2024)

Видео: Звернення про розпуск Закарпатської облради (Септември 2024)
Anonim

Една от най-често срещаните тактики за разпространение на злонамерен софтуер - или дори само лоши приложения - в Android е преопаковането на приложения. По време на презентацията си на RSA конференцията, Пау Олива Фора от viaForensics демонстрира, че са нужни само минути, за да се обърнат инженерни приложения за Android.

Получаване на приложението ви

Първата стъпка за обратното проектиране на приложение, каза Fora, беше да си вземете приложение. Въпреки че изглеждат гладки на вашия телефон, приложенията за Android (или APK) са наистина ZIP файлове с ново разширение. Вътре е всичко, което приложението трябва да стартира - от кода до всяка медия, от която може да се нуждае.

Има няколко начина да получите APK. Ако имате приложение, което искате да преобразувате на вашия Android, можете да използвате файлов мениджър като ASTRO, за да запазите резервно копие на SD карта. Възможно е също така да свържете Android с компютър и след това да използвате Android Debugging Bridge, за да прехвърлите приложението към вашия компютър. Можете също да използвате онлайн инструменти, за да изсмуквате APK файлове от Google Play.

Издърпвайки го отделно

След като имате APK, с който ще работите, ще трябва да го преобразувате в нещо по-използваемо. За това Фора представи два варианта. Можете да разглобите целта си с инструмент като Apktool, който ще преобразува съставения файл на APK-кода на приложението (Dalvik Executable или DEX) в език за сглобяване като Smali. Или бихте могли да декомпилирате , което преобразува DEX в Java архив (JAR) и след това в Java.

Фора отбеляза, че тъй като някои данни могат да бъдат загубени в процеса на декомпилиране, по-добре е да използвате декомпилатор, който е направен с Android предвид. Това пропуска стъпката JAR, превръщайки DEX директно в Java.

За хора, които не се интересуват сами да проследяват всички тези инструменти, Фора предложи Сантоку. Това е специална дистрибуция на Linux от viaForensics, която се снабдява предварително с всички инструменти, които трябва да разделяте, променяте и преопаковате приложение за Android. Това е мощен инструмент за цифрова криминалистика, за който сме писали в миналото.

Бързо обръщане

Ако сте заспали през последните няколко абзаца, тук се събуждате. Използвайки Сантоку, Фора хвана изключително основно приложение за Android, което беше създал и го раздели. След това той прегледа кода за определен ред, промени кода, преопакова го, подписа го, преинсталира модифицираното приложение на своя Android и го стартира. Целият процес отне по-малко от пет минути.

Сега, Fora беше много прост пример. Приложението беше много основно и не включваше объркан код. Демонстрацията му обаче имаше мощни последици. „Можете да направите това, за да промените поведението на всяко приложение за Android“, казва Фора, като в безплатен приложение изброява безкрайни животи в игра или платени функции като само няколко примера.

По-страшен пример? Просто се върнете обратно към някое от злонамерените приложения за клониране, които сме виждали. Помислете за това, преди да изтеглите схематичния клонинг FlappyBird.

Rsac: обратно инженерство на андроид приложение за пет минути