Metasploit Framework: Pratik Bir Penetrasyon Testi Rehberi
1. Penetrasyon Testinin Aşamaları
Bir penetrasyon testi genellikle aşağıdaki adımları içerir:- Kapsam Tanımı
- Keşif
- Keşif
- Sömürü
- Sosyal Mühendislik
- Kontrol Edinimi
- Pivotlama
- Kanıt Toplama
- Raporlama
- İyileştirme
Kapsam Tanımı
Bir penetrasyon testindeki ilk adım, hangi sistemlerin test edileceğini belirlemektir. Bu aşamada, hedef sistemin sınırları, kritik veriler ve hangi hizmetlerin korunması gerektiği açıklığa kavuşturulmalıdır. Örneğin, bir finans kuruluşunda müşteri verilerini korumak için hangi sistemlerin kritik olduğunu belirlemek esastır.Örnek Senaryo: Bir bankadaki BT yöneticisi, yalnızca müşteri veritabanlarını içeren sunucunun harici bir penetrasyon testi için test edilmesini ister. Bu durumda, testin kapsamı açıkça tanımlanmalı ve sınırlandırılmalıdır.Keşif
Bu aşamada hedef hakkında mümkün olduğunca fazla bilgi toplanır. IP adresleri, çalışan bilgileri ve işletim sistemleri gibi ayrıntılar toplanır.Örnek Senaryo: Bir penetrasyon testçisi şirket yapısı hakkında bilgi toplamak için LinkedIn'deki çalışan profillerini inceler. Ayrıca, şirketin web sitesindeki "Hakkımızda" sayfasından yöneticilerin isimlerini öğrenebilirler.Keşif
Bu aşamada hedef ağdaki açık portlar ve servisler taranır. Nmap gibi araçlar ağdaki cihazları ve açık portlarını tanımlamak için kullanılır.Örnek Komut:Bu komut belirtilen IP aralığındaki cihazları tarar ve açık portları listeler. Tarama sonuçları hangi hizmetlerin çalıştığını belirlemek ve olası güvenlik açıklarını belirlemek için kullanılabilir.
2. Sömürü
Keşif aşamasından sonra, belirlenen güvenlik açıklarından yararlanmak için uygun istismarlar seçilir. Metasploit'te bulunan istismar modülleri hedef sistemlere saldırmak için kullanılır.Örnek Senaryo: Windows Arka Kapısı Oluşturma
- Windows arka kapısı oluşturmak için terminalde şunu kullanın :
msfvenom
Bu komut hedef sisteme ters bağlantı kuracak bir yük oluşturur. - Ardından Metasploit konsolunu başlatın:
- Yükü dinleyecek ayarları yapılandırın:
- Arka kapı hedefte çalıştırıldığında saldırganın sistemine ters bağlantı kurulacaktır.
3. Sosyal Mühendislik
Sosyal mühendislik teknikleri, bir hedefin güvenlik önlemlerini aşmak için kullanılabilir. Örneğin, kullanıcıları kimlik bilgilerini ifşa etmeleri için kandırmak amacıyla kimlik avı e-postaları gönderilebilir.Örnek Senaryo: Bir penetrasyon testçisi, çalışanlardan şifrelerini güncellemelerini isteyen sahte bir e-posta gönderir. Güvenilir görünmesi için bankanın logosunu kullanır ve kullanıcıları sahte bir web sitesine yönlendirir.Kimlik Avı E-posta Örneği
4. Kontrol Edinimi
Hedef sisteme erişim sağlandığında, çeşitli komutlar kullanılarak kontrol altına alınabilir. Bir Meterpreter oturumu açıldığında, sistemde eylemler gerçekleştirilebilir.Örnek Komutlar:Komut hedef sistem hakkında bilgi alırken, kullanıcı şifrelerini de çıkarabilir.
sysinfo
hashdump
5. Pivotlama
Edinilen erişim kullanılarak, ağın diğer bölümlerine geçmek için pivotlama teknikleri kullanılabilir ve bu sayede ek sistemlere erişim sağlanabilir.Proxy Pivot Örneği
- Tehlikeye atılmış bir ana bilgisayar üzerinden bir proxy pivotu oluşturun:
- Bu proxy aracılığıyla diğer sistemlere bağlantılar kurun:
6. Kanıt Toplama
Penetrasyon testi sırasında elde edilen veriler ve kanıtlar toplanmalıdır. Bu kanıtlar test sonuçlarının belgelenmesi için çok önemlidir.Örnek: Ekran görüntüsü almak veya dosya indirmek için Meterpreter komutları kullanılabilir:Bu komutlarla elde edilen veriler raporlama sırasında kullanılacaktır.
7. Raporlama ve Düzeltme
Son olarak, penetrasyon testinin sonuçları ayrıntılı bir rapor formatında sunulmalıdır. Rapor, önerilen düzeltmelerle birlikte belirlenen güvenlik açıklarını içermelidir.Rapor İçeriği:- Test kapsamı ve yöntemleri.
- Elde edilen bulgular.
- Güvenlik açıklarının ciddiyeti.
- Çözüm önerileri.