Otomatik mobil tarama: MobSF, semgrep ve bulgu ayıklama
Otomatik araçlarla APK ve IPA taramayı, raporu okumayı, yanlış alarmları ayıklamayı, kendi kurallarını yazmayı ve taramayı ekibin iş akışına bağlamayı öğrenirsin.
Seviye 301 · 22 ders · 18 pratik lab
Dersler
Tarayıcıyı tanımak
- Otomatik tarama neyi bulur, neyi bulamaz
- MobSF ile statik tarama: yükleme ve rapor bölümleri
- MobSF REST API ile taramayı betiklemek
- Bir IPA'yı taramak: plist, yetkilendirme ve ikili bulguları
- Kısa görev: bir APK'yı tara ve rapordaki en önemli beş bulguyu seç
Bulguları ayıklamak
- Önem derecesi ve bağlam: aynı bulgu her uygulamada aynı değildir
- Yanlış alarmı ayıklamak: bulguyu kodda doğrulamak
- Bulguları MASVS maddelerine eşlemek
- Tekrarları birleştirmek ve temel çizgi tutmak
- Kısa görev: yirmi bulguluk bir raporu doğru, yanlış alarm ve bilgi diye ayır
Kural yazmak
- Kotlin ve Java için semgrep kuralları
- Swift için semgrep kuralları
- apkleaks ve desenlerle sır taraması
- Android lint ile güvenlik denetimleri
- Kuralı sınamak: yakalaması ve yakalamaması gereken örnekler
- Kısa görev: günlüğe belirteç yazan kodu yakalayan bir semgrep kuralı yaz
İş akışına bağlamak
- Taramayı CI'a eklemek: eşikler ve başarısız derleme
- SARIF ve rapor biçimleri
- İki sürümü karşılaştırmak: yeni gelen izin ve SDK'lar
- Bulguyu kapanışa kadar izlemek: kayıt, sahip, yeniden tarama
- Kısa görev: iki sürüm arasındaki tarama farkını çıkar ve yeni riski bul
Bitirme
- Bitirme görevi: üç uygulamalık bir portföy için tarama düzeni kur ve ilk raporu yaz
Pratik lablar
- Bir APK'yı MobSF ile tara ve puanı oku: Lab'daki tarayıcıya bir APK yükle, güvenlik puanını ve bulgu sayılarını not et.
- Taramayı REST API ile betikle: Yükleme, tarama ve JSON rapor indirme adımlarını tek betikte birleştir.
- Bir IPA ile bir APK'nın raporlarını karşılaştır: Aynı uygulamanın iki platform taramasını yan yana koy ve yalnızca birinde çıkan bulguları açıkla.
- Rapordaki en önemli beş bulguyu seç: Yüksek önemli bulguları ayır ve her biri için bir cümlelik gerekçe yaz.
- Yanlış alarmı kodda doğrulayarak ayıkla: Tarayıcının işaretlediği üç bulguyu jadx çıktısında doğrula ve geçersiz olanı gerekçesiyle kapat.
- Yirmi bulguluk raporu ayıkla ve MASVS'e eşle: Bulguları doğru, yanlış alarm ve bilgi diye ayır, doğruları MASVS maddelerine eşleyip tek tabloya dök.
- Hazır bir semgrep kuralını çalıştır: Kotlin projesinde güvensiz rastgele sayı kullanımını arayan kuralı çalıştır ve sonuçları oku.
- Günlüğe belirteç yazan kodu yakalayan kural yaz: Kuralı yaz, yakalaması ve yakalamaması gereken örneklerle sına.
- Swift için sertifika doğrulamasını atlayan kodu yakala: Güven değerlendirmesini koşulsuz kabul eden temsilci kodunu bulan bir Swift kuralı yaz ve üç örnekle doğrula.
- apkleaks ile bir APK'da sır ara: Aracı çalıştır ve bulunan desenleri listele.
- Kuruma özel anahtar deseni ekle: Göktaşı Yazılım'ın iç servis anahtarı biçimini yakalayan özel deseni ekle ve sına.
- Bulunan sırları geçerlilik ve etkiye göre sınıflandır: On iki eşleşmeyi gerçek sır, herkese açık tanımlayıcı ve yanlış alarm diye ayır, gerçek olanlar için yenileme adımlarını yaz.
- Tarama sonucunu SARIF olarak dışa aktar: semgrep çıktısını SARIF biçiminde üret ve alanlarını incele.
- Eşiği aşan taramada derlemeyi durdur: Yüksek önemli bulgu varsa sıfırdan farklı kodla çıkan bir kapı betiği yaz ve iki APK ile sına.
- Temel çizgi tutarak yalnızca yeni bulguları raporla: İlk taramayı temel çizgi olarak kaydet ve sonraki taramada yalnızca yeni çıkanları listeleyen betiği yaz.
- İki sürümün izin farkını çıkar: İki APK'nın izin listesini karşılaştır ve yeni eklenen izni bul.
- Yeni eklenen SDK'yı ve getirdiği riski bul: İki tarama raporunu karşılaştır, yeni kütüphaneyi ve onunla gelen izinleri raporla.
- Üç uygulamalık portföy için tarama düzeni kur: Mavikaya Lojistik'in üç uygulamasını tarayan, sonuçları tek özet tabloda toplayan betiği yaz ve ilk raporu teslim et.
Kurs hakkında
Otomatik araçlarla APK ve IPA taramayı, raporu okumayı, yanlış alarmları ayıklamayı, kendi kurallarını yazmayı ve taramayı ekibin iş akışına bağlamayı öğrenirsin.
Ne öğreneceksin
- Tarayıcıyı tanımak
- Bulguları ayıklamak
- Kural yazmak
- İş akışına bağlamak
- Bitirme
Ön koşullar
Aynı yolun 101 ve 201 düzeyindeki konularına hâkim olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 301 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.