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
Report
Transcript 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