Pentest (Sızma Testi):

Pentest, bir makine üzerinden, bir sistemin güvenlik kontrollerinin test edilmesi amacıyla yapılmış dostane bir siber saldırı simülasyonudur. Asıl amacın, siyah şapkalı hackerların başvuracağı yolları tespit ederek, zafiyet belirlenen noktaları açığa çıkarıp güvenliğini sağlamaktır. Kötü amaçlı bir saldırganın izleyeceği bir çok farklı yol vardır. Örneğin iç ağ katman saldırıları veya dış networkten sisteme zarar vermeyi hedefleyebilir. Dışardan gelecek olan tehditlerin haricinde, sistem içerisinde yanlışlıkla yapılan hatalarda olabilir. Bu sistemin yavaşlamasına, zayıflamasına veya anlık hizmet verememe gibi sonuçlar doğurabilir. Pentest, işleyiş aşaması olarak değişmemekte fakat uygulayacağımız sisteme göre değişiklik göstermektedir. Bir makine üzerinde yapılan testlerde; zayıflıklar, exploitler, yetki erişim kontrolleri, oturum yönetim testleri veya şifreleme politikaları gibi testler kontrol edilirken, bir web sitesinde kötü amaçlı yazılımlara maruz kalma, virusler veya DDoS saldırılarına karşı vb. dayanıklığı test edilir.

Pentest Çeşitleri:                

    • Web Application Pentest
    • Network Pentest
    • Mobile Pentest
    • Cloud Pentest
    • Kod Tarama
    • Wireless Pentest
    • Voip Pentest

 

Sistem zafiyetlerini arayan bilgisayar korsanları, uyguladıkları metotları (genellikle exploit, script) sürekli değiştirmektedir. Kişisel olarak hacklendiğimizi düşündüğümüzde bazılarımız bir sorun teşkil etmediğini düşünebilir lakin bunu en alttaki mecralardan en üst şirket veya kurumlara kadar olan kısımıda düşündüğümüz zaman büyük çaplı sorunlar oluşacaktır. Bu sebepten güvenlik kontrol sistemlerinin çalışması ve dayanıklılığın sürekli test edilmesi gerekmektedir. Sistem zafiyetlerinden faydalanarak yapılan bir siber saldırıda doğacak sonuçlar yalnızca maddi boyutla kalmaya bilir. İlgili sektörün itibarının sarsılması, maddi kaynaklı zararlar, veri tabanı tehlikeleri, kullanıcı bilgilerinin çalınması gibi çeşitli riskler taşıyabilir. Kişisel Verileri Koruma Kanunu’nun 23 Mart 2016 tarihinde kabul edilmesiyle beraber riskler ve yaptırımlar oldukça artmış ve ağırlaştırılmıştır.

Penetrasyon Türleri:


 

  • BlackBox Pentest: Siyah kutu penetrasyon testi, bir sistem hakkında bilgi sahibi olmadan yapılan saldırı türüdür. Sistem ağına dışarıdan bağlanmaya çalışan bir saldırganın izleyeceği yolu test etmektedir.
  • WhiteBox Pentest:  Beyaz kutu penetrasyon testi, sistem yetkililerinin veya çalışanlarının içeriden verebileceği zararı test etmek amaçlı yapılmaktadır. İçeriden olabilecek olası bir siber saldırıya karşı güvenlik metotlarına saldırı simülasyonu uygulanmaktadır. Yetki erişim kontrolü gerçekleştirilmektedir.
  • GreyBox Pentest: Gri kutu penetrasyon testi, diğer test aşamalarına göre daha büyük önem gerektirmektedir. Bu saldırı testinde, iç network ağında bulunan yetkisiz birinin, sistem üzerindeki etkisi test edilmektedir. Bilgiler, kullanıcılar, şifreler, kurum içerisindeki kritik bilgilere kadar ağ alt yapısında taşınmaktadır. Ağ trafiğini kontrol edebilen bir bilgisayar korsanı, sistem bilgilerine gerek kalmaksızın yetkili konuma erişebilir. Kurumların yüzdelik oranla en çok zarar gördüğü türdür. Network paket kaydediciler için önlemler alıp, test yaparak zayıflıklar denetlenir.

Sızma Testi Metodolojisi :

Detaylı bir sızma testi, sistem zafiyetlerinin taranmasından, insan tabanlı sosyal mühendislik (örn: Phishing) yöntemlerine kadar sürmektedir. Sistem güvenliklerinin kusursuz olması o sistemi  güvenilir hale getirmez. İlgili kurumun çalışanlarından, fiziksel ortamda bulunan;

  • Sunucu odası
  • Çalışma alanları
  • Network altyapısı gibi faktörlerde incelenmektedir.

Sızma Testi Aşamaları:

  1. Data collection (Bilgi Toplama)
  2. Network Mapping (Ağ Haritalama)
  3. Weakness Screening (Zayıflık Tarama)
  4. Leakage into the System ( Sisteme Sızma- Exploit Tabanlı)
  5. Authorization Upgrade (Yetki Yükseltme)
  6. Protecting Access (Erişim Koruma)
  7. Cleaning Traces (İzleri Temizleme)
  8. Reporting (Raporlama)

 


  1. Bilgi Toplama:

