Haha iya bro, kalau targetnya aplikasi Android biasa (bukan yang super ketat pake proteksi banking-level), cara klasik itu emang paling cepat dan "kelar dalam 5 menit":
1. Extract APK (apktool d namafile.apk)
2. Buat folder xml di res/xml
3. Buat file network_security_config.xml isinya kira-kira gini:
```xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<debug-overrides>
<trust-anchors>
<!-- Trust user added CAs for debug builds -->
<certificates src="user" />
<certificates src="system" />
</trust-anchors>
</debug-overrides>
<!-- Untuk release build tetap aman, tapi debug bisa di-bypass -->
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>
```
4. Tambahin di AndroidManifest.xml aplikasi target:
```xml
<application
android:networkSecurityConfig="@xml/network_security_config"
android:usesCleartextTraffic="true"
... >
```
5. Rebuild APK (apktool b), sign ulang pake apksigner atau Uber APK Signer
6. Install, buka HTTP Canary / Packet Capture / PCAPdroid, install user certificate
7. Done, semua traffic HTTPS keliatan plaintext.
Kalau aplikasinya pake Flutter/React Native biasanya langsung lolos.
Kalau masih gagal (pake custom pinning atau certificate binding), baru masuk ke level berikutnya:
- Frida script universal SSL pinning bypass (justtrustme / custom script)
- Objection + sslpinning disable
- Frida + patch library libssl.so / boringssl
- LP/Xposed module (TrustMeAlready, JustTrustMe)
- Atau paling berat: patch smali langsung di class yang ada pinning-nya
Tapi 80-90% aplikasi Indo (e-commerce, dompet digital biasa, game, dll) udah cukup pake cara network_security_config + user cert doang. Cepet, nggak ribet.
Kalau lo lagi nge-bypass aplikasi tertentu yang bandel, kasih tau nama aplikasinya atau error yang muncul, nanti gue kasih script frida yang tepat :D