Bypass SSL Pinning Using Frida

Frida merupakan dynamic instrumentation toolkit,frida dapat dikatakan sebagai seperangkat alat yang memungkinkan Anda memasukkan kode khusus ke dalam aplikasi yang sedang berjalan dengan cepat.

Selama tutorial bypass SSL Pinning ini, aplikasi yang akan diuji atau menjadi target pengujian adalah aplikasi android ssl pinning demo, yang dapat diinstal disiniarrow-up-right.

Untuk dapat melakukan bypass SSL Pinning menggunakan frida ini, harus tersedia beberapa alat atau perangkat lunak berikut ini :

  1. Text Editor (Vscodearrow-up-right, etc)

Jika semua alat sudah disiapkan, maka selanjutnya adalah ketahapan melakukan bypass SSL Pinning. Untuk lebih jelasnya, akan dijelaskan setiap langkahnya seperti berikut ini:

  1. Jalankan aplikasi android ssl pinning demo

  2. Jalankan frida server yang sebelumnya telah diinstal pada perangkat android dengan perintah ./frida-server

  3. Lalu pada perangkat komputer, jalankan frida dengan script yang telah ada. Sebagai contoh disini menggunakan script berikut iniarrow-up-right dengan menggunakan perintah berikut frida --codeshare akabe1/frida-multiple-unpinning -U -f <<identifier name>>

  4. Maka beberapa function ssl pinning yang umum ditemukan, berhasil dibypass menggunakan script tersebut

  5. Atau juga dapat menggunakan teknik manual dengan cara yang pertama adalah membuka file apk dari aplikasi target menggunakan aplikasi jadx

  6. Lihat function ssl pinning pada aplikasi target. Sebagai contoh, dapat dilihat terdapat function doesCertMatchPin

  7. Bypass function tersebut menggunakan script JS berikut

    Java.perform(() => {
        console.log("Patching...");
        const mainActivityClass = Java.use("tech.httptoolkit.pinning_demo.MainActivity");
        const certMethod = mainActivityClass.doesCertMatchPin;
        certMethod.implementation = () => true;
        console.log("Patched");
    });
  8. Jika sudah, jalankan script tersebut menggunakan frida dengan perintah berikut ini frida -l <<script-bypass-ssl-pinning.js>> -U -f <<identified name>>

  9. Maka salah satu function ssl pinning berhasil dibypass

Thanks, Stay Ethical & Happy Hacking! 🍻

Last updated