APK'lerin Statik Analizi
Tersine derleme
APK'lerin Statik Analizi, CoddyKit'te ücretsiz bir Ethical Hacking Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Ethical Hacking Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ethical Hacking Academy kursu toplamda 4 dersten oluşur.
Statik APK Analizi
Bir APK'nın statik analizi, onu çalıştırmadan kodunu ve kaynaklarını incelemek anlamına gelir. Amaç, derlenmiş DEX'ten okunabilir kaynak kodu benzeri bir kod elde etmektir.
Bu işlem, sabit kodlanmış gizli bilgileri, mantık hatalarını ve uygulamanın gerçek davranışını ortaya çıkarır.
apktool ile Kod Çözme
apktool, bir APK'yı okunabilir kaynaklara ve smali'ye (DEX bayt kodunun insanlar tarafından okunabilir biçimi) geri çözer. Ayrıca ikili AndroidManifest.xml dosyasının kodunu da çözer.
Manifesti okumak ve değiştirilmiş uygulamaları yeniden paketlemek için kullanın.
apktool d app.apk -o app_srcSmali Kodu
Smali, Dalvik bayt kodu için assembly benzeri dildir. Ayrıntılıdır; ancak örneğin bir karşılaştırmayı değiştirerek bir denetimi atlamak gibi hassas düzenlemeler yapmanıza olanak tanır.
Uygulamanın davranışını değiştirmek için smali'yi yamalayabilir ve APK'yı yeniden oluşturabilirsiniz.
const/4 v0, 0x1 # force a boolean to truejadx ile Java Elde Etme
jadx, DEX'i doğrudan okunabilir Java'ya decompile eder. GUI sürümü olan jadx-gui, sınıflara göz atmanıza, dizelerde arama yapmanıza ve yöntem çağrılarını takip etmenize olanak tanır.
Bir uygulamanın mantığını anlamanın en hızlı yoludur.
jadx-gui app.apkdex2jar Yolu
Alternatif bir işlem hattı, dex2jar ile DEX'i JAR'a dönüştürür ve ardından dosyayı JD-GUI gibi bir Java decompiler'ında açar.
jadx genellikle daha temiz çıktı üretir; ancak jadx zorlandığında dex2jar kullanışlıdır.
d2j-dex2jar app.apk -o app.jarGizli Bilgileri Arama
Dekompile edilmiş kod çoğu zaman sabit kodlanmış gizli bilgiler içerir: API anahtarları, belirteçler, şifreleme anahtarları ve arka uç URL'leri.
Kaynak kodunda password, secret, apikey ve http gibi anahtar sözcükleri arayın. Geliştiriciler derlenmiş kodun bunları gizlediğini yanlış varsayar.
grep -ri "api_key\|secret\|password" app_src/Manifesti İnceleme
Manifestin kodu çözüldüğünde şunları kontrol edin:
- Dışa aktarılmış bileşenler.
android:debuggable="true".android:allowBackup="true"(veriler yedekleme yoluyla çıkarılabilir).- Tehlikeli veya özel izinler.
Ağ Güvenliği Yapılandırması
Ağ Güvenliği Yapılandırması, TLS davranışını denetler. şifresiz trafiğe izin veren veya kullanıcı tarafından eklenen sertifika yetkililerine güvenen bir yapılandırma, aktarım güvenliğini zayıflatır.
Bu tür ayarlar, trafiğin araya alınmasını (ileride ele alınacak bir konu) çok daha kolaylaştırır.
<application android:usesCleartextTraffic="true">MobSF ile Otomatik Tarama
MobSF (Mobil Güvenlik Çerçevesi), statik analizi otomatikleştirir. Bir APK yüklediğinizde izinleri, sabit kodlanmış gizli bilgileri, güvensiz ayarları ve risk puanını raporlar.
Ön değerlendirme için harikadır; ancak elle yapılan inceleme yine de daha derin sorunları ortaya çıkarır.
Yeniden Paketleme ve Yeniden İmzalama
smali'yi yamaladıktan sonra apktool ile yeniden derleyin ve APK'yı yeniden imzalayın (Android, imzasız uygulamaları reddeder). apksigner veya uber-apk-signer gibi araçlar imzalama işlemini gerçekleştirir.
Bu iş akışı, kurcalama testlerinin ve çalışma zamanı değişikliklerinin temelini oluşturur.
apktool b app_src -o patched.apk
uber-apk-signer -a patched.apkDerin Bağlantılar ve WebView'lar
deep link amaç filtrelerini ve WebView kullanımını arayın. Yanlış yapılandırılmış derin bağlantılar, saldırganın kontrol ettiği verilerle dahili ekranları açabilir.
JavaScriptInterface kullanan veya güvenilmeyen içerik yükleyen WebView'lar, uygulamayı kod ekleme ve veri hırsızlığına açık hâle getirebilir. Her ikisi de statik incelemelerde sık rastlanan bulgulardır.
Hızlı Kontrol
Bir APK'dan doğrudan okunabilir Java sağlayan aracı hatırlayın.
Özet
Artık statik APK analizini anlıyorsunuz:
- smali ve kodu çözülmüş bildirim için apktool; okunabilir Java için jadx kullanın.
- sabit kodlanmış gizli bilgileri arayın ve dışa aktarılmış, hata ayıklanabilir ve yedeklenebilir işaretleri görmek için bildirimi inceleyin.
- Ağ Güvenliği Yapılandırmasını kontrol edin; otomatik ön inceleme için MobSF kullanın.
- smali'yi yamalayın, ardından kurcalamayı test etmek için yeniden derleyip yeniden imzalayın.
Sırada Frida ile çalışan bir uygulamayı değiştireceksiniz.
Sıkça Sorulan Sorular
“APK'lerin Statik Analizi” dersi ücretsiz mi?
Evet — “APK'lerin Statik Analizi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Ethical Hacking Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ethical Hacking Academy kursu toplamda 4 dersten oluşur.
“APK'lerin Statik Analizi” dersinde ne öğreneceğim?
Tersine derleme Ethical Hacking Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Ethical Hacking Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Ethical Hacking Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“APK'lerin Statik Analizi” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Ethical Hacking Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Ethical Hacking Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Android Uygulama Yapısı
- APK'lerin Statik Analizi
- Frida ile Dinamik Analiz
- Güvensiz Depolama ve İletişim