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

Analyzing Android App Binaries - GDG Silicon Sl...

Analyzing Android App Binaries - GDG Silicon Slopes Aug 2022

In this talk, we are going to analyze the structure of Android Package files (.apk), see how Android App Bundles (.aab) could help to reduce the app size, and take a look at the ways to reverse engineer Android apps.

We will work with a sample Android app that uses a modern tech stack including Kotlin and Jetpack Compose. We are going to decompile it, make a source code change and compile it back in order to launch an updated app on the device.

Pavlo Stavytskyi

August 11, 2022
Tweet

More Decks by Pavlo Stavytskyi

Other Decks in Programming

Transcript

  1. ▪ .apk .aab .aar files ▪ They are all .zip

    files Android package files 9
  2. ▪ brew install apktool ▪ apktool d app-release.apk ▪ Make

    a change ▪ apktool b -f -d app-release Apktool 27
  3. ▪ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA

    -keysize 2048 -validity 10000 ▪ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore app-release/dist/app-release.apk alias_name Signing modified APK 29
  4. ▪ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA

    -keysize 2048 -validity 10000 ▪ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore app-release/dist/app-release.apk alias_name ▪ jarsigner -verify -verbose -certs app-release/dist/app-release.apk Signing modified APK 30