
Frida टूलकिट जो Android ऐप्स पर SSL/TLS सर्टिफिकेट पिनिंग को बायपास करता है, Java TrustManager, OkHttp, Conscrypt, और नेटिव OpenSSL/BoringSSL लेयर्स को हुक करता है।
Android के लिए यूनिवर्सल SSL/TLS सर्टिफिकेट पिनिंग बायपास
लेखक: Danieldev (GitHub: @danieldev23 | Telegram: @zadevz)
एक व्यापक Frida टूलकिट जो किसी भी Android ऐप पर SSL पिनिंग को विफल कर देता है — Java और Native दोनों परतों को कवर करते हुए, मानक OkHttp पिनिंग से लेकर Facebook के कस्टम proxygen native कार्यान्वयन तक।
| विशेषता | स्थिति |
|---|---|
| Java TrustManager / SSLContext | ✅ |
| HostnameVerifier (सभी होस्टनाम की अनुमति देता है) | ✅ |
| OkHttp CertificatePinner (मानक) | ✅ |
| Obfuscated OkHttp (FB, बैंकिंग ऐप्स) | ✅ |
| Conscrypt / Android TLS प्रदाता | ✅ |
| NetworkSecurityConfig (Android 7.0+) | ✅ |
| WebViewClient SSL त्रुटि बायपास | ✅ |
| Apache HTTP क्लाइंट (पुराने ऐप्स) | ✅ |
| TrustKit Pinning लाइब्रेरी | ✅ |
| Native OpenSSL / BoringSSL | ✅ |
Flutter (ssl_verify_peer_cert) | ✅ |
Facebook Proxygen (verifyWithMetrics) | ✅ |
| लोड किए गए SSL मॉड्यूल का स्वतः-पता लगाना | ✅ |
| CModule Native प्रतिस्थापन (0ms ओवरहेड) | ✅ |
| स्क्रिप्ट | विवरण |
|---|---|
scripts/universal_bypass.js | यूनिवर्सल स्क्रिप्ट — किसी भी Android ऐप पर काम करती है |
scripts/fb4a_bypass.js | विशेष रूप से Facebook (FB4A) के लिए अनुकूलित स्क्रिप्ट, Ghidra-पुष्ट प्रतीकों के साथ |
pip install frida-tools)/data/local/tmp/ में चल रहा frida-serverrun.sh के साथ तेज़ उपयोग# Clone the repository
git clone https://github.com/danieldev23/frida-ssl-bypass.git
cd frida-ssl-bypass
# Make the runner executable
chmod +x run.sh
# ── Universal bypass (Any app) ──
./run.sh -p com.example.app # Attach to running app
./run.sh -p com.example.app -m spawn # Spawn app and hook
# ── Facebook specific bypass ──
./run.sh -p com.facebook.katana -s fb4a # FB4A optimized mode
./run.sh # Default: Attach to Facebook
# ── Direct Frida CLI usage ──
frida -U -f com.instagram.android -l scripts/universal_bypass.js
frida -U -p 1234 -l scripts/universal_bypass.js
run.sh)./run.sh [options]
-p, --package <name> Target package name (default: com.facebook.katana)
-s, --script <name> Script to use: fb4a | universal (default: universal)
-m, --mode <mode> Mode: attach | spawn (default: attach)
-h, --help Show help message
SSLContext.init() → Injects TrustAllManager (trusts all certificates)
HostnameVerifier → Returns true for all domain names
CertificatePinner.check() → Noop (scans for standard and obfuscated classes)
Conscrypt → Bypasses certificate chain verification
NetworkSecurityConfig → Trusts user-added CA certificates
WebViewClient → Automatically proceeds on SSL errors
SSL_CTX_set_verify() → Forces SSL_VERIFY_NONE (0)
SSL_get_verify_result() → Always returns X509_V_OK (0)
SSL_set_custom_verify() → Disables custom verification callback
verifyWithMetrics() → CModule stub returns TRUE (Facebook Proxygen)
ssl_verify_peer_cert() → Returns 1 (Flutter / Dart Engine)
टूलकिट दो रणनीतियों का उपयोग करके मेमोरी में लोड किए गए SSL मॉड्यूल का स्वतः पता लगाता है:
android_dlopen_ext / dlopen को हुक करता है (बैकऑफ पोलिंग फ़ॉलबैक के साथ)।frida-ssl-bypass/
├── README.md # Documentation (English)
├── LICENSE # MIT License
├── run.sh # Auto-runner script for frida-server & hooks
├── .gitignore
└── scripts/
├── universal_bypass.js # Universal bypass script for any app
└── fb4a_bypass.js # FB4A specific optimized bypass script
यह प्रोजेक्ट पूर्णतः सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए है। इस टूल का उपयोग केवल उन ऐप्स पर करें जिनके आप स्वामी हैं या जिनका ऑडिट करने के लिए आपके पास स्पष्ट प्राधिकरण है। लेखक किसी भी दुरुपयोग के लिए कोई दायित्व स्वीकार नहीं करता।
MIT लाइसेंस के अंतर्गत वितरित — पूर्ण विवरण के लिए LICENSE देखें।
| एप्लिकेशन | पैकेज नाम | अनुशंसित स्क्रिप्ट | नोट्स |
|---|
com.facebook.katana | fb4a / universal | C/C++ Native Proxygen बायपास | |
com.instagram.android | universal | OkHttp + Native OpenSSL | |
com.whatsapp | universal | Noise Protocol + Native SSL | |
| Twitter / X | com.twitter.android | universal | OkHttp Pinning |
| TikTok | com.zhiliaoapp.musically | universal | BoringSSL कस्टम सत्यापन |
| बैंकिंग ऐप्स | भिन्न | universal | Conscrypt + TrustKit |
| Flutter ऐप्स | भिन्न | universal | libflutter.so में verify चेन को हुक करता है |
| React Native | भिन्न | universal | अंतर्निहित OkHttp परत को कवर करता है |