Bilgi toplama aşamasında kullanılabilecek bir çok program kullanılmaktadır. Şu programdan başlamalısınız gibi bir yönlendirme yapmak yanlış olur. Bunu, “Bilgi toplamayı nasıl yapmayı hedefliyorsunuz?” sormak daha doğru olacaktır. Aktif ve pasif olarak ayırdığımız iki çeşit bilgi toplama yöntemi bulunmaktadır.

Aktif bilgi toplama gerçekleştirdiğimiz zaman, ilgili sistemle iletişim halinde olup çeşitli istek ve sorular sorabiliriz. Bu iz bırakmamıza sebep olacaktır. Gizliğimizin önemsenmediği bu bilgi toplama yöntemini doğrudan gerçekleştirmek güvenilirliği önemsememektedir. Aktif bilgi toplama yönteminde, pasif bilgi toplama aşamasında elde edilemeyen bilgileri öğrenmek için kullanabiliriz.

Pasif bilgi toplama ise tam tersi metotta ilerlemektedir. Makine veya sunucuyla iletişim haline geçmeden web üzerinden erişebildiğimiz bilgilerdir. Pasif bilgi toplama gerçekleştirerek ilgili sisteme IP adreslerimizin gitmemesi veya iz bırakma gibi sorunları taşımamaktadır. Bir çok web sitesi bu gibi hizmetleri sunmaktadır. Fakat bilgi toplama aşamasında pasif yöntemleri kullanarak çok bir sonuç elde edemeyiz.

Bilgi toplama evresinde gerçekleştirilen yöntemler sayesinde elde edilen bilgiler; whois sorgusuyla domain, dns, server bilgileri, kayıtlı emailler, telefon numaraları, domain name server (ns) bilgilerine erişebiliriz.

Bazı bilgi toplama araçları:

 

  • Dnsmap
  • Nslookup
  • Webshag
  • Dmitry
  • Maltego

 

    2. Ağ Haritalama:

Ağ haritalama dediğimiz aşamada, keşif yapacağımız sisteme göre değişiklik göstermektedir. Bir sunucu veya sistem üzerinden test gerçekleştirilecek ise, ağ haritalama yapılabilir. Ağ haritası çıkarmak için lisanslı veya lisans gerektirmeyen programlar bulunmaktadır. Asıl amacın ağ içerisindeki dağılım şekli, bağlantı noktaları, port numaraları veya bağlı IP adres numaraları ve isimleri gibi keşifleri önümüze serecektir.

Network keşif gerçekleştirmesi, hedef adrese ulaşmak için bizlere çeşitli seçenekler sunacaktır. Bilgisayar korsanı hedef sisteme ulaşmak amacıyla doğrudan ağ üzerinden gitmeyip, ağ haritalamasından çıkardığı sonuçlar ile bir çok fishing (oltalama) metotları ağ içerisinde bağlı bulunan IP adreslerine yönelme imkanı yakalayacaktır. Keşfettiği ağ mimarisinden yola çıkarak, LAN, WAN gibi özel ağ bağlantıları kullanmayı da seçebilir. 

Ağ içerisine girmeden gerçekleştirmeden yürüttüğü çalışmalarda elde edeceği haritalamalar izin verildiği sürece keşiflere açık ve mümkün kılacaktır. Local veya özel ağ bağlantısına fiziksel olarak girmeyi deneyen ve keşife çıkan bir çok hacker tarihe geçmiştir. Saldırıda bulunacağı ağı, ilk olarak özel ağ (wifi) şifrelerini kırarak ağ topolojini ortaya çıkarıp, ağ içerisinde veri dinlemesi gerçekleştirmiştir. 

3. Zayıflık Tarama:

İlk iki aşamanın devamı olarak belirlenen bütün noktalarda ki zafiyetleri çıkarma işlemine geçilir. Bilgi toplama ve Ağ Haritasını çıkardığımız sistemlerin, kullandıkları Firewall türleri ve zafiyetleri, Anti virüs programları, Ağ bağlantı koruma yazılımları, Veri tabanı bilgileri veya bir web site açısından düşünürsek olursak; SQL, XSS gibi açıkları incelemesi gerçekleştirilir.

Bu incelemeleri, kötü niyetli bilgisayar korsanları ve etik hacker diye adlandırılan beyaz şapkalı hackerlar genellikle ortak noktadan yürütmektedir. 

Peki Zayıflıklar Nasıl Taranır?

Siber güvenlik uzmanlarının veya sızma testi alanında kendisini yetiştirmiş insanların kullandığı çeşitli yazılımları ve materyalleri bulunmaktadır. 13 Mart 2013 yılında Linux, güvenlik kontrol amacıyla Kali Linux işletim sistemini  geliştirip piyasa sürmüştür. Açık kaynak kodla yazılmış olan bu işletim sisteminin amacı, güvenlik sistemlerini denetlemek ve kontrol etmektir. 

İçerisinde çeşitlii araçlar bulunan bu işletim sisteminde, yazılım bilgisine ihtiyaç duymadan gerçekleştirebileceğimiz zayıflık tarama yöntemleri bulunmakta. 

Bir web sitesindeki olabilecek tüm açıkları incelemek amacıyla bWAPP kullanılırken, az önce konusundan bahsettiğimiz ağ haritalama için Nmap araçları kullanılır.

4. Sisteme Sızma:

Sisteme sızma aşamasına geçildiğinde, yapılan zayıflık tarama testlerinin sonuçlarına göre hareket edilmektedir. Bir veri tabanında  zafiyet taraması gerçekleştirildiğinde, veri transferi gerçekleştirebiliyor olduğunu anladığımızda veya bir web sitesi için açık keşfettiğimizde içerisinden kullanıcı panel ve şifrelerine erişim sürecine kadar devam edebilmektedir.  Kritik önem taşıyan ağ, sunucu serverlar veya veri tabanlarında tespit edilen açıklara genellikle yazılım bilgisine sahip olan hackerlar tarafından şiddetli saldırı gerçekleşebilir. Exploit veya kendi geliştirdikleri scriptler ile saldırıya geçen bu hackerlar, sisteme sadece erişim sağlamakla kalmayıp, sistem içerisinde hayalet olarak dolaşım sağlayabilirler. Log kayıtlarını, veri giriş çıkışlarını yönetebilir ve isterlerse sistemleri yok edebilirler. Bunun bilincinde olan bir çok firma veri tabanlarını yedeklemektedirler.

 

Penetrasyon testinin tanımında “dostane bir siber saldırı simülasyonu” olarak değerlendirdiğimiz için bir hacker gibi düşünüp, sisteme erişim sağlanıp sağlanmadığının kontrolü için yapılmaktadır. Bu kontrol, sistem veya kurum yetkilileri tarafından takip edilmektedir. Aksi taktirde yetkisiz veya izinsiz yaptığımız her eylem bilişim suçu işlememize sebep olacaktır.

 

Karanlığa saklanmak korkaklıktır.

 

 

 

5. Yetki Yükseltme:

Bu aşamada ise ağ içerisine girmeyi başaran bilgisayar korsanının, erişebileceği yetki test edilmektedir. Bazı sistemler root yetkisiyle çalışan servisler veya uygulamalar barındırmaktadır. Yetki alanı en geniş olarak belirlenen root yetkisine ulaşım yolları, erişimi denetlenmektedir. Ağ yapılandırması oluştururken, kullanıcılar, gruplar, uzaktan erişim servisleri (SSH,VNC) gibi anahtarlama yönetimleri kullanılmaktadır.  Kullanıcıların erişebileceği dizinler sınırlandırılır. Yerel ağ içerisinden bağlantı sağlayan bir cihazın, şifrelerin kayıtlı olduğu dosya dizinine erişim izni verilmemektedir.  Sudo enjeksiyonu gibi çeşitli yetki yükseltme zafiyetleri ve istismar yöntemleri bulunmaktadır. 

 

6. Erişim Koruma:

Network Access Protection olarak adlandırdığımız, ağ erişim korumasını gerçekleştirmek için ağ haritasına göre hareket edilmektedir. Ağ üzerinde varsa bir yönlendirici (router), bağlı switch veya veri aktarımı için kullanılan gateway cihazları test edilebilir. Ağ erişim kontrolleri için IP, istemci, cihaz, yerel ağ istek  talepleri değerlendirmeye alınır.

 

İstemcilerin, ağ tarafına gönderdikleri talepleri çeşitli filtreler ve taramalar ile erişim kısıtlaması gerçekleştirilebilir. Bu sayede ağ bağlantımıza erişim engellemesi gerçekleştirebiliriz. 

 

7. Raporlama:

Penetrasyon testini gerçekleştiren ilgili kişi, yapmış olduğu testler sonucunda elindeki verileri firma veya kurum yetkilileri ile paylaşımını gerçekleştirir. Raporlama aşamasında;

Zayıflıklar ve Exploitler üzerinde gerçekleştirilen testlerde, güvenlik duvarlarının dayanıklılık değerlendirmesi, Web Site açıkları, Uygulama güvenlik test raporları. Kısacası Güvenlik Sistemi Dayanıklılığı Raporlanır.

Test sonrasında belirlenen noktaların güvenlik önlemleri için, Güvenlik Politikalarının belirlenmesi, zafiyet belirten noktalarda güvenlik çözümlerinin sunulması hedeflenir.

Bireysel veya kurumsal olarak yapılan penetrasyon testindeki en son aşama olan, rapolarma aşamasında; ilgili mecralara iletilen güvenlik zafiyetlerinin belirtilmesidir. Belirtilen zafiyetler güvenlik önemlerini alındığı beyan edildiğinde doğrulama testine tabi tutularak, test sırasında açığa çıkan zayıflıkları tekrar kontrolden geçirme aşamasıdır.

PENETRASYON TESTİ NEDİR?