Sızma Testi

Kullandığınız güvenlik çözümlerinin sisteminizi %100 güvenlik sağlayacağına inanıyor musunuz?

Tabi ki de hayır. İşte bu yüzden her firma yılda minimum 1 kez sızma testi yaptırması gerekmektedir.

Yapılan sızma testi, sizlere sistemlerinizin checkup niteliğinde sonucu olarak dönecektir.

Penetration Testing veya PEN test olarak bilinen bu kavram Türkçe’de Sızma Testi olarak kullanılmaktadır. Bilgi teknolojilerinin hızla gelişmesi ve bilgiye erişimin kolaylaşması, bilgilerinizin güvenliğini de o denli önemli kılmaktadır. Sistemlere saldıran kötü amaçlı kişilerin sayısı, bilgi ve becerisi, zamanı ve motivasyonu her zaman güvenlik uzmanlarının sahip olduğu zaman, bilgi ve motivasyonun üzerindedir. Bilgisayar korsanlarının önüne geçebilmek adına, sistemleri onlar gibi düşünebilen ve hareket edebilen kişiler tarafından teste tabi tutmak önemli bir zorunluluk haline gelmektedir.

Bilişim alanındaki temel güvenlik yaklaşımını ikiye ayırabiliriz. Bunlardan biri savunmacı güvenlik olarak adlandırılan defensive security, diğeri ise proaktif güvenlik olarak adlandırılan offensive security’dir. Pentest çalışmaları ise offensive security anlayışının bir sonucu olarak ortaya çıkmıştır.

Penetrasyon testi, var olan sistemlerinize saldırgan bakış açısıyla yaklaşarak teknik olarak olası bütün yöntemlerin denenip sistemlerinize yetkisiz bir şekilde erişim sağlayarak sistemlerin ele geçirilmesi işlemidir. Sızma Testi kapsamında risklerin, zayıflıkların meydana getirebileceği zararlar, saldırganların ulaşabilecekleri noktaların analizi yapılarak sistemler tam bir denetime tabi tutulur. Üç çeşit penetrasyon testi vardır;

 

Beyaz Kutu Testi: Beyaz kutu penetrasyon testi network teki tüm sistemlerden bilgi sahibi olarak yapılan sızma testi türüdür. Bu seçim yapılır ise kurum tüm network ve yapı bilgisinin Güvenlik testi uzmanları ile paylaşılması talep edilir.

Gri Kutu Testi: Gri kutu penetrasyon testi iç network de bulunan yetkisiz bir kullanıcının sistemlere verebileceği zararın analiz edilmesini sağlar.

Siyah Kutu Testi: Siyah kutu penetrasyon testi saldırı simülasyonu yapılacak yapı hakkında hiçbir bilgi sahibi olmadan yapılan saldırı türüdür.

 

Penetrasyon Test  (Sızma testleri) ve Vulnerability Assessment (Zafiyet değerlendirme/tarama) birbirine benzeyen fakat farklı kavramlardır. Zafiyet tarama işlemi hedef sistemlerdeki güvenlik zafiyetlerinin, açık kaynak veya ücretli otomatize zafiyet tarama yazılımları kullanılarak bulunması ve raporlanması işlemidir. Zafiyet taraması testlerinde tespit edilen zafiyetler doğrultusunda sistemin ele geçirilmesine yönelik bir test aşaması gerçekleştirilmemektedir. Bunun yanı sıra PEN test çalışmalarında ise amaç zafiyet bulmaktan öte bulunan zafiyeti değerlendirip sistemlere erişim yollarının keşfedilmesi ve yetkisiz bir şekilde sistemlere erişimler elde etmek ve sistemi tamamen ele geçirmeye çalışmaktır. Hedef sistemler üzerinde gerçekleştirilebilecek ek işlemlerin (sisteme sızma, bilgilere erişme, etkiyi tanımlama) belirlenmesidir.

Sızma Testi ve Zaafiyet Taraması

Klasik bir sızma testinde görülebilecek bir senaryoyu açıklamak gerekirse;

  • İlk adımda iç ağa dahil olan biri farklı yöntemler ile uygulanabilecek Man In The Middle – Ortadaki Adam saldırısıyla üzerine aldığı trafik içerisinden, kurumlarda sıkça kullanılan, MS SQL Veritabanı sistemine ait yetkili kullanıcının parolasını elde etmiştir.
  • Veya basit ve tahmin edilebilir bir parolanın kullanılması sonucu saldırgan, kaba kuvvet saldırılarıyla MS SQL Veritabanındaki bir kullanıcıya ait parolayı bulmuştur.
  • Saldırgan, veri tabanı kullanıcısına ait elde etmiş olduğu parola ile veri tabanı uygulaması tarafında gerekli modüllerin aktifleştirilmesi sonrasında sistem üzerinde komut çalıştırabilecek hale gelmiştir.
  • Yetki yükseltme saldırılarından sonra sistem üzerinde istenilen işlemler yapılabilir hale gelinmiştir. Bu aşamada makinede lokal veya sonradan oturum açmış kullanıcılara ait parolaların açık hali veya hashlenmiş hali elde edilmiştir.
  • Aynı parolaların farklı sistemlerde kullanılmasından dolayı saldırgan, elde etmiş olduklarıyla başka sistemlerde erişim elde edecektir.
  • Bu şekilde alanın genişletilmesi ile saldırgan Domain üzerinde Administrator yetkisine sahip bir kullanıcının bilgilerine eriştikten sonra Active Directory üzerinde kendisine ait Domain Admin yetkisine sahip bir kullanıcı oluşturup, tüm domain sistemlerini ele geçirecektir.

