Her yazılım hatası bir güvenlik açığımıdır?

Her yazılım hatası bir güvenlik açığımıdır?

143

Her yazılım hatası (bug) bir güvenlik açığımıdır (Security bug)? Hata konuşulduğunda, birçok insan bilinçsizce hata ve güvenlik açıkları arasında bir bağlantı kurar. Ancak, hata ve güvenlik açığı, her ikisi de aynı anlama mı gelir? Bu blog gönderisinde, yazılım hataları ve güvenlik açıklarına odaklanmayı amaçlıyoruz.

Bu blog gönderisinde şunları okuyacaksınız:

  • Bug nedir? Ve bu terim neden seçilmiştir?

  • Yazılım hataları (software bugs)

  • Zafiyet, bir tür bug!

  • Hangi zafiyetler daha tehlikelidir ve daha yaygındır?

  • Hangi tür zafiyetler daha yaygındır?

  • Bugbounty’de söz konusu olan açıklar hangileridir?

Bug nedir ve bu terim nasıl seçilmiştir?

Bu terim ilk kez Grace Murray Hopper tarafından kullanılmıştır. Harvard Üniversitesi'nde, Hopper ve diğer bilgisayar uzmanları Mark II isimli bilgisayarın problemlerini incelediklerinde, bilgisayardaki problemin bir böcek nedeniyle olduğunu fark ettiler; bu nedenle, yazılım hatası için ilk kez "Bug" terimini kullandılar.

Yazılım Hataları (Software Bugs):

Herhangi bir yazılım veya bilgisayar programını başlatmak için, öncelikle yazılım tasarımcıları, programın tasarımını ve mimarisini hazırlarlar ve ardından programcılar, yapılan tasarıma dayanarak program yazmaya başlarlar. Bu iki aşamada, tasarımcılar tarafından tasarım sürecinde ve programcılar tarafından program yazma sürecinde hatalar meydana gelebilir. Bu hatalar, program altyapısındaki ve program uygulamasındaki sorunlara neden olabilir ve yazılım sistemlerinde yazılım hatalarının oluşmasına yol açar. Bu yazılım hataları, sistem performansında aksaklıklara neden olabilir; örneğin, sistem yavaşlaması, hesaplama hataları, API'ye erişim sorunları ve yazım hataları gibi.

Zafiyet, bir tür bug’dır!

Güvenlik açığı, bir tür yazılım hatasıdır, ancak her yazılım hatası bir güvenlik açığı değildir. Dışardan gelen kişilerin sızma ve kötüye kullanma olasılığını sağlayan herhangi bir yazılım hatası, bir güvenlik açığı olarak adlandırılır. Bu güvenlik açıkları, siyah şapkalı hackerlar ve yasa dışı sızma girişimcileri tarafından keşfedilip sömürülebilir ve istismar edilebilir. Ayrıca, bu hatalar hackerlara programda yüksek düzeyde erişim sağlayabilir. Bu sistemdeki zayıf noktaları, "zafiyet" veya "Vulnerability" olarak da adlandırırız ve bunun için "güvenlik açığı" terimini de kullanırız.

Hangi zafiyetler daha tehlikeli ve yaygın olarak görülür?

Genellikle zafşyetler, risk şiddeti ve sisteme verebilecekleri zarar potansiyeline göre sınıflandırılır. Güvenlik otoriteleri olan OWASP ve MITRE gibi kuruluşlar düzenli olarak en yaygın zafiyetleri sınıflandırırlar.

Owasp Top 10:

Owasp referansı neredeyse her yıl veya her iki yılda bir, kendi web sitesinde keşfedilen zafiyetlerin sıklığına göre on tehlikeli zafiyet kategorisini yayınlıyor. Owasp tarafından sunulan son liste aşağıdaki gibi:

  • Injection

  • Broken Authentication

  • Sensitive Data Exposure

  • XML External Entities (XXE)

  • Broken Access Control

  • Security Misconfiguration

  • Cross-Site Scripting XSS

  • Insecure Deserialization

  • Using Components with Known Vulnerabilities

  • Insufficient Logging & Monitoring

En yaygın güvenlik açıkları nelerdir?

Yukarıdaki istatistiklere göre, Injection güvenlik açıkları çeşitli güvenlik açığı sıralamasında yüksek seviyeye sahiptir. Bu güvenlik açıkları, sisteme kötü amaçlı kod enjekte edilmesine dayanır. Enjekte edilebilir güvenlik açıklarından Siteler Arası Komut Dosyası Oluşturma veya XSS güvenlik açığı en ünlüsüdür. Güvenlik araştırmaları yapan platformlarından alınan raporlara göre, 2023 yılında karşılaşan güvenlik açıklarının 23'ü XSS açıklarıydı. Information Disclosure ve Improper Access Control – Generik açıklarıda sırasıyla sonraki sıralardadır.

Bugbounty’de söz konusu olan açıklar hangileridir?

Bugbounty bir grup beyaz şapkalı bilgisayar korsanının, güvenlik uzmanının ve güvenlik açığı avcısının, iş güvenliğini artırmak için iş sistemindeki güvenlik açıklarını ve güvenlik hatalarını aradığı ve keşfettiği ve her güvenlik açığı raporu için para ödülü aldığı bir eğilimdir. İki blog yazısında, " bugbounty nedir?" ve "bugbounty ne değildir?" bugbounty hakkında daha fazla bilgi edinebilirsiniz.

Son söz

Genellikle, yazılım hatalarının ve güvenlik açıklarının yanlışlıkla eşanlamlı olduğu bilinir. Bu blog yazısında, yazılım hataları ile güvenlik açıkları arasındaki farkı açıkça anlatmaya çalıştık. Kurum sistemine sızmaya neden olabilecek bir yazılım hatası bir güvenlik açığıdır. Ancak her yazılım hatası bir güvenlik açığı değildir.