Nmap Nedir? Basit Kullanım Örnekleri

Nmap Nedir? Basit Kullanım Örnekleri

Ağ yöneticileri, BT yöneticileri ve güvenlik uzmanları, ağlarında tam olarak neyin çalıştığını ve içinde gizlenen güvenlik açıklarını sürekli olarak kontrol eden hiç bitmeyen bir savaşla karşı karşıyadır. Ağ haritalama ve güvenlik denetimi için çok sayıda izleme aracı mevcut olsa da, hiçbir araç Nmap gibi çok yönlülük ve kullanılabilirlik kombinasyonunu geçememektedir ve bu da onu yaygın olarak kabul edilen standart bir araç olmasını sağlamıştır.

Nmap Nedir?

Network Mapper’ın kısaltması olan Nmap, güvenlik açığı taraması ve ağ keşfi için ücretsiz, açık kaynaklı bir araçtır. Ağ yöneticileri, sistemlerinde hangi cihazların çalıştığını belirlemek, mevcut ana bilgisayarları ve sundukları hizmetleri keşfetmek, açık portlarını bulmak ve güvenlik risklerini tespit etmek için Nmap’i kullanmaktadır.

Nmap, tek ana bilgisayarların yanı sıra yüz binlerce cihazı ve çok sayıda alt ağı kapsayan geniş ağları izlemek için kullanılabilmektedir.

Nmap yıllar içinde gelişmesine ve son derece esnek olmasına rağmen, özünde, sistem portlarına ham paketler göndererek bilgi toplayan bir port tarama aracıdır. Yanıtları dinler ve portların açık, kapalı veya bir şekilde, örneğin bir güvenlik duvarı tarafından filtrelenmiş olup olmadığını belirler. Port taraması için kullanılan diğer terimler arasında port discovery veya enumeration bulunmaktadır.

Genellikle port taraması için kullanılsa da, Nmap birçok ek özellik sunar:

  • Host keşfi
  • İşletim Sistemi Tespiti
  • Servis Versiyon Tespiti
  • DNS adları, cihaz türleri ve MAC adresleri gibi hedef hakkında ağ bilgileri
  • Bilinen güvenlik açıklarının taranması

Port taraması gerçekleştirildiğinde keşfettiği portları genellikle üç kategoriden birine sınıflandırır:

  • Open : Hedef ana bilgisayar, bu portu dinlediğini belirten bir paketle yanıt verir. Ayrıca tarama için kullanılan hizmetin (genellikle TCP veya UDP) de kullanımda olduğunu gösterir.
  • Closed : Hedef ana bilgisayar istek paketini aldı, ancak bu portta dinleme hizmeti olmadığını belirten bir yanıtla yanıt verir.
  • Filtered : Bir port taraması, bir istek paketi gönderildiğinde ancak yanıt alınmadığında bu portu filtrelenmiş olarak kategorilere ayırır. Bu genellikle istek paketinin filtrelenip bir güvenlik duvarı tarafından düşürüldüğünü gösterir.

Nmap başlangıçta Linux için yazılmıştı, ancak zamanla Windows, Solaris, HP-UX vb. Gibi büyük işletim sistemlerine taşındı. Nmap için açık kaynaklı bir GUI olan Zenmap adlı araca buradan ulaşabilirsiniz.

Tarama Türleri

SYN SCAN, varsayılan tarama şeklidir. TCP CONNECT taramasından daha sessizdir. Tek bir TCP SYN paketi gönderir ve eğer karşıdan SYN ACK paketi geri alırsa Nmap söz konusu port üzerinde bir hizmet olduğunu anlar.

TCP CONNECT, bir tam TCP üçü el sıkışmasının tamamlanması ve tam bir bağlantı kurması şeklinde taramayı gerçekleştirir. Bu nedenle SYN taramasına benzerdir fakat çok daha gürültülüdür ve aynı zamanda taranan makinelere ve ağa yük bindirir.

PING SWEEP, taranan her bir porta basit bir şekilde ping yollayarak hangilerinin ICMP’ye yanıt verdiğini kontrol ederek çalışır. Sadece ayakta olan IP adreslerinin taranması amacı var ise bu tarama gayet hızlı bir yoldur. Fakat bazı makinelerin ping’e yanıt vermeyecek şekilde yapılandırılmış olması bu yöntemi kullanışsız kılar.

UDP SCAN, açık olan herhangi bir UDP portunun olup olmadığını kontrol eder. UDP, TCP gibi geri dönüş beklemediğinden bu tür taramalarda  false positive oranı yüksektir.

FIN SCAN ,SYN taramasına benzer bir taramadır fakat burada TCP yerine FIN paketi göndererek çalışmaktadır. Tüm cihazlar geri RST paketi yollamayacağından ötürü bu tarama false positive ve nagative sonuçlar doğurabilir.

NULL SCAN, tüm TCP başlık bayraklarını kapalı veya boş olarak ayarlayan bir başka gizli tarama şeklidir.

XMAS SCAN, TCP başlığındaki tüm bayrakların açık olarak ayarlanması dışında NULL taramasına benzerdir. Xmas taraması adını bir paket içerisinde etkinleştirilen bayrak kümesinden alır. Bu taramalar, TCP başlığının PSH, URG ve FIN bayraklarını değiştirmek için tasarlanmıştır.

IDLE SCAN, bu tarama türü Nmap 3.0 sürümü ile birlikte yeni gelen bir özelliktir. Tarama paketlerinin harici bir ana bilgisayardan geri döndürüldüğü gizli bir tarama yöntemidir. Diğer ana bilgisayar üzerinde kontrole sahip olmak gerekmez, ancak belirli gereksinimlerin ayarlanması ve karşılanması gerekmektedir.