Pentest Metodolojisi

Genel olarak bir PEN test çalışmasındaki uygulamış olduğumuz adımları, metodolojiyi, aşağıdaki gibi sıralayabiliriz:

  • Kapsam Belirleme (Scope)
  • Bilgi Toplama (Reconnaissance, Discovery)
  • Keşif ve Tarama (Enumeration)
  • Zafiyet Taraması ve Analizi (Vulnerability Scanning)
  • İstismar Etme (Exploitation)
  • Yetki Yükseltme, Yayılma (Post Exploitation)
  • Bilgi, DökümanToplama (Post Exploitation)
  • İzleri Temizleme (Clearing Tracks)
  • Raporlama (Reporting)

Kapsam Belirleme (Scope): Müşteri ile yapılan toplantılar sonrası teste tabi tutulacak sistemlerin türü ve sayısı belirlenir. Test sırasında ortaya çıkan fakat kapsamda belirlenmemiş varlıklar müşteri ile yapılan görüşmeler sonrasında test kapsamına alınabilir veya hariç tutulabilir. Mevcut sistemlerinizin tamamı hakkında eksiksiz bilgi sağlayarak sızma testi yaptırmanız güvenlik seviyesi daha iyi seviyelere çıkaracaktır. Kapsam belirlenip işlemler başlamadan önce yapılan testler ve sonucunda elde edilecek bilgilerin korunmasını sağlayan Gizlilik Sözleşmesi imzalanır.

Bilgi Toplama (Reconnaissance, Discovery): Hedef ağ ve sistemler hakkında bilgi toplama aşaması. Internet üzerinden, halka açık kaynaklardan OSINT (Open Source Intelligence) yöntemleriyle hedef kurum hakkında elde edilebilecek kişisel bilgiler, domain adresleri, IP adres aralıkları, cihaz listeleri vb. bilgiler elde edilir. Elde edilen bilgiler ve iç ağ testlerinde kullanılacak IP aralıkları ile canlı sistemler keşfedilir.

 

Keşif ve Tarama (Enumeration, Scanning): Elde edilen aktif sistemler üzerindeki açık portlar tespit edilir. Sistemlerde bulunan açık portların üzerindeki mevcut servislerin isimleri ve işletim sistemi versiyonları keşfedilir.

 

Zafiyet Taraması ve Analizi (Vulnerability Scanning): Keşfedilen sistemlerdeki mevcut servislerin ve işletim sisteminin bilinen açıklıkları ücretli ve açık-kaynak kodlu zafiyet tarama araçları ile taranır. Buna ek olarak manuel bir şekilde de servisler üzerinde zafiyet analizi yapılır. Sistemler üzerinde bulunan ön tanımlı kullanıcıların analizi, zayıf parola denemeleri yapılır. İstismar Etme (Exploitation): Tespit edilen işletim sistemi ve servis versiyonları için zafiyetlerin istismar edilmesi aşamasıdır. Keşif ve zafiyet tarama adımlarında elde edilen bilgiler dahilinde istismar edilebilecek sistemler veya servisler üzerinde özelleştirilen exploit kodları denenip, sistemlere sızılmaya çalışılır. Parola korumalı ve sistem üzerinde komut çalıştırma özelliğine sahip uygulamalar üzerinde ise önceki aşamalarda elde edilen bilgiler kullanılarak zincirleme bir saldırı ile sistemlerde komut çalıştırılmaya ve istismar edilmeye çalışılır.

 

Yetki Yükseltme, Yayılma (Post Exploitation): Erişim elde edilen sistemlerde yetki yükseltme işlemleri ile sistem tarafındaki kısıtlar atlatılmaya çalışılır. Linux sistemler için root, Windows sistemler için NT AUTHORITY\SYSTEM yetkileri elde edilmeye çalışılır. Erişim elde edilen sistemler üzerinden, pivot noktası olarak kullanarak, direkt olarak erişilmeyen diğer network/networklere yayılma işlemleri yapılarak tüm sistemlerin ele geçirilmesi denenir. Bilgi, Doküman Toplama (Post Exploitation): Erişim elde edilen sistemlerde çalışan uygulamalara ait giriş bilgileri elde edilir. Önceki adımda elde edilen yüksek yetkiler ile sistemler üzerinde şifrelenmiş veya açık bir şekilde bulunabilen parolalar elde edilir. Sistemler içerisinde bulunan önemli dosyaların, dokümanların bir kopyası alınarak şifrelenmiş bir şekilde müşteriye kanıt olması açısından test sonunda teslim edilir.

 

İzleri Temizleme (Clearing Tracks): Sızma testi sırasında ve yayılma aşamasında kullanılan zararlı yazılımlar, backdoor (arka kapılar) sistemler üzerinden temizlenir.

 

Raporlama (Reporting): Elde edilen bilgilerin ve dokümanların düzgün bir formata dönüştürülerek müşteriye sunulması adımıdır. Oluşturulan bu raporda, yönetici özeti ve ayrıntılı zafiyet açıklamalarını içeren alanlar bulunmaktadır.

 

Sızma testi yapıldıktan sonra en geç 6 aylık bir süre içerisinde doğrulama testi yapılması gerekmektedir.

Doğrulama testi: Güvenlik testi bitiminde verilen rapordaki açıklıklar kapatıldıktan sonra var olan açıklıkların test edilmesidir.