İçeriğe geç
Başlangıç · Sonraki hedefe 100 XP
Son hareketler
Henüz bir öğrenme hareketi yok. İlk derse başlayın.

İNCELE · KARAR VER · DÜZELT

Güvenli kod laboratuvarı

Riskli kodu okuyun ve savunmayı seçin. Senaryolar dış sistemlere bağlanmaz; örnek kodlar çalıştırılmaz.

SENARYO 01

SQL Injection: veriyi sorgudan ayırın

Bir profil sayfası, URL’den gelen kullanıcı kimliğini SQL metnine ekliyor. Hangi değişiklik sorgu yapısını korur?

İNCELENECEK KODRiskli örnek
// Hatalı örnek — çalıştırılmaz
$sql = 'SELECT * FROM users WHERE id = ' . $_GET['id'];
Hangi düzeltmeyi uygularsınız?

SENARYO 02

XSS: çıktıyı bağlamına göre kodlayın

Bir yorum, HTML metin düğümüne doğrudan yazdırılıyor. Güvenli gösterim için hangi yaklaşım uygundur?

İNCELENECEK KODRiskli örnek
// Hatalı örnek — çalıştırılmaz
echo '<p>' . $comment . '</p>';
Hangi düzeltmeyi uygularsınız?

SENARYO 03

IDOR: her nesnede yetkiyi doğrulayın

Oturum açmış bir kullanıcı, belge numarasıyla kayıt getiriyor. Başka bir kullanıcının belgesine erişimi nasıl önlersiniz?

İNCELENECEK KODRiskli örnek
// Hatalı örnek — çalıştırılmaz
SELECT * FROM documents WHERE id = ?
Hangi düzeltmeyi uygularsınız?

Akademi menüsü

Akademide ara

En az 2 karakter yazın.