diff --git a/src/mobile-pentesting/android-checklist.md b/src/mobile-pentesting/android-checklist.md index 7921a1428..a87c59a0a 100644 --- a/src/mobile-pentesting/android-checklist.md +++ b/src/mobile-pentesting/android-checklist.md @@ -21,10 +21,10 @@ ### [Statik Analiz](android-app-pentesting/index.html#static-analysis) -- [ ] [obfuscation](android-checklist.md#some-obfuscation-deobfuscation-information) kullanımı kontrol edin, mobilin root'lanıp lanmadığını, bir emülatör kullanılıp kullanılmadığını ve anti-tamper kontrollerini not edin. [Daha fazla bilgi için bunu okuyun](android-app-pentesting/index.html#other-checks). -- [ ] Hassas uygulamalar (banka uygulamaları gibi) mobilin root'lanıp lanmadığını kontrol etmeli ve buna göre hareket etmelidir. -- [ ] [ilginç dizeleri](android-app-pentesting/index.html#looking-for-interesting-info) arayın (şifreler, URL'ler, API, şifreleme, arka kapılar, tokenlar, Bluetooth uuids...). -- [ ] [firebase ](android-app-pentesting/index.html#firebase)API'lerine özel dikkat. +- [ ] [obfuscation](android-checklist.md#some-obfuscation-deobfuscation-information) kullanımı kontrol edin, mobilin root'lanıp root'lanmadığını, bir emülatör kullanılıp kullanılmadığını ve anti-tamper kontrollerini not edin. [Daha fazla bilgi için bunu okuyun](android-app-pentesting/index.html#other-checks). +- [ ] Hassas uygulamalar (banka uygulamaları gibi) mobilin root'lanıp root'lanmadığını kontrol etmeli ve buna göre hareket etmelidir. +- [ ] [ilginç dizgiler](android-app-pentesting/index.html#looking-for-interesting-info) (şifreler, URL'ler, API, şifreleme, arka kapılar, jetonlar, Bluetooth uuid'leri...) arayın. +- [ ] [firebase ](android-app-pentesting/index.html#firebase) API'lerine özel dikkat. - [ ] [Manifesti okuyun:](android-app-pentesting/index.html#basic-understanding-of-the-application-manifest-xml) - [ ] Uygulamanın hata ayıklama modunda olup olmadığını kontrol edin ve "sömürmeye" çalışın. - [ ] APK'nın yedeklemelere izin verip vermediğini kontrol edin. @@ -37,25 +37,42 @@ - [ ] Herhangi bir [şifre sabit kodlanmış mı veya diske kaydedilmiş mi](android-app-pentesting/index.html#poorkeymanagementprocesses)? Uygulama [güvensiz şifreleme algoritmaları mı kullanıyor](android-app-pentesting/index.html#useofinsecureandordeprecatedalgorithms)? - [ ] Tüm kütüphaneler PIE bayrağı kullanılarak mı derlendi? - [ ] Bu aşamada size çok yardımcı olabilecek bir dizi [statik Android Analizörü](android-app-pentesting/index.html#automatic-analysis) olduğunu unutmayın. +- [ ] `android:exported` **Android 12+ için zorunlu** – yanlış yapılandırılmış dışa aktarılan bileşenler dışsal niyet çağrısına yol açabilir. +- [ ] **Ağ Güvenliği Yapılandırmasını** (`networkSecurityConfig` XML) `cleartextTrafficPermitted="true"` veya alan özel geçersiz kılmaları için gözden geçirin. +- [ ] **Play Integrity / SafetyNet / DeviceCheck** çağrılarına bakın – özel doğrulamanın takılabilir/atlatılabilir olup olmadığını belirleyin. +- [ ] **Uygulama Bağlantıları / Derin Bağlantılar** (`android:autoVerify`) için niyet yönlendirme veya açık yönlendirme sorunlarını kontrol edin. +- [ ] **WebView.addJavascriptInterface** veya `loadData*()` kullanımını tanımlayın, bu uygulama içinde RCE / XSS'ye yol açabilir. +- [ ] Çapraz platform paketlerini analiz edin (Flutter `libapp.so`, React-Native JS paketleri, Capacitor/Ionic varlıkları). Özel araçlar: +- `flutter-packer`, `fluttersign`, `rn-differ` +- [ ] Bilinen CVE'ler için üçüncü taraf yerel kütüphaneleri tarayın (örneğin, **libwebp CVE-2023-4863**, **libpng**, vb.). +- [ ] Ek bulgular için **SEMgrep Mobil kuralları**, **Pithus** ve en son **MobSF ≥ 3.9** AI destekli tarama sonuçlarını değerlendirin. ### [Dinamik Analiz](android-app-pentesting/index.html#dynamic-analysis) - [ ] Ortamı hazırlayın ([çevrimiçi](android-app-pentesting/index.html#online-dynamic-analysis), [yerel VM veya fiziksel](android-app-pentesting/index.html#local-dynamic-analysis)) - [ ] Herhangi bir [istenmeyen veri sızıntısı](android-app-pentesting/index.html#unintended-data-leakage) var mı (günlükleme, kopyala/yapıştır, çökme günlükleri)? -- [ ] [Gizli bilgilerin SQLite veritabanlarında kaydedilmesi](android-app-pentesting/index.html#sqlite-dbs)? +- [ ] [Gizli bilgilerin SQLite veritabanlarında kaydedilip kaydedilmediğini](android-app-pentesting/index.html#sqlite-dbs) kontrol edin? - [ ] [Sömürülebilir dışa aktarılan Aktiviteler](android-app-pentesting/index.html#exploiting-exported-activities-authorisation-bypass)? - [ ] [Sömürülebilir İçerik Sağlayıcıları](android-app-pentesting/index.html#exploiting-content-providers-accessing-and-manipulating-sensitive-information)? - [ ] [Sömürülebilir açık Hizmetler](android-app-pentesting/index.html#exploiting-services)? - [ ] [Sömürülebilir Yayıncı Alıcılar](android-app-pentesting/index.html#exploiting-broadcast-receivers)? -- [ ] Uygulama [bilgileri düz metin olarak mı iletiyor/güçsüz algoritmalar mı kullanıyor](android-app-pentesting/index.html#insufficient-transport-layer-protection)? MitM mümkün mü? +- [ ] Uygulama [bilgileri düz metin olarak mı iletiyor/güçsüz algoritmalar mı kullanıyor](android-app-pentesting/index.html#insufficient-transport-layer-protection)? Bir MitM mümkün mü? - [ ] [HTTP/HTTPS trafiğini inceleyin](android-app-pentesting/index.html#inspecting-http-traffic) - [ ] Bu gerçekten önemlidir, çünkü HTTP trafiğini yakalayabilirseniz, yaygın Web güvenlik açıklarını arayabilirsiniz (Hacktricks'in Web güvenlik açıkları hakkında çok fazla bilgisi var). -- [ ] Olası [Android İstemci Tarafı Enjeksiyonları](android-app-pentesting/index.html#android-client-side-injections-and-others) kontrol edin (muhtemelen bazı statik kod analizi burada yardımcı olacaktır). -- [ ] [Frida](android-app-pentesting/index.html#frida): Sadece Frida, uygulamadan ilginç dinamik veriler elde etmek için kullanın (belki bazı şifreler...) +- [ ] Olası [Android İstemci Tarafı Enjeksiyonları](android-app-pentesting/index.html#android-client-side-injections-and-others) için kontrol edin (muhtemelen bazı statik kod analizi burada yardımcı olacaktır). +- [ ] [Frida](android-app-pentesting/index.html#frida): Sadece Frida, uygulamadan ilginç dinamik veriler elde etmek için kullanın (belki bazı şifreler...). +- [ ] **Tapjacking / Animasyon destekli saldırılar (TapTrap 2025)** için test yapın, Android 15+ üzerinde bile (hiçbir overlay izni gerekmiyor). +- [ ] **overlay / SYSTEM_ALERT_WINDOW clickjacking** ve **Erişim Servisi istismarı** için ayrıcalık yükseltme deneyin. +- [ ] `adb backup` / `bmgr backupnow` hala uygulama verilerini dökebiliyor mu kontrol edin ( `allowBackup`'ı devre dışı bırakmayı unutan uygulamalar). +- [ ] **Binder düzeyinde LPE'ler** için sorgulama yapın (örneğin, **CVE-2023-20963, CVE-2023-20928**); izin verilirse çekirdek fuzzers veya PoC'ler kullanın. +- [ ] Play Integrity / SafetyNet uygulanıyorsa, çalışma zamanı kancaları (`Frida Gadget`, `MagiskIntegrityFix`, `Integrity-faker`) veya ağ düzeyinde tekrar oynatma deneyin. +- [ ] Modern araçlarla enstrümantasyon yapın: +- **Objection > 2.0**, **Frida 17+**, **NowSecure-Tracer (2024)** +- `perfetto` / `simpleperf` ile dinamik sistem genelinde izleme. ### Bazı obfuscation/Deobfuscation bilgileri -- [ ] [Burayı okuyun](android-app-pentesting/index.html#obfuscating-deobfuscating-code) +- [ ] [Buradan okuyun](android-app-pentesting/index.html#obfuscating-deobfuscating-code) {{#include ../banners/hacktricks-training.md}}