Mobil Uygulama Güvenlik Testi Nasıl Yapılır? iOS ve Android İçin Pentest Rehberi
18 Ağustos 2026
Günümüzde işletmeler, müşterilerine ulaşmak ve servislerini sunmak için web sitelerinin yanı sıra öncelikli olarak mobil uygulamaları (iOS ve Android) tercih etmektedir. Bankacılık, e-ticaret, sağlık, lojistik ve SaaS çözümleri başta olmak üzere milyonlarca kullanıcının hassas verileri, ödeme bilgileri ve kişisel kayıtları mobil uygulamalar üzerinden işlenmektedir. Ancak mobil uygulamalar, yapısı gereği kullanıcıların cihazlarına indirilen ve kaynak kodları tersine mühendislik (Reverse Engineering) yöntemleriyle incelenebilen yazılımlardır.
Birçok şirket mobil uygulamasını App Store veya Google Play Store’da yayınlamadan önce sadece fonksiyonel testlerden geçirir. Ancak güvenlik boyutunun ihmal edilmesi; API anahtarlarının çalınmasına, kullanıcı oturumlarının ele geçirilmesine, ödeme adımlarının manipüle edilmesine ve ciddi veri sızıntılarına yol açabilir.
CyberTestify olarak hazırladığımız bu rehberde; mobil uygulama güvenlik testinin (Mobile Pentest) nasıl yapıldığını, OWASP MASVS standartlarını, statik ve dinamik analiz farklarını ve uygulamanızı mağazalarda yayınlamadan önce almanız gereken önlemleri inceliyoruz.
1. Mobil Uygulamalarda Sık Karşılaşılan Top 5 Güvenlik Riski
Mobil uygulamalar, web uygulamalarından farklı olarak hem istemci (Client-side / Cihaz) hem de sunucu (Server-side / API) tarafında güvenlik riskleri barındırır. En yaygın güvenlik açıkları şunlardır:
1. Güvensiz Veri Depolama (Insecure Data Storage)
Uygulamanın kullanıcı şifrelerini, erişim jetonlarını (Bearer Tokens) veya kişisel verileri cihaz hafızasında (SQLite, SharedPreferences, NSUserDefaults) açık metin (unencrypted) olarak saklamasıdır. Cihazın çalınması veya zararlı bir yazılım bulaşması durumunda bu veriler kolayca elde edilir.
2. Zayıf Sunucu/API İletişimi (Insecure Communication)
Uygulama ile sunucu arasındaki ağ trafiğinin şifrelenmemesi (HTTP kullanımı) veya SSL Certificate Pinning mekanizmasının bulunmamasıdır. Saldırganlar halka açık Wi-Fi ağlarında araya girerek (Man-in-the-Middle) hassas verileri dinleyebilir.
3. Tersine Mühendislik ve Kod Çalma (Reverse Engineering & Decompilation)
Android (APK/AAB) veya iOS (IPA) paketlerinin saldırganlar tarafından kaynak koda dönüştürülmesidir (Decompile). Kod içinde unutulan veritabanı şifreleri, API anahtarları veya uygulama mantığı bu yolla ifşa olur.
4. Güvensiz Kimlik Doğrulama ve Yetkilendirme (Insecure Authentication)
Uygulamanın biyometrik doğrulama (FaceID / Fingerprint) adımlarının veya beni hatırla fonksiyonlarının istemci tarafında kolayca atlatılabilmesidir (Bypass).
5. Kod Kurcalama ve Enjeksiyon (Code Tampering & Injection)
Uygulama kodunun değiştirilerek sahte/yama yapılmış (Repackaged) versiyonlarının üçüncü taraf sitelerde yayınlanması veya uygulama içine zararlı kod enjekte edilmesidir.
2. OWASP MASVS Standartlarında Mobil Pentest Nasıl Yapılır?
Mobil uygulama sızma testleri, uluslararası kabul görmüş OWASP MASVS (Mobile Application Security Verification Standard) çerçevesine uygun olarak iki temel aşamada gerçekleştirilir:
[Mobil Uygulama Paketi (APK/IPA)] ➔ [Statik Analiz (SAST) - Kod/Statik] ➔ [Dinamik Analiz (DAST) - Çalışma Anı] ➔ [API Güvenlik Testleri]
A. Statik Güvenlik Analizi (SAST - Static Analysis)
Uygulama çalıştırılmadan, derlenmiş paket dosyası (Binary) üzerinde yapılan incelemedir:
- Kaynak kodun tersine mühendislikle decompile edilmesi ve kod kalitesinin incelenmesi.
- Kod içerisindeki hardcoded (sabit yazılmış) API keys, şifreler ve gizli bağlantı adreslerinin aranması.
- Uygulama izinlerinin (Kamera, Rehber, Konum vb.) gereksiz genişlikte olup olmadığının kontrolü.
- Kod karartma (Obfuscation) tekniklerinin uygulanıp uygulanmadığının tespiti.
B. Dinamik Güvenlik Analizi (DAST - Dynamic Analysis)
Uygulama gerçek veya emüle edilmiş bir cihazda çalıştırılırken yapılan testlerdir:
- Ağ Trafiği Analizi: Burp Suite veya OWASP ZAP gibi araçlarla uygulamanın sunucuyla yaptığı tüm web servis (REST/SOAP API) isteklerinin yakalanması ve manipüle edilmesi.
- Bellek (RAM) ve Çalışma Anı Analizi: Frida ve Objection gibi dinamik enjeksiyon araçları kullanılarak uygulamanın çalışma anındaki bellek durumunun incelenmesi ve SSL Pinning / Root-Jailbreak tespiti adımlarının atlatılmaya çalışılması.
- Yerel Depolama Denetimi: Uygulamanın cihaz üzerinde oluşturduğu geçici dosyaların (cache), veritabanlarının ve log kayıtlarının incelenmesi.
3. iOS ve Android Pentest Arasındaki Temel Farklar
Her iki işletim sisteminin mimarisi farklı olduğu için uygulanan güvenlik testleri de farklılık gösterir:
| Özellik | Android Güvenlik Testi | iOS Güvenlik Testi |
|---|---|---|
| Paket Formatı | .apk / .aab |
.ipa |
| Kod Karartma İhtiyacı | Java/Kotlin kodları çok kolay decompile edilir, ProGuard/R8 şarttır. | Swift/Objective-C derlenmiş kodları göreceli daha zordur ama decompilation mümkündür. |
| Test Ortamı | Root edilmiş cihaz veya Emülatör | Jailbreak yapılmış fiziksel iOS cihazı |
| Kritik Kontroller | Root Tespiti, Intent Spoofing, Manifest Yapılandırması | Jailbreak Tespiti, ATS (App Transport Security), Keychain Güvenliği |
4. Mobil Uygulama Yayınlamadan Önce Alınması Gereken 5 Güvenlik Önlemi
- Kod Karartma (Obfuscation) Kullanın: Android için ProGuard/DexGuard, iOS için özel obfuscator araçları kullanarak kaynak kodunuzun okunmasını zorlaştırın.
- Root / Jailbreak Tespiti Ekleleyin: Uygulamanızın güvenliği ihlal edilmiş (Rooted/Jailbroken) cihazlarda çalışmasını engelleyin veya kısıtlı modda çalıştırın.
- SSL Certificate Pinning Uygulayın: Uygulamanın sadece sizin belirttiğiniz sunucu sertifikasıyla haberleşmesini sağlayarak aradaki dinleme (MITM) saldırılarını engelleyin.
- Hassas Verileri Keychain / KeyStore’da Saklayın: Parola veya token gibi verileri düz metin olarak değil, Android KeyStore ve iOS Keychain gibi donanım destekli şifreli alanlarda tutun.
- Yayın Öncesi Bağımsız Sızma Testi Yaptırın: Uygulamanızı mağazalara göndermeden önce mutlaka bağımsız bir siber güvenlik firmasından mobil sızma testi hizmeti alın.
CyberTestify Mobil Uygulama Sızma Testi Hizmetleri
Mobil uygulamanızın Play Store veya App Store’da güvenlik açığı nedeniyle kaldırılması, kullanıcı verilerinin sızması veya markanızın itibar kaybetmesi riskini göze almayın.
CyberTestify olarak, OWASP MASVS standartlarında sunduğumuz Mobil Uygulama Sızma Testi (iOS & Android Pentest) hizmetlerimizle uygulamanızı baştan sona test ediyoruz:
- iOS & Android Mobil Pentest Paketlerimizi İnceleyin: Statik, dinamik ve API analizleriyle uygulamanızdaki tüm zafiyetleri tespit edip çözüm raporu sunuyoruz.
- API ve Web Servis Sızma Testi: Mobil uygulamanızın arka planda bağlandığı sunucu ve API altyapısının güvenliğini sağlıyoruz.
- Tersine Mühendislik ve Kod Analizi: Uygulama kaynak kodlarınızın ve kütüphanelerinizin güvenliğini doğruluyoruz.
Mobil uygulamanızın güvenlik seviyesini ölçmek ve mağaza öncesi güvenlik onayınızı almak için CyberTestify uzman ekibiyle hemen iletişime geçin.