Bu yazıda Kali Linux üzerinden Nmap ile temel taramaları nasıl yapabiliriz onu göreceğiz ama öncesinde kısaca Nmap’i tanıyalım.
Network Mapper’ın kısaltılmış hali olan “Nmap” Gordon Lyon tarafından geliştirilen, ağ taraması ve zafiyet tespiti yapmak için kullanılan ücretsiz açık kaynaklı bir araçtır.
Apt-get:
apt-get install nmap
Packman:
packman -S nmap
Yum:
yum install nmap
Nmap’de birçok parametre mevcuttur. Bunları -help ya da -h komutuyla öğrenebiliriz.
Yukarıda gördüğünüz gibi bir çok komut karşımıza çıkıyor.
-sn : Port taraması yapma anlamına gelir.
-F : Daha hızlı tarama yapar. Daha az sonuç bulur.
-n : DNS çözümlemesi yapma anlamına gelir.
-v , -vv , -vvv : Ekrana gösterilecek detayları arttırır.
-sS : Syn taraması yapar.
-sU : UDP taraması yapar.
-sT : TCP taraması yapar.
--reason : Bulduğu bir sonucun sebebini gösterir. (komut önünde iki yatay çizgi var fakat Medium tek bir çizgi olarak gösteriyor)
-p : Sadece bu parametreden sonra belirtilen portları tarar.
--open : Sadece açık portları gösterir. (komut önünde iki yatay çizgi var fakat Medium tek bir çizgi olarak gösteriyor)
-p- : Bir IP üzerinde bulunması muhtemel 65535 portun hepsini tarar.
-sV : Açık portta çalışan servisin ne olduğunu bulmaya çalışır ve -sC ile birlikte kullanılırsa işe yarar.
-sC : -sV ile versiyon tespiti yapılırken nmap scriptlerini kullanır.
--top-ports : En çok kullanılan portları tarar.
-O : Tarama sırasında işletim sistemi bilgisini verir. (Sıfır değil O harfi)
-oA : Nmap sonuçlarını 3 formatta kaydetmeyi sağlar.
-oG : Nmap sonuçlarını normal kaydetmeyi sağlar.
-oN : Nmap sonuçlarını "greplenebilir" formatta kaydetmeyi sağlar.
nmap [tarama türü] [tarama opsiyonları] [hedef/hedefler tanımlama]
Port taramalarının hepsini scanme.nmap.org sitesi üzerinden yapacağım. Nmap’ de temel olarak diyebileceğimiz 3 tane port tarama teknikleri mevcuttur. Bunlar;
1) TCP Connect Scan: -sT
Hedef porta bağlanmak için SYN paket gönderir, karşılığında SYN/ACK paketi gelirse ACK paketi göndererek porta bağlanır ve portun açık olduğunu rapor eder, eğer SYN paketine RST cevabı gelirse portun kapalı olduğunu rapor eder. Bu tarama türünde açılan tüm oturumların hedef sistemde loglanmaktadır.
Kısaca bu sistem three-way handshake yöntemine benzer.
2) SYN Scan: -sS
TCP taramasıyla neredeyse aynı çalışır diyebiliriz. Farkları ise açık portları nasıl işledikleridir.
SYN tarama oturumu tamamen açmaz, SYN paketinin karşılığında SYN/ACK paketi geldiğinde portun açık olduğunu rapor eder ve RST paketi göndererek oturumu kapatır, port kapalı ise hedef RST cevabı gönderir.
Eğer SYN taramalarını sudo izinleriyle çalıştırmazsak, Nmap varsayılan olarak TCP taramasına geçer.
Bu taramalar ‘’Half-open’’ veya ‘’Stealth’’ olarak da bilinir.
3) UDP Scan: -sU
Nmap TCP yerine UDP kullanarak bir bilgi elde etmeye çalışır.
UDP portlarının açık veya kapalı olduğunu analiz eder. UDP paketine gelen cevap ‘’ICMP Port Unreachable’’ ise portun kapalı olduğunu; UDP paketi ise portun açık olduğu anlaşılır.
UDP paketleri güvenli olmadığı için istediğimiz sonuçları elde edemeyebiliriz.
Tarama Sonrası Port Durumları
Yukarıda gördüğünüz gibi Kali’de tek bir IP adresi taraması yaptım ve karşıma portlar, portların durumu ve kullandıkları servisleri geldi. Bunların anlamı;
Port erişilebilir.
Porta erişilebilir fakat üzerinde servis yoktur.
Portun açık veya kapalı olduğunu bilemeyiz. Bir firewall olabilir.
Port erişilebilir fakat portun açık veya kapalı olduğunu bilemeyiz.
Port açık mı filtrelenmiş mi bilemeyiz.
Port kapalımı filtrelenmiş mi bilemeyiz.
Komutları, portları ve port durumlarından kısaca bahsettik şimdi Kali üzerinden komutları deneme vakti geldi.
İlk olarak tüm ağı taramasını istedim. Böylece ağımda bulunan cihazların portlarının durumunu öğrenebilirim.
Farklı taramalar da mevcuttur;
nmap --packet-trace 192.168.1.1
En çok kullanılan Portları Tarama:
nmap — top-ports 10 192.168.1.1
80. Portu Tarama : nmap -p 80 192.168.1.1
TCP 80 Portunu Tarama: nmap -p T:80 192.168.1.1
İki Portu Tarama: nmap -p 80,443 192.168.1.1
Port Aralığı Tarama: nmap -p 80–200 192.168.1.1
1. DNS Bilgilerinin Elde Edilmesi
DNS’in ilk amacı, domain adlarını IP adreslerine çözümlemektir. Bu neenle DNS bilgilerinin araştırılması gerekmektedir.
DNS kayıt türlerinin öğreneilmesi için host yardımcı uygulaması kullanılarak nameserver’lar hakkında bilgi elde edilebilir.
Zone transferi; Belirli bir işlem sonucunda DNS veritabanının bir sunucudan başka bir sunucuya aktarılmasına denir.
Birden fazla domain name server var ise name serverların zone içeriklerini güncel tutabilmesi için “Primary DNS” serverdan o zone’yi çekip kullanmalarını sağlayan bir özelliktir. Yani DNS serverlar arasında ki database replikasyonunun karşılaştırılmasını sağlarız. Zone dosyası, o zone için yapılandırılmış DNS isimlerini içerir. Buradaki konfigürasyon hatasından dolayı biz bütün subdomainleri öğrenip, bu subdomainler hakkında bilgi toplayabiliriz.
Yukarıda zone tranfer işleminin başarılı veya hatalı olduğunu görebiliyoruz.
Hedef domaine yönelik tarama gerçekleştriğinde –traceroute parametresi kullanılarak hedef IP adresine kadarki ara IP adresleri karşımıza çıkmış oluyor. Ayrıca bir IP adresini whois kullanarak bilgi toplama işlemi yapılabilir.
Elbetteki bu aracın yetenekleri bu kadarı ile sınırlı değil. Nmap’de kullanılabilecek bir çok farklı ve faydalı taramalar var. İncelemek ve uygulamak için http://scanme.nmap.org/ adresini kullanabilirsiniz . Ayrıca port taramalarımın belli noktaların www.siberdinc.com adresi kullandım. Oradan da faydalı bilgiler edinebilirsiniz.
Unutmadan Nmap her zaman %100 doğru bilgi de vermemektedir.
Şapkan beyazsa kırmızıdan daha önde olmalısın…