
İçindekiler
Nmap, piyasadaki en popüler ücretsiz ağ keşif araçlarından biridir. Nmap Son 10 yılda program, ağlarını haritalandırmak ve kapsamlı ağ envanterleri yürütmek isteyen ağ yöneticileri için çekirdek bir program olarak ortaya çıkmıştır. Kullanıcının ağındaki canlı ana bilgisayarları bulmasının yanı sıra açık bağlantı noktalarını ve işletim sistemlerini taramasını sağlar. Bu makalede, Nmap’i nasıl kuracağınızı ve Nmap parametrelerini öğreneceksiniz.
Nmap nedir ne işe yarar sorusuna cevap olarak, Windows Komut İstemi’ne benzer bir komut satırı etrafında ortalanmış olarak çalışır, ancak daha deneyimli kullanıcılar için bir GUI arayüzü mevcuttur. Nmap’i kullanırken, kullanıcı basitçe komutları girer ve metin tabanlı arayüz aracılığıyla komut dosyalarını çalıştırır. Güvenlik duvarları, yönlendiriciler, IP filtreleri ve diğer sistemler arasında gezinebilirler. Özünde, Nmap kurumsal ölçekli ağlar için tasarlanmıştır ve binlerce bağlı cihazı tarayabilir.
Nmap’in ana kullanımlarından bazıları bağlantı noktası taraması, ping taramaları, işletim sistemi algılama ve sürüm algılamayı içerir. Program, bir ağdaki mevcut ana bilgisayarların yanı sıra hangi hizmetleri ve işletim sistemlerini çalıştırdıklarını belirlemek için IP paketlerini kullanarak çalışır. Nmap, Linux’tan Free BSD’ye ve Gentoo’ya kadar birçok farklı işletim sisteminde mevcuttur. Nmap ayrıca son derece aktif ve canlı bir kullanıcı destek topluluğuna sahiptir. Bu makalede, yere koşmanıza yardımcı olmak için Nmap’in temellerini açıklayacağım.
Nmap ile Ağ ve Paket Analizi
Nmap gibi ağ çözümleyicileri, bir dizi nedenden ötürü ağ güvenliği için gereklidir. Saldırganları belirleyebilir ve bir ağ içindeki güvenlik açıklarını test edebilirler. Siber güvenlik söz konusu olduğunda, paket trafiğiniz hakkında ne kadar çok şey bilirseniz, saldırıya karşı o kadar hazırlıklı olursunuz. Ağınızı aktif olarak taramak, olası saldırılara karşı hazırlıklı olmanızı sağlamanın tek yoludur.
Bir ağ analizcisi veya paket dinleyicisi olarak Nmap son derece çok yönlüdür. Örneğin, kullanıcının ağında aktif olan herhangi bir IP’yi taramasına izin verir. Daha önce görmediğiniz bir IP tespit ederseniz, bunun yasal bir hizmet mi yoksa dışarıdan bir saldırı mı olduğunu belirlemek için bir IP taraması çalıştırabilirsiniz.
Nmap, ücretsiz olarak geniş bir işlev yelpazesi sunduğu için birçok yönetici için başvurulan ağ analizörüdür.
Ping Taraması Nasıl Çalıştırılır
Ağ yönetiminin temellerinden biri, ağınızdaki etkin ana bilgisayarları tanımlamak için zaman ayırmaktır. Nmap’te bu, bir ping taraması kullanılarak elde edilir. Bir ping taraması (bir alt ağ komutunda IP keşfetme olarak da adlandırılır), kullanıcının IP adreslerinin çevrimiçi olup olmadığını belirlemesini sağlar. Ayrıca, bir ana bilgisayar keşfi yöntemi olarak da kullanılabilir. ARP ping taramaları, LAN ağlarındaki ana bilgisayarları algılamanın en iyi yollarından biridir.
ARP ping taraması çalıştırmak için, komut satırına aşağıdaki komutu yazın.
nmap -sp 192.100.1.1/24
Bu, toplam IP adresi sayısıyla birlikte ping isteklerinize yanıt veren ana bilgisayarların bir listesini döndürür.
Bu aramanın listelenen ana bilgisayarlara herhangi bir paket göndermediğini unutmamak önemlidir. Ancak Nmap, adlarını tanımlamak için listelenen ana bilgisayarlarda ters DNS çözümlemesi çalıştırır.
Port Tarama Teknikleri
Bağlantı noktası taraması söz konusu olduğunda, Nmap’te çeşitli farklı teknikler kullanabilirsiniz.
Daha yeni kullanıcılar, SYN taramalarıyla çoğu sorunu çözmeye çalışacaktır, ancak bilginiz geliştikçe, bu diğer tekniklerden bazılarını da dahil edebileceksiniz. Aynı anda yalnızca bir bağlantı noktası tarama yöntemi kullanabileceğinizi unutmamak önemlidir (ancak bir SCTP ve TCP taramasını birlikte birleştirebilirsiniz).
TCP SYN Taraması
sS TCP SYN Scan
TCP SYN Scan -map emrinde hızlı port tarama tekniklerinden biridir. Güvenlik duvarıyla korunmayan herhangi bir ağda saniyede binlerce bağlantı noktasını tarayabilirsiniz.
Ayrıca, faaliyetlerinize dikkat çeken TCP bağlantılarını tamamlamadığı için gizlilik açısından da iyi bir tarama tekniğidir. Bir SYN paketi göndererek ve ardından bir yanıt bekleyerek çalışır. Bir alındı bildirimi, açık bir bağlantı noktasını belirtirken, hiçbir yanıt filtrelenmiş bir bağlantı noktasını belirtir. Bir RST veya sıfırlama, dinlemeyen bağlantı noktalarını tanımlar.
TCP Bağlantı Taraması
sT TCP Connect Scan
Kullanıcı bir SYN taraması çalıştıramadığında, bir TCP Bağlantı Taraması ana alternatif TCP taramasıdır. TCP bağlantı taraması altında, kullanıcı ağ ile bağlantı kurmak için bir bağlantı sistem çağrısı yayınlar. Paket yanıtlarını okumak yerine, Nmap bu çağrıyı her bağlantı girişimi hakkında bilgi almak için kullanır. Bir TCP bağlantı taramasının en büyük dezavantajlarından biri, açık bağlantı noktalarını hedeflemenin SYN taramasından daha uzun sürmesidir.
UDP Taraması
sU UDP Scan
Bir UDP hizmetinde bağlantı noktası taraması çalıştırmak istiyorsanız , en iyi eyleminiz UDP taramalarıdır. UDP, ağınızdaki DNS, SNMP ve DHCP gibi bağlantı noktalarını taramak için kullanılabilir. Bunlar özellikle önemlidir çünkü saldırganların yaygın olarak istismar ettiği bir alan. Bir UDP taraması çalıştırırken, aynı anda bir SYN taraması da çalıştırabilirsiniz. Bir UDP taraması çalıştırdığınızda, hedeflenen her bağlantı noktasına bir UDP paketi göndermiş olursunuz. Çoğu durumda, boş bir paket gönderiyorsunuz (53 ve 161 gibi bağlantı noktalarının yanı sıra). Paketler iletildikten sonra bir yanıt almazsanız, bağlantı noktası açık olarak sınıflandırılır.
SCTP INIT Bağlantı Noktası Taraması
sY SCTP INIT Scan
SCTP INIT port tarama kapakları SS7 ve sigtran hizmetler ve teklifler hem TCP ve UDP protokolleri bir arada. Syn taraması gibi, SCTP INIT Scan inanılmaz derecede hızlıdır ve her saniye binlerce bağlantı noktasını tarayabilir. Ayrıca, SCTP sürecini tamamlamadığı için gizliliği korumak istiyorsanız iyi bir seçimdir. Bu tarama, bir INIT parçası göndererek ve hedeften bir yanıt bekleyerek çalışır. Başka bir INIT-ACK öbeğine sahip bir yanıt, açık bir bağlantı noktasını belirtirken, bir ABORT parçası, dinlemeyen bir bağlantı noktasını belirtir. Birden fazla yeniden iletimden sonra yanıt alınmazsa bağlantı noktası filtre olarak işaretlenecektir.
TCP Null Taraması
sN TCP NULL Scan
Bir TCP Null tarama emrinde daha kurnaz tarama tekniklerinden biridir. Bu, TCP RFC’de açık ve kapalı bağlantı noktalarını gösteren bir boşluktan yararlanarak çalışır. Esasen, SYN, RST veya ACK bitleri içermeyen herhangi bir paket, bağlantı noktası kapalıysa geri dönen bir RST ile bir yanıt isteyecektir ve bağlantı noktası açıksa yanıt vermeyecektir. Bir TCP NULL taramasının en büyük avantajı, yönlendirici filtreleri ve güvenlik duvarları arasında dolaşabilmenizdir. Bunlar gizlilik için iyi bir seçim olsa da, yine de saldırı tespit sistemleri (IDS) tarafından tespit edilebilirler.
Ana Bilgisayar Taraması
Bir ağdaki etkin ana bilgisayarları tanımlamak istiyorsanız, bunu yapmanın en iyi yolu ana bilgisayar taramasıdır. Bir ana bilgisayar taraması, bir ağ içindeki tüm sistemlere ARP istek paketleri göndermek için kullanılır. Bir IP aralığında belirli bir IP’ye bir ARP isteği gönderecek ve ardından aktif ana bilgisayar, MAC adresini bir ‘ana bilgisayar hazır’ mesajıyla gönderen bir ARP paketi ile yanıt verecektir. Bu mesajı tüm aktif ev sahiplerinden alacaksınız. Bir ana bilgisayar taraması çalıştırmak için şunu girin.
nmap -sP IP
Ana Bilgisayar Adlarını Tanımlayın
Kullanabileceğiniz en basit ve en kullanışlı komutlardan biri -sL komutudur, Nmap’e seçtiğiniz IP üzerinde bir DNS sorgusu çalıştırmasını söyler. Bu yöntemi kullanarak, ana bilgisayara tek bir paket göndermeden bir IP için ana bilgisayar adlarını bulabilirsiniz. Örneğin, aşağıdaki komutu girin.
nmap -sL 192.100.0.0/24
Bu, taranan IP’lerle ilgili bir isim listesi döndürür ve bu, belirli IP adreslerinin gerçekte ne için olduğunu belirlemek için inanılmaz derecede yararlı olabilir.
OS Tarama
Nmap’in kullanışlı işlevlerinden bir diğeri de işletim sistemi algılamadır. Bir aygıtın işletim sistemini algılamak için Nmap, TCP ve UDP paketlerini bir bağlantı noktasına gönderir ve yanıtını analiz eder. Nmap daha sonra TCP ISN örneklemesinden IP ID örneklemesine kadar çeşitli testleri çalıştırır ve bunu 2.600 işletim sisteminden oluşan dahili veritabanıyla karşılaştırır. Bir eşleşme veya parmak izi bulursa, sağlayıcının adı, işletim sistemi ve sürümünden oluşan bir özet sağlar.
Bir ana bilgisayarın işletim sistemini algılamak için aşağıdaki komutu girin.
nmap -O 192.168.5.102
–O
Komutu kullanmak için bir açık ve bir kapalı bağlantı noktasına ihtiyacınız olduğunu unutmamak önemlidir.
Sürüm Tespiti
Sürüm algılama, bir bilgisayarın hangi yazılım sürümünü çalıştırdığını bulmanızı sağlayan bir komuta verilen addır. Onu diğer taramalardan ayıran şey, bağlantı noktasının aramasının odak noktası olmamasıdır. Bunun yerine, açık bir port tarafından verilen bilgileri kullanarak bir bilgisayarın hangi yazılımı çalıştırdığını tespit etmeye çalışır. -sV
Komutu yazarak ve tercih ettiğiniz IP’yi seçerek sürüm algılamayı kullanabilirsiniz.
nmap -sV 192.168.1.1
Ayrıntıları Artırma
Nmap üzerinden herhangi bir taramayı çalıştırırken daha fazla bilgiye ihtiyacınız olabilir. Ayrıntılı komut -v’yi girmek, size Nmap’in ne yaptığı hakkında ek ayrıntılar sağlayacaktır. Nmap’te -4’ten 4’e kadar dokuz ayrıntı düzeyi mevcuttur.
- Seviye -4 : Çıktı sağlamaz. (Örneğin yanıt paketlerini görmezsiniz.)
- Seviye -3 : -4’e benzer ancak bir Nmap komutunun başarısız olup olmadığını size göstermek için hata mesajları da sağlar.
- Seviye -2 : Yukarıdakileri yapar ancak aynı zamanda uyarılar ve ek hata mesajları içerir.
- Seviye -1 : Sürüm, başlangıç zamanı ve istatistikler gibi çalışma zamanı bilgilerini gösterir.
- Seviye 0 : Gönderilen ve alınan paketlerin yanı sıra diğer bilgileri görüntüleyen varsayılan ayrıntı düzeyidir.
- Seviye 1 : Seviye 0 ile aynıdır ancak aynı zamanda protokol ayrıntıları, bayraklar ve zamanlama hakkında ayrıntılar sağlar.
- Seviye 2 : Gönderilen ve alınan paketler hakkında daha kapsamlı bilgi gösterir.
- Seviye 3 : Gönderilen ve alınan paketin tam ham transferini gösterir.
- Seviye 4 : Daha fazla bilgi içeren 3. seviye ile aynıdır.
Ayrıntı düzeyini artırmak, taramalarınızı optimize etmenin yollarını bulmak için harikadır. Erişiminiz olan bilgi miktarını artırırsınız ve ağ altyapınızda hedefli iyileştirmeler yapmak için kendinize daha fazla bilgi sağlarsınız.
Nmap Komut Dosyası Motoru
Nmap’ten en iyi şekilde yararlanmak istiyorsanız, Nmap Scripting Engine’i (NSE) kullanmanız gerekecek. NSE, kullanıcıların çeşitli ağ görevlerini otomatikleştirebilmeleri için Lua’da komut dosyaları yazmalarına izin verir. NSE ile bir dizi farklı kod kategorisi oluşturulabilir.
- Auth : Bir hedef sistemde kimlik doğrulama bilgileriyle çalışan veya bunları atlayan komut dosyalarıdır.
- Broadcast : Genellikle yerel ağda yayınlayarak ana bilgisayarları keşfetmek için kullanılan komut dosyalarıdır.
- Brute : Uzak bir sunucuya erişmek için kaba kuvvet kullanan komut dosyalarıdır.
- Default : Komut dosyaları, hız, kullanışlılık, ayrıntı, güvenilirlik, müdahaleci olma ve gizliliğe dayalı olarak Nmap üzerinde varsayılan olarak ayarlanır.
- Discovery : Genel kayıtları, dizin hizmetlerini ve SNMP özellikli aygıtları arayan komut dosyalarıdır.
- Dos : Hizmet reddine neden olabilecek komut dosyaları. Hizmetleri test etmek veya saldırmak için kullanılabilir.
- Exploit : Ağ güvenlik açıklarından yararlanmak için tasarlanmış komut dosyalarıdır.
- External : Whois gibi harici veritabanlarına veri gönderen komut dosyalarıdır.
- Fuzzer : Paketler içinde rastgele alanlar gönderen komut dosyaları
- Intrusive : Hedeflenen sistemi çökertme ve diğer yöneticiler tarafından kötü niyetli olarak yorumlanma riski taşıyan komut dosyalarıdır.
- Malware : Bir sisteme kötü amaçlı yazılım bulaşıp bulaşmadığını test etmek için kullanılan komut dosyalarıdır.
- Safe : İzinsiz giriş olarak kabul edilmeyen, boşluklardan veya kilitlenme hizmetlerinden yararlanmak için tasarlanmış komut dosyalarıdır.
- Version : Sürüm algılama özelliği altında kullanılır, ancak açıkça seçilemez.
- Vuln : Güvenlik açıklarını kontrol etmek ve bunları kullanıcıya bildirmek için tasarlanmış komut dosyalarıdır.
NSE, ilk başta kafanızı karıştırmak için oldukça karmaşık olabilir, ancak ilk öğrenme eğrisinden sonra, gezinmek çok daha kolay hale gelir.
Örneğin, -sC komutunu girmek, platforma özgü yaygın betikleri kullanmanıza izin verir. Kendi komut dosyalarınızı çalıştırmak istiyorsanız, bunun yerine –script seçeneğini kullanabilirsiniz. Çalıştırdığınız herhangi bir komut dosyasının sisteminize zarar verebileceğini unutmamak önemlidir, bu nedenle komut dosyalarını çalıştırmaya karar vermeden önce her şeyi iki kez kontrol edin.