Listen to this Post
Flutter APKs are widely used in mobile applications, but intercepting their network traffic can be challenging. reFlutter solves this by replacing the original Flutter engine with a modified version, enabling real-time traffic interception at the native level. This is particularly useful for security researchers and bug hunters.
🔗 Reference: reFlutter Guide
You Should Know:
1. Setting Up reFlutter for Traffic Interception
To intercept Flutter APK traffic:
1. Download and Patch the APK with reFlutter.
2. Configure Burp Suite as your proxy:
adb shell settings put global http_proxy 192.168.1.10:8080
3. Install the Patched APK on an Android device/emulator.
2. Re-Signing the APK After Patching
Since modifying the APK invalidates its signature, use uber-apk-signer:
java -jar uber-apk-signer.jar --apk patched_app.apk
🔗 Tool: uber-apk-signer
3. Decoding Flutter Traffic
Flutter apps often use Dart-based HTTP requests. To inspect them:
– Use Frida to hook into Dart runtime:
Interceptor.attach(Module.findExportByName("libflutter.so", "dart:io::HttpClient::send"), { onEnter: function(args) { console.log("HTTP Request to: " + Memory.readUtf8String(args[bash])); } });
4. Bypassing SSL Pinning
Flutter apps may implement SSL pinning. Bypass it using objection:
objection -g com.example.app explore --startup-command "android sslpinning disable"
5. Analyzing Native-Level Traffic
For deeper inspection, use strace on rooted devices:
strace -f -e trace=network -p <app_pid>
What Undercode Say
Intercepting Flutter APK traffic requires modifying the engine, re-signing, and bypassing security measures. Tools like reFlutter, Frida, and Burp Suite are essential for security assessments. Always test in a controlled environment to avoid legal issues.
Expected Output:
- Successfully intercepted Flutter HTTP/HTTPS traffic.
- Patched and re-signed APK running with Burp Suite logs.
- SSL pinning bypassed for deeper inspection.
🔗 Further Reading:
References:
Reported By: Yes We – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