İş mantığı açıkları
Tarayıcıların bulamadığı, geliştiricinin varsayımlarından doğan açıkları iş akışını haritalayarak bulur; sunucu tarafı durum makinesi, kötüye kullanım testleri ve iş metrikleriyle kapatıp izlersin.
Seviye 301 · 15 ders · 13 pratik lab
Dersler
Mantık açığı nedir
- Tarayıcıların bulamadığı açıklar: varsayımların kırılması
- İş akışını haritalamak: adımlar, durumlar ve kurallar
- Geliştiricinin varsayımlarını listelemek
- Kısa görev: bir ödeme akışının durum makinesini çiz
Tipik desenler
- Fiyat ve miktar oynamaları: negatif sayılar ve yuvarlama
- Adım atlama: ödeme yapmadan onay sayfasına
- Kupon, puan ve hediye kartlarının kötüye kullanımı
- Sınırların aşılması: kota, deneme hakkı ve ücretsiz deneme
- İstemciden gelen kararlara güvenmek
- Kısa görev: lab mağazasında üç mantık açığını kanıtla
Düzeltmek ve izlemek
- Sunucu tarafı durum makinesi ve değişmezler
- Kötüye kullanım senaryolarını teste dönüştürmek
- İş metrikleriyle anormallik tespiti: iadeler, kuponlar ve siparişler
- Dolandırıcılık ekibiyle çalışmak: güvenlik ve iş birimi
- Bitirme görevi: bir e-ticaret akışındaki mantık açıklarını bul, kapat ve izleme kuralı yaz
Pratik lablar
- Ödeme akışının durum makinesi: Lab mağazasının sepetten onaya giden adımlarını durum makinesi olarak çiz ve izin verilmemesi gereken geçişleri işaretle.
- Geliştiricinin varsayımlarını listele: İade özelliğinin kodunu ve arayüzünü inceleyerek sunucunun doğrulamadığı beş varsayımı bul ve test senaryosuna çevir.
- İstemciden gelen indirim kararı: İndirim oranının istemciden gönderildiğini kanıtla ve hesaplamayı sunucuya taşı.
- Akış haritasından kötüye kullanım senaryoları: Hediye kartı akışı için haritadan on kötüye kullanım senaryosu türet, üçünü lab'da doğrula ve düzelt.
- Negatif miktarla düşen sepet tutarı: Sepete negatif miktar eklenince toplamın düştüğünü kanıtla ve miktarı sunucuda doğrula.
- Ödemeden onay sayfasına atlamak: Ödeme adımı atlanarak sipariş onayına ulaşıldığını kanıtla ve onayı ödeme durumuna bağla.
- Aynı kuponu üst üste uygulamak: Tek kullanımlık kuponun farklı yazımlarla tekrar uygulanabildiğini göster ve kuponu normalleştirip sipariş başına sınırla.
- Yuvarlama farkından kazanç: Para birimi dönüşümündeki yuvarlamanın küçük tutarlarda kazanç ürettiğini lab'da göster ve ondalık türle düzelt.
- Ücretsiz deneme hakkını yenilemek: Aynı kullanıcının küçük değişikliklerle deneme hakkını tekrar aldığını kanıtla ve hakkı doğrulanmış kimliğe bağla.
- İade tutarı sipariş tutarını aşıyor: Kısmi iadelerin toplamının sipariş tutarını aşabildiğini göster ve değişmez kuralı sunucuya ekle.
- Kötüye kullanım senaryosunu teste çevir: Kapattığın üç mantık açığı için iş kuralını doğrulayan otomatik testler yaz ve kasıtlı gerilemeyi yakaladığını göster.
- Kupon ve iade metriklerinde anormallik: Sipariş verisinde kupon ve iade oranı sıra dışı olan hesapları bulan bir sorgu yaz ve uyarı eşiğini belirle.
- E-ticaret akışında mantık denetimi: Kurgusal Miraluna Çiçek mağazasının sepet, kupon ve iade akışındaki mantık açıklarını bul, kapat ve izleme kuralı yaz.
Kurs hakkında
Tarayıcıların bulamadığı, geliştiricinin varsayımlarından doğan açıkları iş akışını haritalayarak bulur; sunucu tarafı durum makinesi, kötüye kullanım testleri ve iş metrikleriyle kapatıp izlersin.
Ne öğreneceksin
- Mantık açığı nedir
- Tipik desenler
- Düzeltmek ve izlemek
Ö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 masaüstünde geçer; araçlar pencereli arayüzleriyle hazırdır. Kurulum gerekmez, bilgisayar ekranı önerilir.
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.