NMAP Nedir ? Nasıl Kullanılır ? İncelikleri Nelerdir ?
NMAP nedir ?
NMAP veya Network Mapper isminden de anlaşılabileceği gibi ağ haritalama işlemlerinde kullanılan ufak ama oldukça güçlü esnek ve kullanım alanı geniş bir araç. Nmap bazen bizim bir Penetration Test’ini sürdürürken yardımcımız olabileceği gibi bazen de sadece bir sorun üzerinde çalışırken açık olan Port’ları listeyebileceğiniz bir yardımcı oalrak görev yapıyor.
Bu kadar geniş kullanım alanı olan bir program olunca bizim için önemi de hayati derecelere ulaşıyor. Ben anlatımı KaliLinux üzerinden yapacağım. Buna rağmen istediğiniz Linux dağıtımında kullabilirsiniz. Buna ek olarak Zenmap adı verilen Windows platformu için üretilmiş hali de.
Terminal ekranı açıp nmap –help yaptığınızda Nmap hakkında geniş bir bilgi alabileceğiniz bir yardım sayfasına ulaşmış oluyorsunuz.
Burada çokca bilgi var ama ben onun üzerinden gitmek yerine daha çok gündelik kullanımı üzerine devam edeceğim.
Nmap’in kendine has bir söz dizimi var
nmap [tarama şekli] [diğer opsiyonlar] [hedef veya hedefler]
Yukarıda ki gibi anlatılabilir sözdizimi (Syntax’i). Buna aklınızdan çıkarmadığınız sürece ne istiyorsanız yazmak oldukça kolay. Burada ilk önce ne yapmayı hedeflediğimiz önemli. Eğer bir server üzerindeki herhangi bir portun kapalı veya açık olup olmadığını denetlemek istiyorsanız o zaman şu şekilde yazabilirsiniz
nmap [tarama şekli] [diğer opsiyonlar] [hedef veya hedefler]
nmap -p 80 microsoft.com
Nmap ile komutu yazdık -p ile port taramak istediğimizi belirttik ve 80 portunu istediğimizi belirttik ve hedefi verdik. Neyi nerede yapmasını istediğimizi belirttikten sonra işini yapmasını istedik araçtan o da bize sonucu verdi.
Hedefi belirtirken sadece bir ip adresi de verebilirsiniz bir ip bloğuda veya bir websitesi de yazabilirsiniz. Buradaki seçeneklerden bir kaçını aşağıda listeleyelim,
- nmap 10.10.34.10 (IPv4)
- nmap -6 2007:f0z0:1002:41::4 (IPv6)
- nmap serkanyildirim.me (Hostname)
- 10.10.34.0/24 (Bir IP bloğunu – Bu şekilde tarama yaptığınızda son oktetin tamamını 0’dan 255’e kadar tarayacaktır.)
- 10.10.34-255.0-255 (Bu tip bir aramada da 3 oktetin 34’ünden başlayıp 255’ine kadar son oktet’inde 0’dan 255’e kadar olan kısmını tarayacaktır ama ihtimaller çok olduğundan çok uzun sürecek bir taramadır)
- Bunların haricinde bir text dosyasına yazacağınız hedefleri de taratabilirsiniz. Bunu içinde sadece taratacağınız dosyanın path’ini vermeniz gerekecektir.
Yukarıda ki örneklere daha fazlalarını eklemek vya tarama şekillerini değiştirmek tabii ki mümkün. Başta da dediğim gibi nmap esnek bir tool.
Verdiğimiz bu örneklerin hepsi bir hedefe yönelik örneklerdi. O hedefin sadece belirli portlarını taramak istiyorsanız ne gibi alternatifleriniz var ufak ufak bunlara bakalım
- nmap -p 80 microsoft.com (Bunu yaparak hedefin sadece 80 Portunu kontrol etmiş olursunuz.)
- nmap -p 80 443 microsoft.com (Bu yolla da bir den fazla portu taramanız mümkün.)
- nmap -p microsoft.com (Bu seferde 65535 Portun tamamını tarar)
- nmap –top-ports 300 microsoft.com (Bu tarama şeklinde ise en çok kullanılan 300 portu tarar size.)
- nmap -F microsoft.com (En çok kullanılan 100 Portu tarar)
Bunlar da Port seçmek açısından kullanabileceğiniz seçeneklerden bir kaçı sadece. Burada ihtimalleri genişletmek mümkün tabii ki
Buraya kadar yaptığımız herşey hedef ile ilgiliydi. Şimdi bu adımdan sonra hedefimizi tarama seçeneklerimize bakalım.
- nmap -F -O microsoft.com (-O seçeneği, taradığınız hedefin işletim sistemini belirlemenizi sağlayan bir seçenektir)
- nmap -F -sV microsoft.com (-sV seçeneği, taradığınız hedefin açık Port’larında çalışan servislerin versiyon bilgilerini almak için kullanılır)
- nmap -F -sS microsoft.com (-sS seçeneği ile sadece SYN paketleri ile tarama işlemi yapılır)
- nmap -F -sT microsoft.com (-sT seçeneği ile sadece TCP paketleri ile tarama işlemi yapılır)
- nmap -F -sU microsoft.com (-sU seçeneği ile sadece UDP paketleri ile tarama işlemi yapılır)
- nmap -F -sN microsoft.com (-sN seçeneği ile sadece Host keşfi yapabilirsiniz)
Bu sorgularda fark ettiğiniz üzere hepsinin önüne -s ibaresi geliyor. Bu onların bir Scan seçeneği olduğu belirtmek için kullanılan bir ifade.
Bu işlemlerin içine bir tarama hızı veya tarama agresifliği seçeneğini ekleyebiliriz. Burada da 6 seçenek buluyor.
- -T0 En yavaş tarama tipidir. IDS’lerden kaçınmak için kullanılır.
- -T1 Bu da gayet yavaş bir yöntem. Bu da IDS’lerden kaçınmak için kullanılabilir.
- -T2 Normal taramaya göre 10 kere daha yavaş tarar. Daha az bir bant genişliği kullanır. Safe’de kalmak için iyi bir seçenektir.
- -T3 Standart tarama tipidir ve dinamik bir zamanlama modeli kullanır.
- -T4 Hızlı tarama tipidir. Tespit edilme olasılığınız artar.
- -T5 En hızlı tarama yöntemidir. Riski biraz daha fazladır.
Bütün bu tarama işlemlerinizi yaptınız ama bu yaptığınız işlemleri bir şekilde dışarı çıkarmak veya bir dökümana yazdırmaya ihtiyaç duyuyorsunuz işte o zaman da kullanabileceğiniz alternatifleriniz var;
- oN Standart bir çıktı ile bütün tarama sonuçlarını verir.
- oG Grep’lenebilir bir çıktı sunar.
- oX XML Formatında bir çıktı sunar.
Böylece hedefi, tarama tipini ve tarama seçeneklerini görmüş olduk. Bunları bir arada kullanmak konusunda gelince ise durum yukarıda anlattığım sözdiziminden farklı değil.
nmap -sSV --top-ports 300 microsoft.com -O --open -v
Bu sorgu size microsoft.com'un top 300 portundan açık olanlarını ekrana yaparken yansıtan bir yapısı var.
-sSV yaparak hem SYN hem de sürüm taraması yaparken,
--top-ports 3oo yazarak en çok kullanılan 300 portu taramasını,
-O ile İşletim Sistemi tespiti yapmayı,
--open diyerek de taradığınız 300 portun sadece açık olanlarını vermesini,
son olarak da -v ile taramayı visual olarak yapması yani tarama yaparken sonuçları aynı zamanda ekrana basmasını sağlayabilirsiniz.
Son olarak kısa bir özet geçmem gerekir ise;
- nmap 104.215.148.63 (Tek bir hedef için)
- nmap microsoft.com (Tek bir Host için)
- nmap 192.168.1.0/24 (Bir Subnet’i taramak için)
- nmap -F microsoft.com (En çok kullanılan 100 Port’u taramak için)
- nmap -p- microsoft.com (65535 Portu taramak için)
- nmap -sT microsoft.com (Taramak için TCP kullanak)
- nmap -A microsoft.com (İşletim sistemi ve Servis bulmak için)
- nmap -sV miccrosoft.com (Standart servis tespiti için)
- nmap –sU –A –PN –n –pU:19,53,123,161 –script=ntp-monlist,dns-recursion,snmp-sysdescr 192.168.1.0/24 (UDP tabanlı DDOS yansıması için)
- nmap –script=http-headers 192.168.1.0/24 (HTTP Header’ını almak için) (bunu kullanmak için Script’lerin tam lokasyonunu yazmanızda gerekecektir)
- nmap -sV -p 443 –script=ssl-heartbleed 192.168.1.0/24 (Heartbleed açığını aramak için)
kullanabilirsiniz. Buna ek olarak bir de benim standart da en çok kullandığım tarama sorgusu aşağıdaki gibidir. Bu yöntem ile dünya üzerinde en çok kullanılan 3328 Port’u tarayıp bu Port’larda kullanılan Servisleri ve kullanılan OS’u da bulabilirsiniz.
- nmap -sSV –top-ports 3328 microsoft.com -O –open -v (Bu da benim en çok kullandığım tarama yöntemi olarak buraya yazılabilir. 😉 )
Yukarıda yazdıklarım tabii Nmap için yeterli değil. Nmap’da kullanılabilecek yüzlerce çok faydalı sorgu var tabii ki. Bunları zamanla kendinize göre geliştirebilirsiniz veya nette yapacağınız aramalarla da çok daha fazlasına erişebilirsiniz. Siz üzerinde çalışmaya başladığında göreceksiniz ki gerçekten yararlı bir Tool ama şunu da unutmamak lazım NMAP her zaman %100 doğru bilgi de vermemektedir.
Filed under: Infosec,Makaleler - @ 28 December 2018 10:44
Tags: kali, kali-linux, linux, nasıl tarama yapılır, Nmap, Nmap nasıl kullanılır, nmap nedir, serkan yıldırım