Nmap Nasıl Kullanılır?

Nmap’in kullanımı kolaydır ve sağladığı araçların çoğuna sistem yöneticileri diğer programlardan aşinadır. Nmap’in avantajı, farklı ağ izleme araçları arasında geçiş yapmaya zorlamak yerine, bu araçların geniş bir yelpazesini tek bir çatı altında bir araya getirmesidir. Nmap’i kullanmak için komut satırı arayüzlerine aşina olmak gerekmektedir. Çoğu ileri düzey kullanıcı, ortak görevleri otomatikleştirmek için komut dosyaları yazabilir, ancak bu, temel ağ izleme için gerekli değildir.

Nmap’in en temel işlevlerinden biri, ağdaki aktif bilgisayarları belirlemektir. Nmap bunu bir ping taraması kullanarak yapar. Bu, anlık çevrimiçi olan tüm IP adreslerini, bu bilgisayarlara herhangi bir paketleyici göndermeden tanımlar.

$ nmap -sP < Hedef IP Aralığı >

Bu komut, ağdaki bilgisayarların bir listesini ve atanan IP adreslerinin toplam sayısını döndürürmektedir. Bu listede hesaba katılmamış herhangi bir bilgisayar veya IP adresi görülmesi durumunda, daha ayrıntılı araştırmak için daha fazla spesifik komutlar çalıştırmak gerekmektedir.

$ nmap < Hedef IP >

Şeklinde hiçbir parametre belirtilmediğinde, hedef üzerinde açık olan portlar taranarak sonuç olarak döndürecektir. Burada, parametre özel olarak belirtilmediği sürece tanımlanmış olan en yaygın 1000 port için tarama gerçekleştirilerek sonucu ekrana basılmaktadır.

$ nmap –sV < Hedef IP >

Açık olan iletişim portları dinlenerek “welcome banner” olarak adlandırılan başlıklardan servisler tanımlanabilir. Eğer herhangi bir başlık tanımlanmamış ise, araç bir nevi test istekleri göndererek yanıt için bekler. Nmap veritabanında bulundurduğu binlerce imza ile gelen yanıtı karşılaştırarak servis tespitini gerçekleştirir. “ –sV “ parametresi açık portlar üzerindeki servis ve versiyonlarının tespiti için kullanılmaktadır.

Nmap Script Engine olarak adlandırılan, içerisinde zengin bir script koleksiyonu bulunduran bir yapı bulunmaktadır. Kısaca NSE, ağ keşif işleminde zafiyetlerin sömürülmesi ve backdoor tespiti gibi işlemlerin tarama esnasında otomatik olarak gerçekleşmesine olanak tanır. Kali Linux dağıtımı üzerinde NSE içerisindeki scriptleri “ /usr/share/nmap/scripts/ “ dizini altında görüntüleyebilirsiniz.

$ nmap –sC –sV < Hedef IP >

Komutunu çalıştırarak bir önceki örnekte gösterildiği üzere açık olan portlar üzerinde çalışmakta olan servislerin ve versiyonlarının tespitine ek olarak, bu servis ve versiyonlarına ait herhangi bir zafiyetin bulunup bulunmadığının tespitini yapabiliriz.

$ nmap –script=< script adı >  < Hedef IP >  < Port >

Komutunu kullanarak ise hazır olarak bulunmakta olan scriptleri hedef üzerinde spesifik olarak çalıştırabiliriz. Burada belirlenen port üzerinde çalışmakta olan servis için yazılmış olan script için “ –script “ parametresine script ismini ve spesifik olarak zafiyet aranacak servisin çalışmakta olduğu port bilgisi de “ –p “ parametresi ile eklenebilir.

Örnekte port 21 üzerinde çalışmakta olan FTP servisi için “ftp-anon.nse” scriptini çalıştırdık. Bu script ile FTP servisine anonim olarak girişin  sağlanabilirliğini kontrol ettik ve sonucu ekrana yazdı.

$ nmap –A < Hedef IP >

Komutunu kullanarak yukarıda vermiş olduğumuz örneklerin daha kısa bir yolla yapılmasına olanak sağlamış oluyoruz. “ –A “ parametresi ile versiyon tespiti ( -sV ), script taraması ( -sC ) gibi özelliklere ek olarak “ –O “ parametresini kullanarak yapabileceğimiz işletim sistemi tespiti işlemi de gerçekleştirilmiş olacaktır.

Yukarıdaki kullanım örneklerine ek olarak önemli gördüğüm parametre örneklerini aşağıdaki tabloda bulabilirsiniz.

ParametreAnlamıÖrnek
-p-Tüm portları taraNmap –p- <Hedef IP >
-oNNormal çıktı formatıNmap –oA <Hedef IP >
-oXXML çıktı formatıNmap –oX <Hedef IP >
-oSScript Kiddie çıktı formatıNmap –oS <Hedef IP >
-oGGrepable çıktı formatıNmap –oG <Hedef IP >
-oATüm çıktı formatlarıNmap –oA <Hedef IP >
-T0Paranoid IDS atmatlaNmap –T0 <Hedef IP >
-T1Sneaky IDS atlatmaNmap –T1 <Hedef IP >
-T2Polite IDS atlatmaNmap –T2 <Hedef IP >
-T3Normal IDS atlatmaNmap –T3 <Hedef IP >
-T4Agrassive speed scan moduNmap –T4 <Hedef IP >
-T5Insane speedscan moduNmap –T5 <Hedef IP >
-fParçalanmış IP paketleri kullanımıNmap –f <Hedef IP >
-DDecoy taramalarıNmap –D <Hedef IP >
-gKaynak port numarasıNmap –g <Hedef IP >

Kaynak :

https://nmap.org/book/man.html

Related Posts

Leave a Reply