Nmap Cheat Sheet

Nmap, ağ keşif ve güvenlik takip yazılımıdır. Açık kaynak kodlu olarak geliştirilmiş olan bu yazılım ile port taraması, çalışan servis tespiti, versiyon tespiti, işletim sistemi analizi, zafiyet testleri gibi bir çok test yapılabilmektedir.

Nmap Kurulumu

Nmap aracı debian tabanlı dağıtımlarda

apt-get install nmap

komutu ile kolayca kurulabilmektedir.

NMAP CHEAT SHEET

Nmap Kullanımı

İlk olarak nmap kullanım syntaxından bahsedelim. Nmap için nmap [tarama türü] [opsiyonlar] [hedef tanımlama] şeklinde bir syntax kullanılır.

Hedef IP Tanımlama

nmap kullanırken hedef veya hedefler farklı farklı şekillerde tanımlanabilmektedir.

Tek ip adresini hedef olarak vermektedir.

nmap 10.0.2.54

54 ile 60 ip adresleri ve aralarındaki ip adreslerini de dahil edecek şekilde 7 ip adresini hedef olarak vermektedir.

nmap 10.0.2.54-60

255.255.0.0 subnetinde bulunan bütün ip adreslerini hedef olarak vermektedir.

nmap 10.0.2.0/16

exclude paramteresi ile 10.0.2.56 ip adresi taramadan hariç tutulabilmektedir.

nmap 10.0.2.0/16 –exclude 10.0.2.56

Domain adresini hedef olarak vermektedir.

nmap prismacsi.com

Host Keşif Aşaması

Nmap aracı ile farklı tarama türlerinde tarama işlemleri gerçekleştirebiliriz.

IP adresi verilen sistemlere ping atarak yanıt veren sistemlerin açık veya kapalı olduğunu tespit eder.

nmap -sP 10.0.7.0/16

IP adresi verilen sistemlere TCP SYN paketleri göndererek sistemlerin açık veya kapalı olduğunu tespit eder.

nmap -PS 10.0.7.0/16

IP adresi verilen sistemlere TCP ACK paketleri göndererek sistemlerin açık veya kapalı olduğunu tespit eder. SYN ve ACK paketleri göndermek güvenlik duvarlarını atlama ihtimalini artırmaktadır.

nmap -PA 10.0.7.0/16

UDP paketleri ile sistemlerin açık veya kapalı olduğunu tespit eder. Fakat udp den kaynaklı paketin ulaşıp ulaşmadığını net bir şekilde bilemediğimiz için sonucun kesin doğruluğu belirtilememektedir.

nmap -PU 10.0.7.0/16

ICMP Echo Request paketlerini sistemlere göndererek sistemin durumu hakkında bilgi edinilmektedir.

nmap –PE 10.0.7.0/16

ARP ping paketlerini sistemlere göndererek sistemin durumu hakkında bilgi edinilmektedir.

nmap –PR 10.0.7.0/16

Traceroute özelliği aktifleştirilerek, hedefe giden paketin izlediği yolun analizi yapılır.

nmap –traceroute 10.0.7.0/16

IP adresinden hostname bilgisini öğrenmek için aktifleştirilir.

nmap –R 10.0.7.0/16

NMAP CHEAT SHEET
Port Tarama Temelleri

Nmap ile yapacağımız port taramalarında portların durumunu ifade eden 6 ifade vardır. Bu ifadeler şu şekildedir;

  • Open: Port açık ve portu dinleyen bir uygulama var.
  • Closed: Port kapalı ve dinleyen bir uygulama da yok. Fakat port erişilebilir.
  • Filtered: Filtrelemeden dolayı nmap portun açık olduğunu tespit edememiştir.
  • Unfiltered: Portlar açık fakat erişilebilir olduğu tespit edilememiştir. ACK taramalarında görülür.
  • Open | Filtered: Portlar açık veya filtrelenmiş olduğu tespit edilememiştir.
  • Closed | Filtered: Portlar kapalı veya filtrelenmiş olduğu için tespit edilememiştir.
