
مجموعة أدوات Frida التي تتجاوز تثبيت شهادات SSL/TLS في تطبيقات Android، عبر اعتراض Java TrustManager وOkHttp وConscrypt وطبقات OpenSSL/BoringSSL الأصلية.
تجاوز شامل لتثبيت شهادات SSL/TLS على أندرويد
المؤلف: Danieldev (GitHub: @danieldev23 | Telegram: @zadevz)
مجموعة أدوات Frida شاملة تتغلب على تثبيت شهادة SSL على أي تطبيق أندرويد — تغطي كلاً من طبقات Java والطبقات الأصلية (Native)، بدءاً من تثبيت OkHttp القياسي وصولاً إلى تطبيق proxygen الأصلي المخصص من فيسبوك.
| الميزة | الحالة |
|---|---|
| Java TrustManager / SSLContext | ✅ |
| HostnameVerifier (يسمح بجميع أسماء المضيفين) | ✅ |
| OkHttp CertificatePinner (القياسي) | ✅ |
| OkHttp المُشوَّش (FB، تطبيقات البنوك) | ✅ |
| Conscrypt / مزود TLS في أندرويد | ✅ |
| NetworkSecurityConfig (أندرويد 7.0+) | ✅ |
| تجاوز خطأ SSL في WebViewClient | ✅ |
| عميل Apache HTTP (التطبيقات القديمة) | ✅ |
| مكتبة تثبيت TrustKit | ✅ |
| OpenSSL / BoringSSL الأصلي | ✅ |
Flutter (ssl_verify_peer_cert) | ✅ |
Facebook Proxygen (verifyWithMetrics) | ✅ |
| الكشف التلقائي عن وحدات SSL المحمّلة | ✅ |
| استبدال CModule الأصلي (بدون أي تأخير) | ✅ |
| السكربت | الوصف |
|---|---|
scripts/universal_bypass.js | سكربت شامل — يعمل على أي تطبيق أندرويد |
scripts/fb4a_bypass.js | سكربت مُحسَّن خصيصاً لـ فيسبوك (FB4A) مع رموز مؤكدة بواسطة Ghidra |
pip install frida-tools)frida-server في /data/local/tmp/ على الجهازrun.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 لاعتراض مكتبات SSL الأصلية أثناء تحميلها في الذاكرة (مع آلية استقصاء احتياطية متباعدة).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 | تجاوز Proxygen الأصلي C/C++ | |
com.instagram.android | universal | OkHttp + OpenSSL الأصلي | |
com.whatsapp | universal | بروتوكول Noise + SSL الأصلي | |
| Twitter / X | com.twitter.android | universal | تثبيت OkHttp |
| TikTok | com.zhiliaoapp.musically | universal | تحقق مخصص BoringSSL |
| تطبيقات البنوك | متنوع | universal | Conscrypt + TrustKit |
| تطبيقات Flutter | متنوع | universal | يعترض سلسلة التحقق في libflutter.so |
| React Native | متنوع | universal | يغطي طبقة OkHttp الأساسية |