Bu ay sizlerle güvenlik teknolojileriyle ilgili bir konu olan saldırı ağaçlarından bahsedeceğim. Çok az insan gerçekte bilgisayar güvenliğinden anlar. Aslında kırılamaz güvenlik her zaman kırılır çoğunluklada tasarımcısının hayal edemediği bir şekilde. :) Hatta çok güçlü görünen şifreler bile kırılabilir. Açıkçası bizim ihtiyacımız olan şey, bilgisayar sistemine karşı olabilecek tüm tehditleri gösteren bir yoldur. Eğer sistemin saldırıya uğrayabilecek tüm farklı yollarını bilirsek, bu saldırıları önlemek için karşı tedbirler alabiliriz. Bu sebeple saldırı ağaçları fikri ortaya çıkmıştır, bu fikri ilk ortaya atan ise Bruce Schneier olmuştur. Saldırı ağaçları, sistemin bütün açıklarını belirleyerek gözden kaçması mümkün olan noktaları belirlemeyi sağlamaları yönüyle önemlidirler. Saldırı ağaçlarındaki mantık bir saldırgan gibi düşünüp olası tehditlere karşı önlemler almaktır. Saldırı ağacında saldırmak istediğimiz ana hedef en tepedeki yaprak olarak tanımlanır ve birinci seviye yapraklar ana hedefe ulaşmak için yapılması gereken olası yöntemleri gösterir. Bu şekilde her seviyedeki yaprak için yöntemler ve alt yöntemler belirlenir. Bir yöntemin alt dalları arasında VE ya da VEYA olmak üzere iki tür ilişki olabilir. VE ilişkisi yöntemin gerçekleşmesi için alt dalların her birinin başarılı bir şekilde gerçekleşmesi gerekirken VEYA ilişkisinde yöntemin gerçekleşmesi için alt dallardan herhangi birinin gerçekleşmesi yeterlidir. Eğer ilişki türü açıkça belirtilmemişse ilişki türünün VEYA olduğu varsayılır.

Saldırı Ağacı Oluşturma

Bir örnekle bahsettiğimiz işlemleri daha somut bir hale getirecek olursak e-posta sistemi için bir saldırı ağacı oluşturalım. Bir saldırganın belirlediği belli bir kişinin e-postalarına izinsiz erişmesini ana hedef olarak seçelim ve saldırganın bu ana hedefe ulaşabilmesi için uygulayabileceği yöntemleri saldırı ağacı ile gösterelim. Şekilde de gösterildiği gibi saldırı ağacının en tepesine saldırganın ana hedefi olan e-postalara izinsiz erişim yerleştirilir. Diğer alt dallar ise bu hedefe ulaşabilmek için yapılabilecek yöntemleri(tehditleri) göstermektedir. Saldırgan, e-postalara izinsiz erişim sağlayabilmek için başlıca beş yöntem deneyebilir.

  1. “parolamı unuttum” Mekanizması: Saldırgan, bu yöntemle kullanıcıların zaaflarından faydalanarak geçerli parolayı değiştirmeyi hedefler. Parolamı unuttum seçeneği sisteme ilk kayıt esnasında kullanıcı tarafından belirtilen gizli sorunun cevabının bilinmesi şartı ile parolanın değiştirilmesine izin verir.
  2. Kaba-kuvvet Saldırıları: Bu yöntem sayesinde saldırgan mümkün olan bütün ihtimalleri parola olarak deneyebilir. Bu çok uzun süren ama kesin sonuç veren bir saldırıdır. Günümüzde kaba-kuvvet saldırılarını otomatik olarak gerçekleştiren programlar da mevcuttur. Kaba-kuvvet saldırılarının bir türevi de sözlük saldırılarıdır(dictionary attacks). Bütün ihtimalleri denemek her ne kadar kesin sonuç verse de çalışma süreleri çok uzun vakit almaktadır.
  3. Sosyal Mühendislik: Sosyal mühendislik yöntemini seçen saldırganlar kullanıcının kendisini görüp telefon ya da internet gibi iletişim araçları aracılığı ile kullanıcıdan gizli bilgileri almayı hedeflerler. E-posta sistemine karşı sosyal mühendisler başlıca üç yöntem deneyebilirler.

    • Kullanıcıların çok sık yaptıkları hatalardan birisi parolalarını kâğıda yazıp bunları başkalarının da rahatça erişebileceği yerlerde bulundurmalarıdır.

  • Kimlik doğrulaması esnasında parolasını sisteme giren kullanıcının yakınında ve de klavyesini görebilecek pozisyonda olan saldırganlar parolayı gizlice görmeye çalışabilirler.
  • Kimlik hırsızlığı yöntemi ile saldırganlar kullanıcılara kendilerini ilgilendiren ve de geçerli bir yerden gelmiş gibi görünen e-postalar gönderirler. Bu sayede kullanıcıların parolalarını çalmayı hedeflerler.
  • İletişim Kanalı Saldırıları: Şayet saldırganlar kullanıcı ile e-posta sunucusunun arasındaki iletişim kanalını dinleyebilme ve iletileri kopyalayabilme olanağına sahip iseler aşağıda sıralanan tehditlerden faydalanabilirler:

    • İletişim kanalında taşınan iletilere direkt erişilebilindiği bir ortamda şayet iletiler şifrelenmeden taşınıyor ise saldırganların parolaları ele geçirmeleri gayet kolaydır.
    • Şifrelenmiş iletiler için de risk söz konusudur. Saldırgan şifreli iletileri deşifre etmeye çalışabilir. Örneğin, DES (Data Encryption Standard) gibi zayıf şifreleme algoritmalarının kullanılması saldırganların başarı şansını yükseltebilir. Dikkat edilirse ağacımızda iletişim kanalının deşifre edilmesi ile ileti özünün deşifre edilmesi arasında VE ilişkisi bulunmaktadır. Parolayı elde etmek için iletiyi deşifre etmek yetmeyebilir.
  • Truva Atları: Kullanışlı programlar içerisine gizlenerek kullanıcının sisteminde çalışıp kullanıcının zarar göreceği işlemleri gerçekleştiren programcıklar olarak tanımlanabilirler. Truva atlarını kullanarak saldırganlar aşağıdaki saldırıları gerçekleştirebilirler:

    • Tuş kayıtçıları (key logger), kullanıcının bilgisayarında gizlice çalıştırılmak sureti ile basılan bütün tuşların kayıt edilmesini ve böylece parolanın ele geçirilmesine olanak verirler.
    • Oturum çalma (session hijacking) yöntemi ile saldırgan kullanıcının daha önceden kullanıcı adı ve parolasını ile kimlik asıllaması sonucunda oluşturulan oturumunu ele geçirerek e-posta sisteminin kimlik doğrulama kısmının es geçmeyi hedefler.

Gelişmiş Saldırı Ağaçları

Saldırı ağacındaki her yaprak bir tehdit unsuru oluşturur; fakat saldırganın kim olduğunu, yeteneklerinin neler olabileceğini ya da amacının ne olabileceğini anlayabilirsek daha uygun tedbirler alabiliriz. Bu nedenle saldırı ağacını bazı ölçütlere göre tekrar inceleyip yeniden düzenleyebiliriz. Ölçütlerimizi; saldırının kolaylığı ya da zorluğu, gerçekleşme süresi, maliyeti gibi birkaç alanda oluşturabiliriz. Örneğin maliyeti çok fazla olan bir saldırıyı, sıradan herkesin kolaylıkla gerçekleştirebileceği bir saldırıyla karşılaştırdığımızda öncelik olarak ikinci plana atabiliriz.

Kaynaklar: