Hjem Securitywatch Rsac: reverse engineering en Android-app på fem minutter

Rsac: reverse engineering en Android-app på fem minutter

Video: Reverse Engineering and Debugging 3rd Party Android APKs (Oktober 2024)

Video: Reverse Engineering and Debugging 3rd Party Android APKs (Oktober 2024)
Anonim

En af de mest almindelige taktikker til spredning af malware - eller endda bare dårlige applikationer - på Android er ompakning af apps. Under sin præsentation af RSA-konferencen demonstrerede Pau Oliva Fora fra viaForensics, at det tager kun få minutter at vende ingeniør Android-apps.

Hent din app

Det første skridt til at reverse-engineering en app, sagde Fora, var at skaffe dig en app. Selvom de ser glat ud på din telefon, er Android-apps (eller APK'er) virkelig bare ZIP-filer med en ny udvidelse. Indvendigt er alt, hvad appen skal køre - fra koden til ethvert medie, den muligvis har brug for.

Der er en række måder at få en APK på. Hvis du har en app, du gerne vil reverse-engineer på din Android, kan du bruge en filhåndtering som ASTRO til at gemme en sikkerhedskopi på et SD-kort. Det er også muligt at forbinde din Android til en computer og derefter bruge Android Debugging Bridge til at overføre appen til din pc. Du kan også bruge onlineværktøjer til at suge APK'er ud af Google Play.

Trækker det fra hinanden

Når du har en APK at arbejde med, skal du konvertere den til noget mere anvendeligt. Til dette præsenterede Fora to muligheder. Du kan adskille dit mål med et værktøj som Apktool, som konverterer APKs kompilerede programkodefil (Dalvik Executable eller DEX) til et samlingssprog som Smali. Eller du kan dekompilere , hvilket konverterer DEX til et Java Archive (JAR) og derefter til Java.

Fora bemærkede, at fordi nogle data kan gå tabt i dekompileringsprocessen, er det bedre at bruge en decompiler, der blev lavet med Android i tankerne. Dette springer over JAR-trinnet og konverterer DEX direkte til Java.

For folk, der ikke var interesseret i at spore alle disse værktøjer på egen hånd, foreslog Fora Santoku. Dette er en speciel distribution af Linux fra viaForensics, der leveres forudindlæst med alle de værktøjer, du har brug for for at trække fra hinanden, ændre og pakke en Android-applikation tilbage. Det er et kraftfuldt digitalt kriminalteknisk værktøj, som vi har skrevet om tidligere.

Hurtig omvendt

Hvis du faldt i søvn i de sidste par stykker, er det her du vågner op. Ved hjælp af Santoku nabbede Fora en meget grundlæggende Android-app, han havde oprettet og trak den fra hinanden. Derefter gennemser han koden for en bestemt linje, ændrede koden, pakker den igen, underskrev den, geninstallerede den ændrede app på sin Android og lancerede den. Hele processen tog mindre end fem minutter.

Fora var nu et meget simpelt eksempel. Appen var meget grundlæggende og indeholdt ingen tilsløret kode. Imidlertid havde hans demonstration kraftige konsekvenser. "Du kan gøre dette for at ændre opførslen for en hvilken som helst Android-applikation, " sagde Fora og angav uendelige liv i et spil eller betalte funktioner i en gratis app som blot et par eksempler.

Et skræmmere eksempel? Bare kast dit sind tilbage til nogen af ​​de ondsindede klon-apps, vi har set. Tænk over dette, før du downloader den maleriske FlappyBird-klon.

Rsac: reverse engineering en Android-app på fem minutter