Hot answers tagged

28 votes

What are the tools use for reverse engineering android apk?

There are many tools, some are more low-level and some build on top of the low-level tools to make nicer and more complete tools. Here are my favorites: JADX - GUI (and Command line) to produce ...
user avatar
  • 411
20 votes

Repackaging APK file using baksmali and smali

I use apktool for this purpose, and a short little pair of shell scripts for decompiling and recompiling APKs: decompile-apk #!/bin/bash -e if ! [ "$1" ]; then echo "usage: $0 <file.apk>" ...
user avatar
  • 1,243
15 votes

Debugging third party android APKs

To debug an APK without the source code, you need to perform the following: Enable debug mode in the APK (use apktool to achieve this) Sign the APK (use keytool and jarsigner) Install the app and ...
user avatar
  • 446
9 votes

Bypassing certificate pinning in android

Use Xposed. Learn the API, is the way you should hook & manipulate Android apps. Xposed + JustTrustMe Xposed module (thx Fuzion24). The method calls you're looking for are in the below source ...
user avatar
8 votes
Accepted

How Do I get proficient at Reverse engineering?

I spent the last 3 or 4 days spending the majority of my day analysing Smali code making almost no progress. I know it feels like you've made "no progress", but I'd encourage you to not look at ...
user avatar
7 votes

Android- hiding private keys in .so file

If your application can decrypt the files, then you should assume that anyone sufficiently interested can do so as well. End of story. Obfuscation can slow people down, but it won't stop everyone, ...
user avatar
  • 1,972
7 votes

What are the tools use for reverse engineering android apk?

If you want to modify code, then the only real option I know of is bak/smali, which apktool provides a helpful wrapper for. If you merely want to understand the code, there's lots of options. For ...
user avatar
  • 1,972
7 votes
Accepted

does android apk contain game mechanics?

Short answer Single player games most frequently do contain all the information hard coded in the APK. Multiplayer games usually require more work such as packet analysis and more black box work but ...
user avatar
5 votes

Working with Android obfuscation

Here's how I would approach it. Which isn't necessarily the best approach. The first step is to find out what kind of obfuscation the app is using by looking around with your favorite decompiler. ...
user avatar
  • 1,972
5 votes

Does Google encrypt APK when downloading it from Play Store?

Disclaimer: I took a different approach to find your solution. I don't use Fiddler, it has many adwares. You may use Fiddler and may find same result as I did. Does anyone know how to unpack/...
user avatar
  • 1,429
5 votes

How to reverse engineering a proguarded .apk?

Without the proguard mapping, this is not possible. That information is simply no longer contained in the dex file. The best you could do would be to manually rename the methods, etc. with your own ...
user avatar
4 votes

Extract decrypted Assembly-CSharp.dll from APK via IDA

I think the solution is a very simple one, with one small tweak. To decrypt the file, XOR the encrypted data with the bytes 0xFCC6DC7FDCC7DFE0 and you will get the unencrypted file. You can see this ...
user avatar
  • 501
4 votes
Accepted

Opening non-standard PNG files extracted from Android app - missing signature and IHDR chunk

The first 16 bytes are unknown (likely some kind of private data). After that, a regular PNG file follows, but the first 128 bytes have been XORed with the value 234. The rest of the file is unchanged....
user avatar
  • 2,274
4 votes
Accepted

Debugging third party apk without modifying apk

You can't debug an apk on a user build of Android, unless the app has the android:debuggable="true" attribute in the manifest However, if you have a phone you can flash, you can flash a version of ...
user avatar
4 votes

What are the tools use for reverse engineering android apk?

On desktop You can try Antimony's answer. Also check this comment(which states using dex2jar on .dex file and JD-GUI on jar file): If you want to decompile an apk directly on your phone, show java can ...
user avatar
3 votes
Accepted

Reverse engineering Android vendor system apps

Run apktool on the APK. I got a few XML files, including the AndroidManifest, but no source. Apparently this is because there is no classes.dex in the package. That's because these are odexed ...
user avatar
3 votes

Android- hiding private keys in .so file

We are using a C library in our application, however. We are using a .so file of this library compiled for the ARM architecture. We use the SWIG interface from our application's main Java code to ...
user avatar
  • 1,614
3 votes
Accepted

Android- hiding private keys in .so file

Hiding the keys anywhere in the apk (including .so files) is definitely not enough to keep the keys secret for the long time. The code that can be executed definitely can be reverse engineered, and ...
user avatar
  • 7,700
3 votes

Extract a secret from an Android apk or .so file

If the API key is a string then just running strings would reveal it w/o grep as you do in your example. There might be some other strings but longer ones seems to stand out so it should be clearly ...
user avatar
3 votes
Accepted

How can I retrieve the encryption key in this code?

The encryption key is stored in the variable f4800b. It comes out to the following byte array. 43, 57, 97, -68, -63, -61, -40, 9, 50, 87, -104, 101, 63, 34, -78, 60 The cipher algorithm used is ...
user avatar
  • 5,850
3 votes

Can obfuscation be applied on certain parts?

Multiple .dex files are created mostly in cases when the number of methods exceed the maximum one for .dex files, which is 65536 functions per file. Yes, ProGuard can be used to obfuscate only ...
user avatar
  • 686
2 votes

How to monitor APK files in Android System

I have used "File Monitor" from SteelWorks (I am not associated with this company in any way) on a non-routed Android device and it works fine.
user avatar
2 votes
Accepted

How to monitor APK files in Android System

If you have root access in device you can use ps, also you can use /proc file system.
user avatar
  • 161
2 votes

Repackaging APK file using baksmali and smali

After playing with smali/baksmali I got it working. I think you didn't use the recursive flag when zipping. This caused the res folder to be empty which caused the crash. Also I run zipalign after ...
user avatar
  • 411
2 votes

Android (4.4+) SSL wireless sniffing without certificate changing

(Copy of an answer I gave on Stack Overflow) You could try injecting code into the Android app to sniff and dump SSL traffic. Take a look at https://github.com/5alt/ssl_logger (5alt's fork works with ...
user avatar
  • 141
2 votes

Android (4.4+) SSL wireless sniffing without certificate changing

iSEC Partner's Android SSL TrustKiller utilizes hooks that Cydia substrate can provide in order to defeat certificate pinning.
user avatar
  • 21
2 votes
Accepted

reversing apk - getting native code in classes.dex

No, native code isn't in classes.dex. If an android apk file has native code, the apk itself, when unzipping, should have a lib subdirectory, which may have architecture-dependent subdirectories ...
user avatar
2 votes

What's the most straightforward way to change a simple thing in Android APK java application?

Use apktool to disassemble it into smali, edit the smali, then reassemble with apktool. I've done it tons of times, and it's easy. You could also manually edit the dex file in simple cases, but this ...
user avatar
  • 1,972
2 votes

Frida manipulating arguments - Android

If I understand your question correctly, you want to change the parameter, v, inside the inner function. Right? If that's the case, you would already have access to the v argument inside your inner ...
user avatar
  • 121
2 votes

Reverse Engineering an APP With Frida

There could be multiple reasons for such a behavior to occur. Without more thorough investigation on your end and a more detailed description it's impossible to provide a good answer. Please take the ...
user avatar
  • 11.3k

Only top scored, non community-wiki answers of a minimum length are eligible