Abone Ol

10 Aralık 2024

OWASP Top10 Nedir ? Top 10 Güvenlik Açığı Nelerdir ?

Merhabalar,

 

Özellikle son yazılarımda FortiWeb  (Web Application Firewall ) ürününün kurulumunu ve bu ürünün bir saldırgan bakış açısıyla entegrasyonunu anlatmaktayım. Firmamızda bulunan bir WAF cihazının ise bu atak türlerini engellemesini beklemekteyiz.

Bu yazımda ise  web uygulama güvenliği alanında ücretsiz olarak kullanılabilen makaleler, metodolojiler, belgeler, araçlar ve teknolojiler üreten çevrimiçi topluluk olan OWASP topluluğundan bahsedeceğim. Benim amacım bu konuda genel bilgi vererek farkındalık oluşturmaktır. Detaylı bilgi için vermiş olduğum linkler üzerinden bilgi edinebilirsiniz. Şimdiden keyifli okumalar diliyorum. Detaylı incelemek için OWASP Top10 adresine bakabilirsiniz.

Son bildirimlere göre güncel listenin 2025 yılında yayınlanmasının beklendiği OWASP tarafından bildirilmiştir. (Kaynak : https://owasp.org/www-project-top-ten/ )

 

OWASP Top10 Nedir ?

OWASP kısaca açık web uygulama güvenliği projesidir diyebiliriz. Belirli aralıkları dünyada en yaygın kullanılan 10 web uygulama güvenlik açıklarını yayınlamaktadır.  Uygulama güvenliği konusunda uzmanlaşmış firmalardan gelen 40’tan fazla veri sunumuna ve 500’den fazla kişi tarafından tamamlanan bir endüstri anketine dayalı web uygulamalarındaki güvenlik açıkları listesidir. OWASP Top 10 belirlenirken, yüzlerce kuruluştan toplanan güvenlik açıklarından ve 100.000’den fazla gerçek dünya uygulaması ve API’sinden faydalanılmıştır. 2001 yılında Amerika’da kurulan bir topluluktur.

OWASP 2017 – 2021 Web Güvenlik Açıkları Değişimi

Aşağıdaki 2017 ve 2021 yılları arasında zafiyetlerin değişen sıralamasını görmektesiniz.

Son bildirimlere göre güncel listenin 2025 yılında yayınlanmasının beklendiği OWASP tarafından bildirilmiştir. (Kaynak : https://owasp.org/www-project-top-ten/ )

https://owasp.org/www-project-top-ten/ linki üzerinden herhangi bir güvenlik açığına ait güncel yayınlanan CVE kodu veya örnek atak senaryolarını inceleyebilirsiniz.

1. Broken Access Control (Bozuk Erişim Kontrolü)

Broken Access Control (Bozuk Erişim Kontrolü)

Bozuk Erişim Kontrol güvelik açığı, izni olmayan bir kullanıcının gizli bilgileri görme ihlalidir. Access control, hangi kullanıcıların nereye erişip nereye erişemeyeceğini kontrol etmektedir. Broken access control ise bunun ihlal edilmesi anlamına gelmektedir. Bir kullanıcı istemediğimiz bir veriyi görebilir, düzenleyebilir hatta silebilir.

Broken access control, bir kullanıcının belirli rollerinin dışında yetki kazanarak farklı bir rol gibi davranmasıdır. Bu yolla, başka kişilere ait hassas ve gizli bilgilere erişim sağlayabilmektedir.

2. Cryptographic Failures (Şifreleme Hatası)

Cryptographic Failures (Şifreleme Hatası)

Saklanan veya taşınan verinin güvenlik ihtiyaçlarına karar verilmesi son derece önemlidir. Örneğin, şifre, kredi kartı numarası, sağlık bilgileri, kişisel veriler, ve gizli iş bilgileri extra güvenlik ihtiyacına sahip olabilir. Verinin gerçekten güvenlik ihtiyacı varsa bu durumda veriyi encrypt ederek şifreleyebiliriz.

3. Injection (Enjeksiyon)

Injection (Enjeksiyon)

Uygulama veriyi girdi (input) olarak kabul ederken, bu verinin talimat (instruction) olarak işlenmesine injection denilmektedir. Düşmanca (hostile) veriler kullanıldığında, uygulamamız bu saldırılara savunmasız (vulnerable) kalabilir.

Cross Site Scripting bir tür injection yöntemidir. Uygulama, kullanıcı girdisini nötralize edemez (neutralize). Girdinin güvenli (safe) veya meşru (legitimate) olmasını ve uygun formatta olmasını doğrulayamama durumudur. Bu durumu önlemek için girdiyi kontrol etmeliyiz. Örneğin, kullanıcı tarih bilgisi giriyorsa, girilen tarih bilgisine ait formatı kontrol etmeliyiz eğer uygun değilse validasyon hatası dönmeliyiz. Benzer şekilde sql injection ile veri tabanında injection da yapılabilir.

Insecure Design (Güvensiz Tasarım)

Insecure-Design-Guvensiz-Tasarim

Tasarım ve mimari kusurlarla (flaw) ilgili risklere odaklanmaktadır. Hata mesajları geliştirme fazında çok faydalıdır ancak bu kodlar production’a gönderilirken gereksiz hata mesajları temizlenmelidir. Çünkü içerisinde hassas verileri de içerebilmektedir. Bu hassas mesajları kötü niyetli aktörler rahatlıkla kullanabilmektedirler. Düz metin (plain text) şifreleri de aynı şekilde insecure design kusurudur.

5. Security Misconfiguration (Güvenlik Yanlış Yapılandırma)

Security-Misconfiguration-Guvenlik-Yanlis-Yapilandirma

Eğer uygulamanız güvenlik konfigurasyon süreçleriyle uyumlu (concerted) ve tekrar edilebilir (repeatable) değilse, uygulamanız savunmasız (vulnerable) olabilmektedir.

Uygulamanızın konfigurasyonları katılaştırılarak (hardened) güvenli bir şekilde yapılandırılmalıdır.

Security misconfiguration belirlemek için izlenecek yollar; Birincisi, güvenlik için gerekli her ayar ve konfigurasyonu ölçmek ve belirlemek gerekmektedir. İkincisi, Center for Internet Security (CIS) rehberini kullanmalıyız. Üçüncüsü, ideal olarak CIS rehberini uygulamayı katılaştırmalıyız. Gerçekte ise bu zafiyeti engellemek için, organizasyonunuz için risk tolerans ve gereksinimlerinizi adreslemelisiniz.

6. Vulnerable and Outdated Components (Savunmasız ve Eski Bileşenler)

Vulnerable and Outdated Components (Savunmasız ve Eski Bileşenler)

Eğer uygulamanız içerisindeki bileşenlerin versiyonlarını bilmiyorsanız, o bileşen savunmasız, desteksiz (unsupported) veya tarihi geçmiş (out dated) olabilir. Bu durumda sizin uygulamanızın o bileşene bağımlılığı olduğu için uygulamanız da savunmasız kalmış demektir. Ayrıca, uygulamalarımız içerisinde açık kaynak kodlu bileşenler kullanabiliriz ve bu bileşenlerin bazı versiyonlarında güvenlik açıkları olabilir. Bu güvenlik açıkları, uygulamamızı otomatik olarak savunmasız bırakacaktır.

7. Identification and Authentication Failures (Tanımlama ve Kimlik Doğrulama Hataları)

Identification and Authentication Failures (Tanımlama ve Kimlik Doğrulama Hataları)

Kimlik doğrulama saldırılarına karşı, kullanıcı kimliği doğrulama ve oturum yönetimi önemli bir savunma aracıdır.

8. Software and Data Integrity Failures (Yazılım ve Veri Bütünlüğü Hataları)

8. Software and Data Integrity Failures (Yazılım ve Veri Bütünlüğü Hataları)

Yazılım geliştirme ortamında otomasyon olarak kullandığımız güvenilir olmayan CI/CD pipeline potansiyel risk taşıyabilir. Bir çok uygulama otomatik güncelleme fonksiyonuna sahiptir. Bu otomatik güncellemenin nereden yapıldığı ve yeterli doğrulama yöntemine sahip olup olmadığı önemlidir. Çünkü CI/CD pipeline içerisine istenmeyen yeni bir iş akışı eklenebilir. Kötü niyetli kişiler otomatize edilmiş CI/CD pipeline içerisine bir saldırıda bulunabilir ve kendi işlemini araya ekleyebilirler. Bu durumda sizin uygulamanız da savunmasız hale gelmiş olur.

9. Security Logging and Monitoring (Güvenlik Loglama ve İzleme)

9. Security Logging and Monitoring (Güvenlik Loglama ve İzleme)

Monitor ve loglama yapılmadan ihlaller (breaches) tesbit edilemez. Loglama, monitoring ve alarm mekanizmaları sistem sızmalarını tesbit etmek ve güvenlik ekibini bu doğrultuda uyarmak için kullanılmaktadır. Bu sayede, güvenlik ekipleri, saldırganın sisteme daha fazla hasar vermesini engelleyerek saldırganın kimliğini belirleyebilirler.

10. Server Side Request Forgery (SSRF) (Sunucu Tarafı İstek Sahteciliği)

Server Side Request Forgery (SSRF)

SSRF kusurunda (flaw), saldırgan hazırlanmış (crafted) bir isteği beklenmeyen bir hedefe göndermeye zorlar. Saldırgan isteklerini sanki madur kimse’nin (victim) sunucusu gibi rol yaparak gönderir. Çünkü, sunucu güvenilir bir varlıktır. Bu saldırı, hassas ve yönetimsel fonksiyonlara erişmekle sonuçlanabilir. Bu saldırıdan kurtulmanın en önemli yolu meşru (legitimate) dış kaynaklardan sadece bazı ip addreslerine ve host isimlerine izin verirken diğerlerine izin vermemektir.

Yazılarımdan ilk siz haberdar olmak istiyorsanız TELEGRAM Duyuru Kanalıma Katılabilirsiniz.

Sağlıklı ve Güvenli Günler Dilerim.

İlk yorumu bırak


Ben Erdinç TANDOĞAN, yaklaşık 2 yılı siber güvenlik danışmanlık firmalarında olmak üzere 5 yıldır siber güvenlik sektöründe çalışıyorum. Şuan sizinde ziyarette bulunduğunuz yılda 500.000 Google gösterimi olan siberdinc.com blog sitemde Türkçe kaynakların çoğalmasına destek sağlıyorum.

Etiketler

Bunu Paylaş:

Siberdinc Telegram Topluluğuna Katıl!

Türkiye'nin en aktif siber güvenlik platformunda yerini al! Güncel etkinlikler, staj imkanları ve ücretsiz eğitim fırsatlarından ilk sen haberdar ol.