OWASP İLK 10 ZAFİYET Web Güvenlik Topluluğu OWASP-Türkiye Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the.
Download ReportTranscript OWASP İLK 10 ZAFİYET Web Güvenlik Topluluğu OWASP-Türkiye Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the.
OWASP İLK 10 ZAFİYET Web Güvenlik Topluluğu OWASP-Türkiye Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP Foundation http://www.owasp.org Uygulamanın kullanıcıdan veri alması ve bunları herhangi bir kodlama ya da doğrulama işlemine tabi tutmadan sayfaya göndermesi ile oluşur. Kurbanın tarayıcısında oturum bilgilerinin çalınmasına, web sayfasının tahrif edilmesine, solucan yüklenmesine, v.b. sebep olur. CROSS SITE SCRIPTING - XSS 2 XSS – Korunma Gelen verilerin doğrulanması Çıkan verilerin kodlanması (HTML/URL Kodlama) Sayfa kodlamalarının belirtilmesi (UTF8/ISO-8859-9) Kara liste yöntemlerinin kullanılmaması Varsayılan hata çıktılarının izlenmesi Kodlama standartlarının yanlış kullanılmaması 3 Enjeksiyon, kullanıcı tarafından alınan verinin yorumlayıcıya (interpreter) komut ya da sorgunun bir parçası olarak gönderilmesi durumda oluşur. Özellikle SQL enjeksiyonuna web sitelerinde sıkça rastlanmaktadır. ENJEKSİYON HATALARI 4 Enjeksiyon – Korunma Gelen verilerin doğrulanması Parametrelenmiş sorgu API’larının kullanılması Dinamik sorgu tiplerinin kullanılmaması Minimum hak prensibinin uygulanması Detaylı hata mesajlarının önlenmesi Kodlama standartlarının yanlış kullanılmaması 5 Zararlı dosya çalıştırılması, kullanıcıdan dosya adı veya dosya kabul eden PHP, XML veya diğer uygulama çatılarını etkileyebilir. Özellikle PHP uygulamalarında RFI saldırılarına sıkça rastlanmaktadır. ZARARLI DOSYA ÇALIŞTIRMA 6 Zararlı Dosya Çalıştırma – Korunma Dolaylı nesne referans haritası kullanılması Gelen verilerin doğrulanması Sunucular için güvenlik duvarı kuralları uygulanması Sunucularda chroot kullanılması PHP yapılandırma sıkılaştırmalarının yapılması 7 Doğrudan Kaynak Referansı; geliştirici dosya, dizin, veritabanı kaydı gibi bir bilgiyi URL veya form parametresi olarak alıp bunu uygulamaya referans olarak tanımladığı zaman oluşur. Böylece saldırgan referansı manipüle ederek yetkisi olmayan nesnelere erişebilir. GÜVENSİZ DOĞRUDAN KAYNAK REFERANSI 8 Kaynak Referansı – Korunma Hassas nesne referanslarının gösterilmemesi Hassas nesne referanslarının doğrulanması Referans verilmiş bütün nesnelerin yetkilendirme kontrollerinin yapılması 9 CSRF saldırıları; sisteme giriş yapmış kurbana ait tarayıcının, aynı web uygulamasına sonradan saldırganın yararına olacak, özel olarak hazırlanmış ve önceden doğrulanmış bir istek göndermesine sebep olur. CSRF, saldırdığı web uygulaması kadar güçlü olabilir. SİTELER ÖTESI İSTEK SAHTECİLİĞİ CSRF 10 CSRF – Korunma Uygulamalarda XSS açıklıklarının yok edilmesi Her form ve URL’ye özel tokenlar konulması Hassas veri transferlerinde veya işlemlerinde yeniden kimlik doğrulaması istenmesi Hassas veri transferlerinde veya işlemlerinde GET metodunun kullanılmaması Sadece POST metoduna güvenilmemesi 11 Uygulamalar istemeden de olsa yapılandırmaları, iç işleyişleri hakkında bilgi sızdırabilir veya uygulama sorunlarından dolayı güvenlik ihlallerine yol açabilirler. Saldırganlar, bu zayıflıkları sonradan daha ciddi saldırılar gerçekleştirmek veya önemli bilgileri çalmak için kullanabilir. BİLGİ İFŞASI VE YETERSİZ HATA YÖNETİMİ 12 Bilgi İfşası – Korunma Bütün geliştirici takımının hata yönetiminde aynı yolu izlediğine emin olunması Bütün katmanlardan gelen detaylı hata mesajlarına izin verilmemesi / kısıtlandırılması Varsayılı hata mesajlarında HTTP 200 dönmesinin sağlanması 13 Hesap bilgileri ve oturum anahtarları çoğu zaman düzgün olarak korunmamaktadır. Saldırganlar şifreleri ve kimlik denetimi anahtarlarını kullanıcının diğer bilgilerini elde etmek için kullanabilirler. YETERSİZ KİMLİK DOĞRULAMA OTURUM YÖNETİMİ 14 Kimlik Doğrulama / Oturum Yönetimi Korunma Sunucunun sağladığı oturum yönetimi mekanizmalarını kullanın Önceden verilmiş, yeni veya hatalı oturum bilgilerinin kabul edilmemesi Özel cookielerin kimlik doğrulama ve oturum yönetimi işlemleri için kullanılmaması Kimlik doğrulama sonrası yeni bir cookie oluşturun 15 Kimlik Doğrulama / Oturum Yönetimi Korunma Zaman aşımı kontrollerinin uygulanması Şifre değişiminde eski şifrenin sorulması Sahtesi üretilebilecek bilgileri kimlik doğrulamada güvenmeyin (Referer, IP, DNS isimleri) 16 Web uygulamaları verilerin ve bilgilerin güvenliğini sağlamak için nadiren kriptografik fonksiyonları kullanırlar. Saldırganlar zayıf korunan veriyi, kimlik hırsızlığı ve kredi kartı dolandırıcılığı gibi diğer suçları işlemek için kullanırlar. GÜVENSIZ KRİPTOĞRAFİK DEPOLAMA 17 Güvensiz Kriptoğrafi – Korunma Kişisel kriptoğrafik algoritmalar kullanılmaması Zayıf kriptoğrafik algoritmaların kullanılmaması Private key’lerin dikkatlice saklanması Arka uç hassas bilgilerinin dikkatlice saklanması Gerekmeyen bilginin kesinlikle saklanmaması 18 Uygulamalar sıklıkla hassas bağlantıların korunması gerektiğinde ağ trafiğini şifrelemede başarısız olurlar. Şifreleme (genellikle SSL) bütün bağlantıların kimlik doğrulaması için özellikle hem internet erişimi olan web sayfaları için hem de sunucu uygulamaları için kullanılmak zorundadır. GÜVENSİZ İLETİŞİM 19 Güvensiz İletişim – Korunma Kimlik doğrulama ve diğer hassas bilgilerin işlendiği trafiklerde SSL kullanılması Arka uç sistemlerdeki bağlantılarda SSL kullanılması 20 Uygulamalar hassas fonksiyonelliklerini korumak için çoğunlukla linkleri veya URL’leri yetkilendirilmemiş kullanıcılara göstermemeyi seçerler. Saldırganlar bu URL’lere doğrudan erişerek, yetkisi olmayan işlemleri gerçekleştirmek için bu zayıflığı kullanabilirler. YETERSİZ URL ERİŞİMİ KISITLAMA 21 Yetkisizi URL Erişimi – Korunma Yetkilendirme matrisinin güçlü bir şekilde kullanılması Uygulamaya penetrasyon testi gerçekleştirilmesi Gizli URL’lere ve HTML parametrelere güvenilmemesi Sunucunun anlamadığı bütün dosya uzantılarına önlemesi Yamaların ve virüs korumasının yenilenmesi 22 webguvenligi.org owasp.org 23