Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Android Reverse Engineering - GDG Munich

Android Reverse Engineering - GDG Munich

Enrique López Mañas

April 04, 2013
Tweet

More Decks by Enrique López Mañas

Other Decks in Technology

Transcript

  1. Donnerstag, 4. April 13

    View Slide

  2. Reverse
    Engineering
    Is the process of discovering the technological
    principles of a device, object, or system through
    analysis of its structure, function, and operation1
    1
    Eilam, Eldad & Chikofsky, Elliot J. (2007).
    Reversing: secrets of reverse engineering.
    Donnerstag, 4. April 13

    View Slide

  3. Purpose
    Valuable data
    Interfacing
    Security analysis
    Donnerstag, 4. April 13

    View Slide

  4. Android Compiling
    process
    Coding in Java
    Compiling to Dalvik
    Packaging
    Distribution
    Donnerstag, 4. April 13

    View Slide

  5. (de)distribution Pulling from device
    Directly download via googleplay-pythonapi
    Download from web
    Donnerstag, 4. April 13

    View Slide

  6. (de)distribution
    Donnerstag, 4. April 13

    View Slide

  7. (de)packaging
    (de)compiling
    From dex to .smali or .java
    dex2jar
    apktool
    Donnerstag, 4. April 13

    View Slide

  8. Smali
    Donnerstag, 4. April 13

    View Slide

  9. APK Tool https://code.google.com/p/android-apktool/
    downloads/list
    Jar Signer http://docs.oracle.com/javase/1.3/docs/
    tooldocs/win32/jarsigner.html
    Keytool http://docs.oracle.com/javase/6/docs/
    technotes/tools/windows/keytool.html
    Donnerstag, 4. April 13

    View Slide

  10. Crackme http://crackmes.de/users/deurus/
    android_crackme03/
    dex2jar
    http://code.google.com/p/dex2jar/
    JD-GUI http://java.decompiler.free.fr/
    Donnerstag, 4. April 13

    View Slide

  11. Smali http://pallergabor.uw.hu/androidblog/
    dalvik_opcodes.html
    Donnerstag, 4. April 13

    View Slide

  12. Security Tokens
    Private addresses
    Unauthorized access
    Cheating
    Donnerstag, 4. April 13

    View Slide

  13. Proguard Obfuscating and optimizing tool
    http://developer.android.com/tools/help/
    proguard.html
    Donnerstag, 4. April 13

    View Slide

  14. Thank you!
    + http://goo.gl/t4AVh
    @eenriquelopez
    http://www.neo-tech.es
    Donnerstag, 4. April 13

    View Slide