Öğrenme Modu
Öğrenme Modu, simüle edilmiş bir tarayıcı ortamında interaktif adım adım saldırı senaryoları sunar. Güvenlik açıklarının nasıl istismar edildiğini ve nasıl önleneceğini anlamak için gerçek dünya saldırı zincirlerinde yürüyün.
Nasıl Çalışır
Öğrenme Modu, interaktif bir saldırı senaryosunu takip ettiğiniz rehberli bir bölünmüş ekran arayüzü kullanır:
Sol Panel — Senaryo Rehberi
Adım adım talimatlar, senaryo bağlamı ve tüm saldırı zinciri boyunca size rehberlik eden bir anlatıcı. Her adım tam olarak ne yapmanız gerektiğini söyler.
Sağ Panel — Simüle Edilmiş Ortam
Eylem gerçekleştirdiğiniz tamamen interaktif bir tarayıcı, mobil cihaz veya proxy simülasyonu — düğmelere tıklayın, formları doldurun ve yanıtları gerçek zamanlı gözlemleyin.
Öğrenme Modu Arayüzü
Bir senaryo sırasında bölünmüş ekran öğrenme modunun nasıl göründüğü:
URL'deki id'i /profile/1'den /profile/2'ye değiştirin. Uygulamanın ikinci kullanıcının verisini sahiplik kontrolü yapmadan sunduğuna dikkat edin.
params.id'ye güveniyor.Senaryo Yapısı
Her senaryo, gerçek dünyadaki güvenlik değerlendirmelerini yansıtan tutarlı bir beş aşamalı kalıbı izler:
Simüle Edilmiş Ortamlar
Öğrenme Modu, güvenlik açığı kategorisine bağlı olarak üç tür simülasyon kullanır:
| Ortam | Kullanıldığı Yer | Açıklama |
|---|---|---|
| SimBrowser | Web güvenlik açıkları | URL çubuğu, gezinme, formlar ve dinamik yanıtlarla tamamen interaktif bir web tarayıcısı simülasyonu. XSS, CSRF, SQL Injection ve diğer web saldırıları için kullanılır. |
| SimMobilePhone | Mobil güvenlik açıkları | Yerel UI öğeleri, durum çubuğu ve dokunmatik etkileşimlerle iOS ve Android cihaz simülasyonu. Güvensiz depolama, WebView enjeksiyonu ve sertifika sabitleme senaryoları için kullanılır. |
| SimWebProxy | API güvenlik açıkları | Ham API çağrılarını, başlıkları ve payload'ları gösteren HTTP istek/yanıt proxy'si. BOLA, mass assignment, kırık kimlik doğrulama ve diğer API güvenlik senaryoları için kullanılır. |
İlerleme Takibi
Her senaryo, kaldığınız yerden tam olarak devam edebilmeniz için ilerlemenizi takip eder:
| Metrik | Açıklama |
|---|---|
| Mevcut adım / Toplam adım | Senaryodaki konumunuzu gösterir — örn. "14 adımdan 8." |
| Tamamlanma durumu | in_progress veya completed |
| Devam etme desteği | Bir senaryoyu kapatıp daha sonra geri dönebilirsiniz — son adımınızdan devam eder |
Senaryo İlerlemesi
Senaryo listeniz mevcut ilerlemenizi bir bakışta gösterir:
Rehberli Bir Senaryonun Kod İnceleme Görevinin Öğretemediği Şeyi Ne Zaman Öğrettiği
Pratik Modu'undaki bir kod inceleme görevi size kendi içinde tam bir parçacık verir. Bu, güvenlik açıklarının satır bazında nasıl göründüğünün adil bir temsilidir, ancak çoğu gerçek güvenlik açığı tek bir satırda değildir. Dosyalar arasında, servisler arasında veya istemci ile sunucu arasındaki sınırda yaşarlar. IDOR bunun klasik örneğidir: kötü kod veritabanı sorgusu değil, yığında üç katman yukarıdaki eksik yetkilendirme kontrolüdür. Öğrenme Modu, tüm uygulamayı önünüze koyduğu için bu boşluğu gösterebilen formattır.
İstismarın oturum durumuna, çok adımlı istek akışlarına veya saldırgan kontrollü zamanlamaya bağlı olduğu herhangi bir güvenlik açığı için de aynı şey geçerlidir. Saklı XSS yalnızca payload bir kullanıcıdan diğerine yolculuk ettiğinde önemlidir. Mass assignment yalnızca model katmanı, asla açığa çıkarmaması gereken istek gövdesi anahtarlarına güvendiğinde önemlidir. Bir parçacık bu zinciri gösteremez. Bir senaryo gösterebilir, çünkü giriş yaparsınız, eylem gerçekleştirirsiniz, yanıtları gözlemlersiniz ve bir güvenlik açığının gerçek zamanlı olarak bir ihlale dönüşmesini izlersiniz. Yukarıdaki beş aşamalı senaryo yapısı tam olarak bu yay etrafında tasarlanmıştır.
Zaten Kıdemliyseniz Öğrenme Modunu Nasıl Kullanmalısınız
Kıdemli geliştiriciler ve güvenlik mühendisleri bazen Öğrenme Modu'nu atlar çünkü anlatıcı ve adım adım talimatlar yavaş hissettirir. Bu, onlarca kez istismar ettiğiniz güvenlik açığı sınıfları için adildir. Kıdemli öğrenciler için Öğrenme'nin doğru kullanımı hedefe yönelik olmalı, tamamlayıcı değil. Girişi gözden geçirin, Keşif'i gözden geçirin ve yalnızca saldırı yüzeyi tanıdık olmadığında İstismar'da yavaşlayın. Hiç iOS kodu yazmamış bir backend mühendisi, aynı kategorideki yirmi Pratik görevinden tek bir mobil güvensiz depolama senaryosundan daha fazlasını öğrenir, çünkü tanıdık olmayan kısım kavram değil, platformdur.
Diğer kıdemli kullanım durumu, dil eksiklerini kapatmaktır. İyi tanımadığınız bir teknoloji yığınını kullanan bir ekibe katıldıysanız, o yığındaki Öğrenme senaryoları, inceleyeceğiniz uygulama biçiminin ve saldırı yüzeyinin hızlı bir turu olarak ikiye katlanır. Bunu, yalnızca dokümantasyon okumaktan daha hızlı yeni bir kod tabanına ısınmak için Teknoloji Tercihleri'ndan teknoloji yığınına uygun Pratik ile birleştirin.
Özel Kurslar, Öğrenme ve Pratiği bir araya getirir
Kurum yöneticileri, Öğrenme senaryolarını ve Pratik konularını tek bir derlenmiş yola karıştıran adlandırılmış diziler oluşturabilir — oluşturma akışı için Özel Kurslar'a bakın. Size özel bir kurs atandığında, yerleşik bir kursmuş gibi /learn/custom/<courseId> adresinde tüketirsiniz ve öğeler yöneticinin tanımladığı sırayla görünür. Pratik öğeleri yine Pratik Modu'nda olduğu gibi puan ve XP ödülü verir; Öğrenme öğeleri yine burada olduğu gibi senaryo başına ilerlemeyi yazar.