OWASP Top 10 Güvenlik Rehberi
Web uygulamalarındaki en kritik güvenlik açıkları ve çözümleri
Merhaba! Bu rehberde, web uygulamalarınızı güvende tutmak için bilmeniz gereken en önemli 10 güvenlik riskini (security risk) anlatacağım. Her bir risk için size basit açıklamalar, gerçek hayattan örnekler ve çözüm önerileri sunacağım. Teknik terimleri İngilizce verip yanında Türkçe açıklamalarını da bulacaksınız.
Broken Access Control (Kırık Erişim Kontrolü)
Kullanıcıların yetkisi olmayan bilgilere erişmesini engelleyememe sorunu
Örnek: Bir kullanıcının başka bir kullanıcının hesap bilgilerini görüntüleyebilmesi
Cryptographic Failures (Kriptografik Hatalar)
Hassas verilerin güvenli şekilde saklanmaması ve iletilmemesi
Örnek: Şifrelerin açık metin (plain text) olarak saklanması
Injection (Enjeksiyon)
Kötü niyetli kodların (malicious code) sisteminize sızması
Örnek: SQL sorgularına zararlı kod ekleme (SQL injection)
Insecure Design (Güvensiz Tasarım)
Uygulama mimarisindeki (application architecture) temel güvenlik eksiklikleri
Örnek: Güvenlik kontrollerinin (security controls) yanlış yerde yapılması
Security Misconfiguration (Güvenlik Yapılandırma Hataları)
Sistem ayarlarının güvenlik açığı oluşturacak şekilde yapılandırılması
Örnek: Varsayılan şifrelerin (default passwords) değiştirilmemesi
Vulnerable Components (Güvensiz Bileşenler)
Kullanılan yazılım parçalarının (software components) güncel olmaması
Örnek: Bilinen güvenlik açıkları (known vulnerabilities) olan eski kütüphaneler
Authentication Failures (Kimlik Doğrulama Hataları)
Kullanıcı girişi (user authentication) ve oturum yönetimindeki zayıflıklar
Örnek: Zayıf şifre politikaları (weak password policies)
Software and Data Integrity (Yazılım ve Veri Bütünlüğü)
Yazılım güncellemelerinin (software updates) ve veri bütünlüğünün (data integrity) korunamaması
Örnek: Güvenlik yamalarının (security patches) yapılmaması
Logging Failures (Günlük Kaydı Hataları)
Güvenlik olaylarının (security events) yeterince kaydedilmemesi ve izlenmemesi
Örnek: Başarısız giriş denemelerinin (failed login attempts) kaydedilmemesi
Server-Side Request Forgery (Sunucu Tarafı İstek Sahteciliği)
Sunucunun istenmeyen kaynaklara (unauthorized resources) erişmesine izin verilmesi
Örnek: Sunucunun iç ağa (internal network) erişim sağlaması