Nmap ile Host-Port-Ağ tarama

4.2 Nmap ile Host-Port-Ağ Tarama

4.2.1 NMAP

Nmap, bilgisayar ağları uzmanı Gordon Lyon(Fyodor) tarafından C/C++ ve Phyton programlama dilleri kullanılarak geliştirilmiş bir güvenlik tarayıcısıdır. Taranan ağın haritasını çıkarabilir ve ağ makinalarında çalışan servislerin durumlarını, işletim sistemlerini, portların durumlarını gözlemleyebilir.

4.2.2 NMAP ile Networkteki Açık Sunucuların Bulunması

4.2.2.1 Ping Scan

nmap -sP 192.168.2.0/24

Ping scan belirtilen hedef veya hedeflerin 80. portuna ICMP echo request ve TCP ACK (root veya Administrator değilse SYN) paketleri gönderir. Hedef veya hedeflerden dönen tepkilere göre bilgiler çıkartılır. Hedef/hedefler Nmap ile aynı yerel ağda bulunuyorsa, Nmap hedef/hedeflerin MAC adreslerini ve ilgili üreticiye ait bilgileri (OUI) sunar. Bunun sebebi, Nmap varsayılan olarak ARP taraması, -PR, yapar. Bu özelliği iptal etmek için —send-ip seçeneği kullanılabilir. Ping scan portları taramaz yada başka tarama tekniklerini gerçekleştirmez. Ping scan network envanteri vb. işlemler için idealdir. 

 

4.2.2.2 Tarama

Nmap herhangi bir client veya serverı birçok farklı şekilde tarama yeteneğine sahiptir. Nmapin asıl gücü farklı tarama tekniklerinden gelir. Protocol bazlı (TCP, UDP vb.) tarayabileceğimiz gibi, belirli aralıktaki ipler, subnetler ve üzerlerinde çalışan port ve servisleride taranabilir.

Portların Taramalara Verebileceği Cevaplar

Tarama sonuçlarında ortaya çıkabilecek port durumları aşağıdaki gibidir:

Open : Portlar açık ve aktif olarak TCP ve UDP bağlantısı kabul eder.
Closed : Portlar kapalı ancak erişilebilir. Üzerlerinde dinlenilen aktif bir bağlantı yoktur.
Filtered : Dönen tepkiler bir paket filtreleme mekanizması tarafından engellenir. Nmpa portun açık olduğuna karar veremez.
Unfiltered : Portlar erişilebilir ancak Nmap portların açık veya kapalı olduğuna karar veremez. (Sadece ACK scan için)
Closed|Filtered : Nmap portların kapalı yada filtreli olduğuna karar veremez. (Sadece Idle Scan için)
Taramalar esnasında Nmap’in performansının düşmemesi ve çıktıların daha düzenli olması amacıyla -v yada -vv seçenekleri kullanılabilir. Bu seçenekler vasıtasıyla Nmap bize sunacağı çıktıkları limitler. -vv kullanılırsa, Nmape ait istatistikler görülmez ve en sade çıktı alınır.

4.2.2.3 Tarama Türleri

4.2.2.3.1 Tcp Syn Scan

Tarama yapan makinanın hedef makinaya TCP SYN bayraklı paket göndererek başlattığı bu tarama türünde, tarama esnasında muhtemelen portların çoğu kapalı olacaktır. Kapalı olduğu durumlarda hedef makinaya RST+ACK bayraklı paket döndürür. Açık olduğu durumda ise SYN+ACK bayraklı paket dönecektir. Tarama yapan makinada RST bayraklı paket göndererek bağlantıyı koparır ve böylelikle üçlü el sıkışma tamamlanmaz.

4.2.2.3.2 Tcp Connect Scan

Tarama yapan makinanın gerçekleştirdiği TCP Connect Scan, kapalı portlara yapıldığı zaman dönecek cevaplar TCP SYN paket dönecektir. Ancak açık olduğu durumlarda Scan gibi olacaktır, RST+ACK bayraklı TCP SYN Scan tersine, hedef makinanın göndereceği SYN+ACK bayraklı paketi, taramayı gerçekleştiren makina ACK bayraklı paket göndererek cevaplar ve üçlü el sıkışma tamamlanmış olur.

Bu taramayı gerçekleştirmek için aşağıdaki komut kullanılmalıdır:

nmap -sT -v [Hedef_IP]

4.2.2.3.3 Versiyon Tespit Etme

Version Detection, bütün portların bilgilerini bulabilecek herhangi bir tarama türü ile beraber çalışır. Eğer herhangi bir tarama türü belirtilmezse yetkili kullanıcılar (root, admin) için TCP SYN, yetkisiz kullanıcılar için TCP Connect Scan çalıştırılır. Eğer açık port bulunursa, Version Detection Scan hedef makina üzerinde araştırma sürecini başlatır. Hedef makinanın uygulamalarıyla direkt olarak iletişime geçerek elde edebileceği kadar bilgi almaya çalışır.

Bu taramayı gerçekleştirmek için aşağıdaki komut kullanılmalıdır:

nmap -sV -v [Hedef_IP]

4.2.2.3.4 Udp Scan

Tarama yapan makinanın göndereceği UDP paketine ICMP Port Unreachable cevabı döndüren hedef makina kapalı kabul edilecektir. Herhangi bir tepki döndürmeyen makina open|filtered kabul edilecektir. UDP paketiyle cevap döndüren hedef makinaya ait port açık kabul edilecektir.

