Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
OWASP A01: Broken Access Control (2) — Path Traversal, CORS ve SSRF
Dosya adını istemciden alan bir indirme endpoint'i, her origin'i geri yazan bir CORS policy'si ve verilen URL'ye istek atan bir kapak indirme kodu. Üç zafiyetli kalıbı inceleyip kanonik yol kontrolü, origin'leri tek tek listeleyen bir policy ve allowlist, kapalı redirect ve ConnectCallback ile IP kontrolü yapan bir HttpClient ile kapatıyor; düzeltilmiş kodun kötü girdiyi nasıl reddettiğini lab'da görüyoruz.
OWASP A01: Broken Access Control (1) — IDOR, Admin Endpoint'leri ve ASP.NET Core'da Yetkilendirme
Giriş yapmış Alan, sipariş numarasını değiştirerek Grace'in siparişini okuyor ve rol kontrolü unutulmuş admin endpoint'inden bütün kullanıcıları alıyor. İki açığı lab'da gösterip policy'ler, IAuthorizationService ile resource-based authorization ve fallback policy ile deny by default yaklaşımıyla kapatıyor, 403 ile 404 arasındaki seçimi ve .NET 10'un cookie redirect değişikliğini konuşuyoruz.
Güvenlik Laboratuvarı: ASP.NET Core 10 ile Bookstore API ve HTTP'yi curl ile Okumak
Serinin geri kalanında kullanacağımız lab'ı kuruyoruz: SQLite kullanan bir ASP.NET Core 10 minimal API. curl -i ile method, status code, header ve cookie'leri güvenlik gözüyle okuyor, aynı hatanın Development ve Production'da istemciye nasıl farklı döndüğünü, HTTPS geliştirme sertifikasını ve lab kurallarını görüyoruz.
Web Güvenliğine Giriş: OWASP Top 10:2025 Nedir, Nasıl Okunur?
Güvenlik neden sonradan eklenen bir özellik olamaz? Başka bir müşterinin siparişini döndüren küçük bir endpoint'le başlıyor, CIA üçlüsünü ve attack surface'i, OWASP'ı ve Top 10'un neden bir standart değil farkındalık belgesi olduğunu, listenin veri ve anketle nasıl hazırlandığını ve 2025 listesinin on kategorisini görüyoruz.