Port Tarama Teknikleri
1. SYN Taraması

Oldukça hızlı taram yaptığı için nmap aracında varsayılan olarak kullanılan tarama türüdür. SYN taramasından kullanıcıya open, closed veya filtered sonuçları dönebilir. SYN taramasında üçlü el sıkışma tamamlanamadığı için yarı açık tarama olarak da bilinir. Tarama işleminin sonucu, gönderilen pakete verilen cevaba göre belirlenir. Eğer SYN paketine cevap olarak RST+ACK dönerse, port kapalı; SYN+ACK dönerse port açıktır. SYN+ACK paketi geldiği zaman nmap RST paketi göndererek taramayı sonlandırır, el sıkışmasını tamamlanmadan bitirir.

nmap –sS 192.168.10.13

2. TCP Connect Taraması

SYN taramasının aksine tarama yapılan sistem ile üçlü el sıkışmayı tamamlar, sistem ile oturum açılır ve bu loglanır. Tarama işleminin sonucu, gönderilen pakete verilen cevaba göre belirlenir. Eğer SYN paketine cevap olarak RST+ACK dönerse, port kapalıdır ve bir sonraki porta bakılır; SYN+ACK dönerse port açıktır. SYN+ACK paketi geldiği zaman nmap ACK paketi göndererek el sıkışmasını tamamlamaktadır.

nmap –sT 192.168.10.13

3. UDP Taraması

UDP portlarının durumlarını analiz etmek için kullanılır. Tarama işleminin sonucu, gönderilen UDP paketlerine gelen cevaba göre değişmektedir. Eğer gelen cevap ICMP Port Unreachable ise port kapalıdır. Eğer gelen cevap UDP paketi ise port açıktır.

nmap –sU 192.168.10.13

4. NULL & FIN & XMAS Taraması

Üç tarama çeşidinde de gönderilen paketlere cevap olarak RST + ACK dönüyorsa port kapalıdır. Eğer hiç bir paket dönmüyorsa port açıktır. Gelen paket ICMP Unreachable ise port filtrelidir. NULL taramalarında gönderilen pakette herhangi bir flag yoktur. FIN taramalarında FIN flagi vardır, XMAS taramalarında ise FIN gibi farklı flagler bulunmaktadır.

5. ACK & Window Taraması

ACK taramaları güvenlik duvarının durumunu analiz etmek için kullanılmaktadır. ACK flagli gönderilen paketlere, RST paketi dönerse port Unfiltered durumundadır, ICMP Unreachable veya hiçbir cevap dönmezse port Filtered durumdadır. Window taramanın ACK taramasında farkı ise açık ve kapalı portları da gösteriyor olmasıdır. Aynı zamanda –scanflags parametresi ile de istenilen flag pakete dahil edilebilmektedir.

nmap –sA 10.0.13.123
nmap –sW 10.0.20.3

Port Tanımlama

Herhangi bir parametre verilmediği takdirde nmap aracı yaygın olarak kullanılan 1000 portu taramaktadır. Farklı parametreler ile port taramasını özelleştirebiliriz.

Sadece 80. Portu tarar.

nmap –sS –p80 10.0.23.21

1 ile 345 arasındaki portları tarar.

nmap –sS –p1-345 10.0.23.21

1 ile 345 arasındaki 80 portu hariç diğer portları tarar.

nmap –sS –p1-345 –exclude-ports 80 10.0.23.21

Sadece 80,22,443. portları tarar.

nmap –sS –p80 ,22,443 10.0.23.21

En sık kullanılan n portu tarar.

nmap –sS –top-ports <n> 10.0.23.21

Bütün portları tarar.

nmap –sS –p- 10.0.23.21

UDP 53. ve TCP 22. portu tarar.

nmap –sS –p U:53, T:22 10.0.23.21

NMAP CHEAT SHEET
Servis ve Versiyon Keşfi

