Nmap, bir ağda hangi hizmetlerin çalıştığını, hangi cihazların açık olduğunu, hangi işletim sistemi kullandıklarını ve daha birçok bilgiyi toplamak için kullanılabilir. Nmap, ağ güvenliği profesyonelleri, sistem yöneticileri ve ağ yöneticileri gibi birçok farklı kullanıcı tarafından kullanılmaktadır.
Nmap kullanımı için öncelikle bilgisayarınıza kurmanız gerekir. Ubuntu üzerinde Nmap kurulumu için terminal üzerinden "sudo apt-get install nmap
" komutunu kullanabilirsiniz.
Nmap kullanımı çok kapsamlıdır ve birçok farklı seçenek içerir. Temel bir kullanım şekli ise, bir IP adresi veya bir host adını taramak için "nmap [IP adresi veya host adı]
" komutunu kullanmaktır. Bu komut, belirtilen hostun veya IP adresinin açık olan portlarını, hizmetlerin sürümlerini ve hatta işletim sistemini tespit edecektir. Örneğin, "nmap 192.168.1.1
" komutu, 192.168.1.1
IP adresinde açık olan portları, çalışan hizmetleri ve işletim sistemini tarayacaktır. Bu kendi yerel ağınızı temsil eder ve modeminizde açık portları ve çalışan servisleri gösterecektir.
NMAP ne tür servis ve cihazları gösterir? Spesifik kullanımı nasıldır?
Örneğin, bir web sunucusunun çalıştığını ve hangi portların açık olduğunu, bir mail sunucusunun çalıştığını, bir FTP sunucusunun çalıştığını, bir VPN sunucusunun çalıştığını, bir router'ın veya firewall'un çalıştığını gösterebilir. Nmap, ayrıca, cihazların IP adreslerini, MAC adreslerini, işletim sistemlerini ve hatta açık olan portların sürümlerini tespit edebilir.
Belirli bir port aralığını taramak için "-p" seçeneğini kullanabilirsiniz. Hizmet sürümlerini taramak için "-sV" seçeneğini, hazır scriptleri kullanmak için "-sC" seçeneğini ve işletim sistemi tespit etmek için "-O" seçeneğini kullanabilirsiniz.
Temel olarak parametreleri şöyledir;
-p
: Belirli bir port aralığını taramak için kullanılabilir. Örneğin, "nmap 192.168.1.1 -p 80,443" komutu, sadece 80 ve 443 portlarını tarayacaktır.-sV
: Hizmet sürümlerini taramak için kullanılabilir. Bu seçenek, taranan hizmetlerin sürümlerini tespit etmeye çalışacaktır.-sC
: Hazır scriptleri kullanmak için kullanılabilir. Nmap, belirli hizmetler veya portlar için hazır scriptler sunar.-O
: İşletim sistemi tespit etmek için kullanılabilir. Bu seçenek, taranan cihazların işletim sistemi türünü tespit etmeye çalışacaktır.
Ayrıca Nmap araç setinde nmap-nse
(Nmap Scripting Engine) var. Bu araç seti ile nmap komutlarına ek olarak çeşitli senaryolarda kullanabileceğiniz scriptleri kullanabilirsin
Teknik parametreler;
-sP
: Ping ile tarar-PS
: TCP-Syn ile tarama yapar-PA
: TCP-ACK ile tarama yapar-PE
: ICMP Echo Request taraması gerçekleştirir-PU
: UDP ping taraması-PR
: ARP ping ile tarama-traceroute
: Pakedin yol analizini gerçekleştirir-R
: ip adresinden hostname keşfi yapar-system-dns
: işletim sistemindeki DNS serverları kullanır
* Daha fazla parametre detayı için nmap -h komutunu kullanabilirsiniz
Ayrıca hedef belirlemek için şu yöntemleri de kullanabilirsiniz;
nmap 192.168.1.1-10
komutu ile 1 ve 10 dahil olmak üzere, bu aralıktaki tüm ipleri tarayabilirsiniz.nmap 192.168.1.0/24
komutu ile (0'dan başlatılmalı) bu ip ortamındaki 256 ip taranır.
Port Tarama Teknikleri Nelerdir?
TCP Connect Scan
Bu tarama türü, hedef sistemdeki bir porta bağlanmak için SYN paketi gönderir. Eğer port açıksa, hedef sistem SYN/ACK paketi gönderecek ve bu paketi alan tarama aracı ACK paketi göndererek porta bağlanır ve portun açık olduğunu rapor eder. Eğer port kapalıysa, hedef sistem RST paketi gönderecektir. Bu tarama türü, hedef sistemde açılan tüm oturumları loglar.
SYN Scan
Bu tarama türü, SYN paketi gönderir ve eğer hedef sistem SYN/ACK paketi gönderirse portun açık olduğunu rapor eder. Eğer hedef sistem RST paketi gönderirse portun kapalı olduğunu rapor eder. Bu tarama türü, oturumu tamamen açmaz.
UDP Scan
Bu tarama türü, hedef sistemdeki UDP portlarının açık veya kapalı olduğunu analiz eder. Tarama aracı hedef sisteme UDP paketi gönderir. Eğer hedef sistem ICMP Port Unreachable mesajı gönderirse, portun kapalı olduğu anlaşılır. Eğer hedef sistem UDP paketi gönderirse, portun açık olduğu anlaşılır.
NMAP çıktıları nasıl yorumlanmalı?
Nmap tarama sonucunda elde edilen çıktılar, web sitesi güvenliği açısından yorumlanarak tehlike oluştuğu yerler tespit edilir. Örneğin, açık olan portlar ve hizmetler, sistemlerde potansiyel güvenlik açıklarının olduğunu gösterir. Aşağıda web sitesi güvenliği için yorumlanması gereken bazı önemli çıktılar ve ne tür saldırılar alabilecekleri hakkında bazı bilgiler verilmiştir:
Açık olan portlar: Açık olan portlar, sistemde çalışan hizmetleri gösterir. Örneğin, 80 ve 443 portları web hizmetleri için açık olmalıdır. Ancak, gereksiz olarak açık olan portlar, sisteme saldırılar için bir kapı açabilir. Örneğin, Telnet veya FTP gibi eski protokoller güvenli değildir ve sisteme saldırılar için kolay bir giriş noktası oluşturabilir. Bu nedenle, gereksiz olarak açık olan portları kapatmalı veya yetkisiz erişimi engellemek için güvenlik önlemleri almalısınız.
Hizmet sürümleri: Nmap tarama sonucunda hizmet sürümleri de listelenir. Güncel olmayan veya zayıf hizmet sürümleri, sisteme saldırılar için bir fırsat sunabilir. Örneğin, eski bir PHP sürümü, sisteme SQL injection saldırılarına açık olabilir. Bu nedenle, hizmet sürümlerini sürekli olarak kontrol etmeli ve güncellemeler yapmalısınız.
İşletim sistemi: Nmap tarama sonucunda işletim sistemi de tespit edilir. Güncel olmayan veya zayıf işletim sistemleri, sisteme saldırılar için bir fırsat sunabilir. Örneğin, Windows XP işletim sistemi, artık desteklenmediği için daha yüksek bir risk taşıyabilir. Bu nedenle, işletim sistemi sürekli olarak güncellemeler yapılmalı ve güncel olmayan sistemlerin kullanımından kaçınılmalıdır.
Açık olan hizmetler: Nmap tarama sonucunda açık olan hizmetler de listelenir. Bu hizmetler, sisteme saldırılar için fırsat sunabilir. Örneğin, web hizmetleri için açık olan hizmetler, sisteme SQL injection, cross-site scripting veya cross-site request forgery gibi saldırılar için açık olabilir. Bu nedenle, hizmetlerin güvenliği sürekli olarak kontrol edilmeli ve güvenlik açıkları tespit edildiğinde, hemen güncellemeler yapılmalıdır.
Genel olarak, Nmap tarama sonucunda elde edilen çıktılar, sisteme saldırılar için fırsat sunan noktaları tespit etmek için kullanılabilir. Bu nedenle, sistemlerde güvenlik açıkları tespit edildiğinde, hemen güncellemeler yapılmalı ve gerekli önlemler alınmalıdır. Örneğin, gereksiz olarak açık olan portlar kapatılmalı, hizmet sürümleri güncellenmeli, işletim sistemi güncel olmalı ve hizmetler güvenliği sürekli olarak kontrol edilmelidir. Ayrıca sistemde çalışan tüm uygulamaların güncel olduğundan emin olunmalı, yedekler alınmalı ve kullanıcı yetkilendirmeleri düzenli olarak kontrol edilmelidir. Bu önlemler sistemi saldırılara karşı daha güvenli hale getirecektir.
Ayrıca çıktıları farklı formatlarda alarak daha rahat inceleyebilmeniz için şu parametreleri kullanabilirsiniz;
-sS -oN myfile.txt
: NMAP çıktısını olduğu gibi belirttiğiniz dosya adıyla kaydeder.-sS -oX myfile.xml
: Çıktıyı XML olarak verir-sS -oG myfile.txt
: Düzenlenebilir nmap çıktısı aktarır-sS -oA myfile
: NMAP'de yerleşik tüm formatlarda çıktı verir
Sonuç olarak
Web sitenizin, ağınızın, yazılım servislerinizin güvenliğini sağlamak için ilk adım olarak NMAP kullanmanız iyi bir başlangıç olacaktır. Gereksiz port ve servisleri kapatmak, gerekli olanları ise daha güvenli hale getirmek için test etmelisiniz.