Bu taramayı gerçekleştirmek için aşağıdaki komut kullanılmalıdır:

nmap -sU -v [Hedef_IP]

4.2.2.3.5 Idle Scan

Kaynak makinanın hedef makinayı tarama esnasında aktif oalrak rol almadığı bir türdür. Kaynak makinaya “zombie” olarak nitelendiren makinalar üzerinden hedef makinayı tarayarak bilgi toplar.
Bu taramayı gerçekleştirmek için aşağıdaki komut kullanılmalıdır:
nmap -sL -v [Zombie_IP] [Hedef_IP]

4.2.2.3.6 OS İzi Belirleme

nmap [Hedef_IP] -O -n

Nmap taramalarında -o parametresi ile hedef sistemin işletim sistemini belirleyen taramayı gerçekleştirebiliriz.

4.2.2.3.7 Nmap Script Motoru (NSE)

NSE, varolan Nmap yeteneklerini geliştirmek ve Nmap dahilindeki formatlarla çıktı alabilmek için kullanılan bir yapıdır. NSE scriptlerinin içerdiği bazı örnekler aşağıdaki gibidir:

-Geliştirilmiş Ağ Keşfi : Whois lookup istekleri ve ek protokol sorguları gerçekleştirir. Ayrıca erişilebilir network paylaşımları gibi dinlenilen servislerden bilgi toplamak amacıyla istemci gibi davranır.

-Geliştirilmiş Versiyon Keşfi : Karmaşık versiyon araştırmaları yapar ve servislere brute force saldırısı düzenler.

-Zafiyet Keşfi : Özel faliyetlerin kontrolü amacıyla araştırma yapar.

-Zararlı Yazılım Keşfi : Virüs, worm ve trojan gibi zararlı yazılımların bulunması amacıyla araştırmalar yapar.

-Zafiyeti Kullanmak : Bulunan zafiyetleri kullanmak amacıyla scriptleri çalıştırır.

NSE kullanmanın en çabuk yolu aşağıdaki gibidir :

nmap -sC 192.168.1.0/24

Yukardaki seçenek vasıtasıyla NSE bütün Güvenli ve Zorla giriş scriptlerini çalıştıracaktır. Eğer daha özel bir scriptin çalıştırılması istenirse — script seçeneği kullanılarak istenilen bir kategoriye ait scriptler çalıştırılabilir:

nmap — script=vuln 192.168.1.34

Sadece tek bir script çalıştırılmak istenirse aşağıdaki seçenek kullanılmalıdır:

nmap —script=promiscuous.nse 192168.1.0/24

Belirli bir dizinin altındaki scriptleri çalıştırmak istenirse aşağıdaki seçenek kullanılmalıdır:

nmap —script=/my-scripts 192.168.1.0/24

Bütün scriptlerin çalışması istenirse aşağıdaki seçenek kullanılmalıdır:

nmap —script=all 192.168.1.55

(—script-updatedb: Scriptlerin bulunduğu veritabanını günceller.)

4.2.2.3.8 Güvenlik Ürünleri ve Nmap

Nmap, taranılacak olan hedeflerin önünde bulunan güvenlik ürünlerinin kısıtlamasıyla nedeniyle, istenilen tam olarak çalışamayabilir. Günümüzdeki güvenlik ürünleri Nmap ve taramalarını rahatlıkla yakalayabiliyor. Ancak nmap kendi bünyesinde bulunan bazı seçenekler vasıtasıyla bu güvenlik ürünlerini atlatabilir. Fragmantasyon, spoofing ve packet manipulating seçenekleri vasıtasıyla Nmap güvenlik ürünlerini atlatıp, taramalarını daha rahat bir şekilde gerçekleştirebilir.

4.2.2.3.9 Fragmentation

Nmap ile fragmantaston yapılmak istenirse, -f, -f —f veya —mtu seçenekleri kullanılmalıdır.

Eğer parçalanmak istenilen paketin maksimum boyutu, IP başlık bilgisinden sonra, 8 byte olması isteniyorsa aşağıdaki komut kullanılmalıdır:

nmap —f [Hedef_IP]

Eğer parçalanmak istenilen paketin maksimum boyutu, IP başlık bilgisinden sonra, 16 byte olması isteniyorsa aşağıdaki komut kullanılmalıdır:

nmap —f —f [Hedef_IP]

Eğer parçalanmak istenilen paketin maksimum boyutui IP başlık bilgisinden sonra, el ile girilerek belirlenmek isteniyorsa aşağıdaki komut kullanılmalıdır :

nmap — mtu <Sayı> [Hedef_IP]

4.2.2.3.10 SPOOFİNG

-spoof-mac : Spoof your MAC Address

-S : Spoof source address

-D : Cloak a scan with decoys

spoof-port : Spoof source port

nmap -D [Spoofed_ip] [Target_IP]

nmap -S [Spoofed_ip] -e interface [Target_IP]

Örnek:

nmap -S 192.168.100.65 -e eth 0 -sS -sV -v -n -PN 192.168.1.10

nmap -D 192.168.100.65,192.168.200.65 -e -eth0 -sV -v -n -PN 192.168.1.10

You may also like...

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir