Penetration Testing (PenTesting) Nedir?
Penetration Testing kısaltılmış adıyla PenTesting bir sistemin güvenliğini sınama işlemidir. PenTesting sayesinde sisteme izinsiz girilip girilemeyeceği test edilir. Sistem sahibi ya da kullanıcısı sistemin güvenliği hakkında bilgi sahibi olur. Varsa bulunan sistem zayıflıkları kapatılır. Saldırı öncesi bilgi toplama amacıyla da yapılabilir.
Neden PenTesting Yapılır?
-Bu işlem sayesinde saldırıların uygulanabilirliği denetlenebilir.
-Kritik zaafiyetler tespit edilerek kapatılabilir.
-Muhtemel bir saldırıda karşılaşılabilecek sorunlar ve neden olabileceği zararlar tespit edilebilir.
-Saldırı karşısında savunmakla görevli kişilerin yeterliliği test edilebilir.
-DDOS vb. saldırılara karşı sistemin dayanıklılığının test edilebilir.
-Saldırı amacıyla yapılıyorsa saldırıdan önce sistem zayıflıklarını tespit edip bu zayıflıklara göre saldırı planı belirlenebilir.
-Sistemi savunmak amacıyla, saldırı anında yapılacakların belirlenmesi ve tatbikatı gibi amaçlarla PenTesting yapılabilir.
PenTesting temel olarak sistem hakkında olan bilgimize göre üçe ayrılır.
White Box:
Bu PenTesting çeşidinde hedef sistem çok iyi tanınır. Kaynak kodları, IP adresi vb. Bilgilerin hepsi bilinir. İçeriden bilgi sızıntısı olması durumunda ya da saldırının içeriden yani sisteme erişim yetkisi bulunan kişi tarafından yapılması bu türe girer.
Black Box:
Sistem hakkında hiç bir bilgi olmadan yapılan testtir. Bu çeşit aynı zamanda “Kör Test” olarak da bilinir. Black Box Testing’de saldırganlar sistemi ön saldırı ile test edebilir.
Grey Box:
Bu metotta saldırganın sistem hakkında kısmen bilgisi vardır.
Web Uygulamalarının PenTesting ile Test Edilmesi:
Web uygulamaları aşağıdaki yollarla tek tek test edilmesi gerekir.
-XSS
-Buffer overflow
-Clickjacking
-DDOS
-SQL Injection
Bu testler sonucunda herhangi bir zaafiyet tespit edilirse bu zaafiyet giderilmelidir. Zaafiyet tespit edilmezse sistem tehlikede değil denebilir.
PenTesting Araçları:
Bu araçlar manuel olarak yapması zor olan işlemleri çeşitli programlar aracılığyla kolay bir şekilde yapmamızı sağlar. Ayrıca hız açısından çok faydası olur. Piyasada PenTesting yapmak için bir çok araç mevcuttur. Bunlardan bazıları :
-Havij (SQL Inj)
-Metasploit (İçinde Birçok Exploit, Payload vb. bulunduran frameworktur.)
-vb.
PenTesting araçlarının hemen hepsi BackTrack içinde hazır olarak gelmektedir. Zaten BackTrack PenTesting için özelleştirilmiş Linux sürümüdür. Ubuntu ya da Windows(bleh!) kullanıcıları için ekstra yüklemeler gerekebilir.
PenTesting araçlarının kullanımı başlı başına ayrı bir konudur. Onları inşaAllah başka bir konuda ele alacağız.
Selametle…