Nmap aracı ile port taramalarının yanı sıra karşı sistemde hangi servislerin çalıştığı ve hangi versiyonlarda çalıştığı da öğrenilebilmektedir. Böylece karşı sistemi tanıma aşamasında daha detaylı bilgi edinebilmekteyiz.

nmap –sS –sV 10.0.12.123

Eğer tespit edilen servislerin yanında karşı makinede çalışan işletim sistemini de tespit etmek istersek aşağıdaki komutu çalıştırabiliriz.

nmap –sS –o 10.0.23.12

Fakat işletim sistemi tespiti yapılabilmesi için karşı makinede en az bir portun açık bir portun ise kapalı olması gerekmektedir.

NMAP CHEAT SHEET

Nmap Script Engine(NSE)

Nmap içerisinde bir çok script barındırmaktadır ve bu scriptler sayesinde zafiyet taraması, discovery ve exploit gibi işlemler ile karşı sistemlerin güvenliği test edilebilmektedir. Nmap açık kaynaklı bir araç olduğundan dolayı kendi NSE scriptinizi de ekleyebilmektesiniz. NSE scriptleri /usr/share/nmap/scripts dizini altında bulunmaktadır.

https ile başlayan scriptleri deneyecektir.

nmap –script “https*” 10.0.45.3

Tüm scriptleri kullanarak test eder.

nmap –sC 10.23.12.41

NMAP CHEAT SHEET

Güvenlik Sistemlerini Atlatma

Yapılan test sırasında karşı makinenin önünde firewall/IDS gibi güvenlik sistemleri bulunabilir. Bu sistemleri atlatmak için, paketi parçalama, ip spoofing gibi işlemler yapılabilmektedir.

Paketleri parçalayarak sistemde test etmektedir.

nmap –f 10.0.34.23

Manuel olarak MTU değeri atamak için kullanılmaktadır.

nmap –MTU (mtu değeri) 10.0.0.2

IP spoofing işlemi için kullanılmaktadır.

nmap –D spooflananip 10.0.2.34

Çıktı Formatları

Yapılan nmap taramaları sonucunda çıktılar farklı formatlarda olabilmektedir.

Normal nmap çıktısını file.txt dosyasına kaydeder.

nmap –sS –oN file.txt 10.0.23.41

XML formatında nmap çıktısını dosyaya kaydeder.

nmap –sS –oX file.xml 10.0.23.41

Düzenlenebilir nmap çıktısını vermektedir.

nmap –sS –oG file.txt 10.0.23.41

Tüm formatlarda nmap çıktısı vermektedir.

nmap –sS –oA file.txt 10.0.23.41

Ek Parametreler

-Pn: Ping atılmasının istenmediği durumlarda kullanılmaktadır. Host keşfi yapmaz, bütün portları açık düşünür. İşlemleri hızlandırmaktadır.
-h: Yardım almak için kullanılmaktadır.
-V: Nmap versiyonun kontrolü için kullanılmaktadır.
-v: Çıktı ayrıntılarının ayarında kullanılmaktadır.
-open: Yalnızca açık portların gösterilmesi için kullanılmaktadır.
-6: Ipv6 aktif etmek için kullanılmaktadır.
-A: Agresif tarama yapmak için kullanılmaktadır.
-ttl: time to live değerinin ayarlanmasında kullanılmaktadır.
-badsum: hatalı checksum değerine sahip paketler göndermektedir.
-T [0-5]: 0’dan 5’e kadar sayı girilerek tarama hızı ayarlanabilmektedir. 5 en hızlı tarama yapan argümandır.
-D: nmap tarama yaparken aynı zamanda farklı ip adreslerinden de paketler atarak logları karıştırır.
–spoof-mac: Mac spoof yapmak için kullanılmaktadır.

Blog postu ile ilgili bir sorunuz varsa bizimle iletişime geçebilirsiniz.

Size nasıl yardımcı olalım?

İhtiyacınız olan her an Prisma danışmanları yanı başınızda. Bizimle 7/24 iletişime geçebilirsiniz.


Sızma testi hizmetlerimizi incelediniz mi?