Articles

How To Reverse Engineer An Android Application In 3 Easy Steps

Varun Dwarkani
Varun Dwarkani

Follow

Sep 12, 2020 · 3 min read

Reverse Engineer Android Application

Many beginners or even intermediate Android developers fail to realize that the Android app costruiscono e la nave può essere reverse engineering in misura maggiore. Se sei uno degli sviluppatori che pensano hard-codifica chiavi segrete o anche la memorizzazione in build.file gradle impedirà di andare nelle mani di hacker o altri sviluppatori, vi sbagliate.

La sicurezza non è mai stata facile e la prima regola è non fidarsi mai della sicurezza sul lato client. Il lato client non è un ambiente che controlliamo e quindi non dovremmo fare affidamento su di esso codificando o memorizzando segreti che possono disturbare il nostro sistema. Quindi il modo migliore per essere sicuri di non finire per essere scoperti da sviluppatori e hacker è quello di decodificare l’applicazione da soli e risolvere i problemi, se possibile.

Incidente interessante — Una volta stavo lavorando su un’applicazione Android che richiedeva una formula matematica da utilizzare in una funzione. Non mi piace la matematica al nucleo, ho trovato più facile e interessante per decodificare una delle applicazioni concorrenti e poi ho tirato fuori la formula matematica dal codice con successo! :p

Quindi, iniziamo. Per il reverse engineering di un’applicazione, avremmo bisogno di alcune cose in anticipo-

  1. APK dell’applicazione.
  2. Alcuni set di codici da eseguire.
  3. Java Decompiler Tool (JD JUI in questo articolo) per visualizzare il codice decompilato.

conoscenza di Base dell’applicazione per Android. Fonte-Pranay Airan.

Avremmo bisogno dell’APK dell’applicazione che vogliamo invertire. Ci sono molti modi per farlo, ma suggerirò un modo semplice qui. Scarica l’app Apk Extractor sul tuo dispositivo e seleziona l’applicazione dall’elenco all’interno dell’applicazione. Una volta fatto, aprire qualsiasi Esplora file e andare alla cartella ExtractedApks presente nella directory di archiviazione interna. Lì, troverete l’APK. Copia l’APK sul tuo sistema e procederemo con i passaggi seguenti.

Secondo passo-

Una volta che abbiamo l’APK, lo invertiremo per conoscere e vedere il codice. Ciò ci consentirà e ci fornirà informazioni sulla strutturazione del codice e troverà le misure di sicurezza adottate per evitare di affrontare un attacco di reverse engineering.

Qui, rinomineremo il nostro {app}.file apk su {app}.zip ed estrarlo. All’interno della cartella estratta, troveremo le classi.file dex che contiene il codice dell’applicazione.

Un file DEX è un file eseguibile che contiene il codice compilato e gira sulla piattaforma Android.

Ora, useremo le classi.dex file abbiamo preso dal file zip APK e convertirlo in JAR. Per farlo, possiamo usare lo strumento open-source’ dex2jar ‘ disponibile qui. Oltre al capo alla sezione release e scaricare l’ultimo file zip disponibile ed estrarlo. Copia le classi estratte.dex file e incollarlo all’interno della directory ‘dex2jar-x. x’.

Apri il terminale sulla tua macchina e vai alla directory ‘dex2jar-x. x’. Ora eseguiremo il comando-

d2j-dex2jar.lezioni di pipistrello.dex

Questo convertirà le classi.dex file in un file JAR che possiamo visualizzare utilizzando qualsiasi strumento Decompiler.

Terzo passo –

Useremo JD JUI che è un semplice strumento di decompilatore Java. Si può ottenere da qui. Scarica ed estrai lo zip. Eseguire il jd-gui.exe e aprire il file dex e Voilà! Abbiamo decodificato l’applicazione!!

Decompilato Android App Codice Sorgente