Güvenlik açıkları nasıl oluşur/neden kaynaklı oluşur? bunları biliyor muydunuz?
Güvenlik açıkları; yazılım ve donanım kusurudur. Öncelikle bu açıkların meydana gelmesinde rolü olan bu kusurları inceleyip sonrasında bu kusurlardan meydana gelen güvenlik açığı türlerini inceleyeceğiz.
Güvenlik Açıkları
Güvenlik açıkları her türlü yazılım veya donanım kusurudur. Bir güvenlik açığı hakkında bilgi edinildikten sonra, kötü niyetli kullanıcılar bu güvenlik açığından yararlanmaya çalışır. Bir exploit , bilinen bir güvenlik açığından yararlanmak için yazılmış bir programı tanımlamak için kullanılan terimdir. Bir güvenlik açığına karşı bir istismar kullanma eylemine saldırı denir. Saldırının amacı, bir sisteme, barındırdığı verilere veya belirli bir kaynağa erişim sağlamaktır.
Yazılım Güvenlik Açığı
Yazılım güvenlik açıkları genellikle işletim sistemindeki veya uygulama kodundaki hatalardan kaynaklanır, ancak şirketlerin yazılım güvenlik açıklarını bulma ve düzeltme yamalarına rağmen, yeni güvenlik açıklarının ortaya çıkması yaygındır. Microsoft, Apple ve diğer işletim sistemi üreticileri hemen hemen her gün yamaları ve güncellemeleri yayınlar. Uygulama güncellemeleri de yine yaygındır. Web tarayıcıları, mobil uygulamalar ve web sunucuları gibi uygulamalar genellikle sorumlu şirketler veya kuruluşlar tarafından güncellenir.
Yazılım Güvenlik Açığı
Yazılım güvenlik açıkları genellikle işletim sistemindeki veya uygulama kodundaki hatalardan kaynaklanır, ancak şirketlerin yazılım güvenlik açıklarını bulma ve düzeltme yamalarına rağmen, yeni güvenlik açıklarının ortaya çıkması yaygındır. Microsoft, Apple ve diğer işletim sistemi üreticileri hemen hemen her gün yamaları ve güncellemeleri yayınlar. Uygulama güncellemeleri de yine yaygındır. Web tarayıcıları, mobil uygulamalar ve web sunucuları gibi uygulamalar genellikle sorumlu şirketler veya kuruluşlar tarafından güncellenir.
Yazılım güncellemelerinin amacı güncel kalmak ve güvenlik açıklarının kullanılmasını önlemektir. Bazı şirketler, yazılım güvenlik açıklarını sömürülmeden önce aramak, bulmak ve düzeltmeye adanmış penetrasyon test ekiplerine sahipken, üçüncü taraf güvenlik araştırmacıları da yazılımda güvenlik açıklarını bulma konusunda uzmanlaşmıştır.
Donanım Güvenlik Açığı
Donanım güvenlik açıkları genellikle donanım tasarım kusurları nedeniyle ortaya çıkar. Örneğin RAM bellek, esasen birbirine çok yakın takılan kapasitörlerdir. Yakınlık nedeniyle, bu kapasitörlerden birine uygulanan sürekli değişikliklerin komşu kapasitörleri etkileyebileceği keşfedilmiştir. Bu tasarım kusuruna dayanarak Rowhammer adında bir istismar yaratıldı. Aynı adreslerdeki belleği tekrar tekrar yazarak, Rowhammer istismarı, hücreler korunsa bile, yakındaki adres belleği hücrelerinden veri alınmasına izin verir.
Donanım güvenlik açıkları cihaz modellerine özgüdür ve genellikle rastgele risk girişimleriyle kullanılmazlar. Donanım istismarları yüksek hedefli saldırılarda daha yaygın olmakla birlikte, geleneksel kötü amaçlı yazılım koruması ve fiziksel güvenlik günlük kullanıcılar için yeterli korumadır.
Güvenlik Açığı Türleri
Arabellek Taşması — Bu güvenlik açığı, veriler arabellek sınırlarının ötesinde yazıldığında oluşur. Arabellekler, bir uygulamaya ayrılan bellek alanlarıdır. Verileri bir arabellek sınırlarının ötesinde değiştirerek, uygulama diğer işlemlere ayrılan belleğe erişir. Bu, sistem çökmesine, verinin riske girmesine veya ayrıcalıkların artmasına neden olabilir.
Doğrulanmamış Girdi — Programlar genellikle veri girişi ile çalışır. Programa giren bu veriler, programı istenmeyen bir şekilde davranmaya zorlamak için tasarlanmış kötü amaçlı içeriğe sahip olabilir. İşlemek amacıyla resim alan bir program düşünün. Kötü amaçlı bir kullanıcı geçersiz boyutlara sahip bir görüntü dosyası oluşturabilir. Kötü amaçlarla oluşturulmuş boyutlar, programı yanlış ve beklenmeyen boyutlardaki arabellekleri ayırmaya zorlayabilir.
Yarış Koşulları — Bu güvenlik açığı, bir olayın çıktısının sıralı veya zamanlı çıktılara bağlı olmasıdır. Bir yarış koşulu, gerekli sıralı veya zamanlanmış olaylar doğru sırada veya uygun zamanlama gerçekleşmediğinde bir güvenlik açığı kaynağı haline gelir.
Güvenlik Uygulamalarındaki Zayıflıklar — Sistemler ve hassas veriler kimlik doğrulama, yetkilendirme ve şifreleme gibi tekniklerle korunabilir. Geliştiriciler, büyük olasılıkla güvenlik açıklarını oluşturacaklarından, kendi güvenlik algoritmalarını oluşturmaya çalışmamalıdır. Geliştiricilerin önceden oluşturulmuş, test edilmiş ve doğrulanmış güvenlik kütüphanelerini (libraries) kullanmaları tavsiye edilir.
Erişim-Denetim Sorunları — Erişim denetimi, kimlerin ne yaptığını kontrol etme sürecidir ve donanıma fiziksel erişimi yönetmekten dosya gibi bir kaynağa kimin erişimi olduğunu ve dosyayı okumak veya değiştirmek gibi onunla neler yapabileceklerini kontrol etme sürecidir. Birçok güvenlik açığı, erişim denetimlerinin yanlış kullanımı nedeniyle oluşur.
Saldırganın hedef ekipmana fiziksel erişimi varsa hemen hemen tüm erişim kontrolleri ve güvenlik uygulamaları aşılabilir. Örneğin, bir dosyanın izinlerini neye ayarlarsanız ayarlayın, işletim sistemi birinin bu işletim sistemini atlatıp verileri doğrudan diskten okumasını engelleyemez. Makineyi ve içerdiği verileri korumak için fiziksel erişim kısıtlanmalı ve verilerin çalınmasını veya bozulmasını önlemek için şifreleme teknikleri kullanılmalıdır.
Buraya kadar okuduğunuz için teşekkürlerimi sunar, iyi forumlar dilerim.
Doğrulanmamış Girdi — Programlar genellikle veri girişi ile çalışır. Programa giren bu veriler, programı istenmeyen bir şekilde davranmaya zorlamak için tasarlanmış kötü amaçlı içeriğe sahip olabilir. İşlemek amacıyla resim alan bir program düşünün. Kötü amaçlı bir kullanıcı geçersiz boyutlara sahip bir görüntü dosyası oluşturabilir. Kötü amaçlarla oluşturulmuş boyutlar, programı yanlış ve beklenmeyen boyutlardaki arabellekleri ayırmaya zorlayabilir.
Yarış Koşulları — Bu güvenlik açığı, bir olayın çıktısının sıralı veya zamanlı çıktılara bağlı olmasıdır. Bir yarış koşulu, gerekli sıralı veya zamanlanmış olaylar doğru sırada veya uygun zamanlama gerçekleşmediğinde bir güvenlik açığı kaynağı haline gelir.
Güvenlik Uygulamalarındaki Zayıflıklar — Sistemler ve hassas veriler kimlik doğrulama, yetkilendirme ve şifreleme gibi tekniklerle korunabilir. Geliştiriciler, büyük olasılıkla güvenlik açıklarını oluşturacaklarından, kendi güvenlik algoritmalarını oluşturmaya çalışmamalıdır. Geliştiricilerin önceden oluşturulmuş, test edilmiş ve doğrulanmış güvenlik kütüphanelerini (libraries) kullanmaları tavsiye edilir.
Erişim-Denetim Sorunları — Erişim denetimi, kimlerin ne yaptığını kontrol etme sürecidir ve donanıma fiziksel erişimi yönetmekten dosya gibi bir kaynağa kimin erişimi olduğunu ve dosyayı okumak veya değiştirmek gibi onunla neler yapabileceklerini kontrol etme sürecidir. Birçok güvenlik açığı, erişim denetimlerinin yanlış kullanımı nedeniyle oluşur.
Saldırganın hedef ekipmana fiziksel erişimi varsa hemen hemen tüm erişim kontrolleri ve güvenlik uygulamaları aşılabilir. Örneğin, bir dosyanın izinlerini neye ayarlarsanız ayarlayın, işletim sistemi birinin bu işletim sistemini atlatıp verileri doğrudan diskten okumasını engelleyemez. Makineyi ve içerdiği verileri korumak için fiziksel erişim kısıtlanmalı ve verilerin çalınmasını veya bozulmasını önlemek için şifreleme teknikleri kullanılmalıdır.
Buraya kadar okuduğunuz için teşekkürlerimi sunar, iyi forumlar dilerim.
Son düzenleme: