Post

Based - Mobile Hacking Community CTF Writeup

Walkthrough for the Based Android reverse engineering challenge from Mobile Hacking Community CTF.

Based - Mobile Hacking Community CTF Writeup

Challenge Info

FieldDetails
CTFMobile Hacking Community CTF
ChallengeBased
CategoryAndroid / Reverse Engineering

Solution

We can start by installing and opening the APK in our emulator

alt text

Very simple launcher activity, which ask to input a code and shows a toast based on our input Now, we can proceed to inspect it in Jadx,

alt text

We see that our input is validated using a method check() of the class Based, To understand the checking we must inspect the Based class.

alt text

So, our input is compared against the returned value of another method getPayload() We can use Frida to get the return value of getPayload()

1
2
3
4
5
Java.perform(() => {
    var Interceptor = Java.use("com.appknox.based.Based");
    var InterceptorObj = Interceptor.$new();
    console.log(InterceptorObj.getPayload());
})

We can load this script to get the flag,

Flag

1
FLAG:MHC{50_Y0U_T00_4R3_4_B453D_P3R50N}
This post is licensed under CC BY 4.0 by the author.