-->

Nmap Script Vulners.nse

Selamun Aleyküm..

Açıklama
Güvenlik açıkları hakkında bilgi vermek için iyi bilinen bazı servisleri kullanan NSE komut dosyasıdir.

Bagımlılıklar :
nmap libraries:
     http
     json
     string
          
Aklınızda tutmanız gereken tek şey, senaryonun elinde bulunan yazılım sürümlerine sahip olmasıdır; bu nedenle yalnızca -sV bayrağıyla çalışır.

scripti usr/share/nmap klasorundekı script dosyasına vulners.nse olarak kayıt edıyorsunuz...

Dowlonad: https://raw.githubusercontent.com/vulnersCom/nmap-vulners/master/README.md
Kullanim: 
nmap -sV --script vulners <target>


Nmap Kullanimi

Selamun Aleyküm ..
Nmap, bilgisayar ağları uzmanı Gordon Lyon (Fyodor) tarafından 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.
Nmap kullanarak ağa bağlı herhangi bir bilgisayarın işletim sistemi, çalışan fiziksel aygıt tipleri, çalışma süresi, yazılımların hangi servisleri kullandığı, yazılımların sürüm numaraları, bilgisayarın güvenlik duvarına sahip olup olmadığı, ağ kartının üreticisinin adı gibi bilgiler öğrenilebilmektedir.
Nmap tamamen özgür GPL lisanslı yazılımdır ve istendiği takdirde sitesinin ilgili bölümünden kaynak kodu indirilebilmektedir. Nmap' ın kullanılabildiği işletim sistemleri LinuxWindowsMacOSSolaris, *BSD ve AmigaOS olarak sıralabilir fakat popülerliği öncelikle Linux daha sonrasında Windows' ta dır.
Kaynak : Vikipedia
Nmap herhangi bir istemci veya sunucuyu birçok farklı şekilde tarama yeteneğine sahiptir. Nmap'i güçlü kılan farklı tarama tekniklerine sahip olmasıdır. Protokol temelli (TCP, UDP, vb.) tarama yapılabileceği gibi, belirli aralıklardaki IP adresleri, alt ağlar (subnet) ve üzerlerinde çalışan port ve servisleri de taranabilir.[1]
Tarama sonuçlarında ortaya çıkabilecek port durumları aşağıdaki gibidir :
Open (Açık): Portun erişilebilir durumda olduğunu ve port üzerinde bir uygulamanın TCP bağlantılarını ya da UDP datagramlarını kabul ettiği anlamına gelmektedir.
Closed (Kapalı): Portun erişilebilir olduğunu (Paketleri almakta ve geri paket göndermekte) fakat üzerinde herhangi bir uygulamanın olmadığı anlamını taşımaktadır.
Filtered (Filtreli): Dönen tepkiler bir paket filtreleme mekanizması tarafından engellenir. Nmap portun açık olduğuna karar veremez.
Unfiltered (Filtresiz): Portlar erişilebilir ancak Nmap portların açık veya kapalı olduğuna karar veremez. (Sadece ACK scan için )
Open|filtered (Açık|Filtreli): Nmap portların açık veya filtrelenmiş olduğuna karar veremez. (UDP, IP Protocol, FIN, Null, Xmas Scan için )
Closed|filtered (Kapalı|Filtreli): Nmap portların kapalı ya da filtreli olduğuna karar veremez. (Sadece Idle Scan için )

Nmap Tarama Türleri 
TCP SYN (Half Open) Scan : 
Hedefe TCP SYN gönderilir. Portlarin Kapali Olduğu Durumlarda Hedef Makina VCevağ Olarak RST + ACK Döner.
Portlarin Açık Olduğu Durumlarda İse Hedef Makina SYN + ACK Bayrakli Segment Döndürür. Daha Sonra Kaynak Makina RST Bayrakli Segment Göndererek Bağlantiyi Koparir Ve Böylelijle TCP Üçlü El Sıkışma (TCP Three-Way Handshaking) Tamamlanmaz. Bu Tarama Türünce TCP Üçlü El Sıkışma Gerçekleşmediği İçin Bu Tarama Türü Hedef Sistemlerinde Herhangi Bir Şekilde İz Birakmaz.
Kullanım Şekli : nmap -sS -v hedef_ip_adresi

TCP Connect Scan : 
Kaynak Makinanin Gerçekleştireceği TCP Connet Scan, Kapali Portlara Yapildiği Zaman RST + ACK Bayrakli Segment Dönecektir. Ancak Açık Portlara Yapildiği Durumlarda Hedef Makinanin Göndereceği SYN + ACK Bayrakli Segmenti, Kaynak Makina ACK Bayrakli Segment Göndererek Cevaplar Ve Üçlü El Sıkışmayi Tamamlar.
Kullanım Örneği: nmap -sT -v hedef_ip_adresi

FIN (Stealth) Scan  :
Hedef Makinaya TCP Bağlanti İstegi Olmadan Gönderilen Segmentle Tarama Yapilir. Kaynak Makinanin Göndereceği FIN Bayrakli Segment, Hedef Makinanin Kapali Bir Portuna Gelirse Hedef Makina RST + ACK Bayrakli Segment Döndürecektir. Eğer Açık Portuna Gelirse Hedef Makinadan Herhangi Bir Tepki Dönmeyecektir.
Kullanım Şekli : nmap -sF -v hedef_ip_adresi

Xmas Scan :
Bu Tarama Türünde Kaynak Bilgisayarin TCP Segmentine, URG,PSH Ve FIN Bayraklarini Set Edeceği ("1" Yapilacaği) Segment Hedef Makinaya Gönderilir. Eğer Kaynak Makinanin Gödereceği URG,PSH Ve FIN Bayrakli Segment, Hedef Makinanin Kapalı Portuna Gelirse Hedef Makina RST + ACK Bayrakli Segment Döndürecektir. Eğer Port Açık Olursa Hedef Makinadan Herhangi Bir Tepki Dönmeycektir.
Bu Tarama Türünde TCP Başlığı İçerisinde Yer Alan Toplam Altı Adaet Bayraktan Üç Tanesi Set Edildiği ("1" yapildiği) İçin, Gönderilen Segment Yılbaşı Ağacının Yanan Lambalarina Benzetilmiştir. Bundan Dolayida  Bu Tarama Türüne Xmas (Christmas) Scan Denmiştir. 
Kullanım Şekli: nmap -sX -v hedef_ip_adresi

Null Scan : 
Hiç Bir Bayrağın Bulunmayacağı Bu Tarama Türü, Gerçek Hayatta Karşımıza Çıkmayan Bir Durumdur. Kaynak Makinan,in Gödereceği Bayraksız Segmentler Karşısında Hedef Makinanin Vereceği Tepkiler FIN Scan İle Aynıdır. Kaynak Makinanın Göndereceği Bayraksız Segment, Hedef Makinanin Kapalı Bir Portuna Gelirse Hedef Makina RST + ACK Bayrakli Segment Döndürecektir. Eğer Port Açık Olursa Hedef Makinadan Herhangi Bir Tepki Dönmeycektir.
Kullanım Şekli : nmap -sN -v hedef_ip_adresi

Ping Scan : 
Bu Tarama Türünda Kaynak Makina Hedef Makinaya Tek Bir ICMP Echo İstek Paketi Gönderir. İP Adresi Erişebilir Ve ICMP Filtreleme Bulunmadığı Sürece, Hedef Makinaya ICMP Echo Cevabi Döndürecektir. Eğerü Hedef Makina Erişilebilir Değilse Veya Paket Filtreleyici ICMP Paketlerini Filtreliyorsa, Hedef Makinadan Herhangi Bir Cevap Dönmeyecektir. 
Kullanım Şekli : nmap -sP -v hedef_ip_adresi

UDP Scan : 
Kaynak Makinanın Hedef Makinaya UDP Datagramina, ICMP Port Unreachable Cevabi Döndürülüyorsa Hedef Makina Kapali Kabul Edilecektir. Herhangi Bir Tepki Döndürmeyen Hedef Makina Open|Filtered Kabul Edilecektir. UDP Datagramiyla Cevap Döndüren Hedef Makinaya Ait Port İse Açık Kabul Edikecektir.
Kullanım  Şekli : nmap -sU -v hedef_ip_adresi

IP Protocol Scan : 
Bu Tarama Türü Standart Nnamp Tarama Türlerinden Biraz Farklidir. Bu Tarama Türünde Hedef Makinalarin Üzerlerinde Çalışan IP Tabanli Protokoller Tespit Edilmektedir. Bu Yüzden Bu Tarama Türüne Tam Anlamiyla Bir Port Taramasi Demek Mümkün Değildir. Hedef Makina Üzerinde Taramasını Yaptığımız İP Protokolü Aktif Haldeyse Makinadan Bu Taramaya Herhangi Bir Cevap Gelmeyecektir. Hedef Makina Üzerinde, Taramasini Yaptıgımız IP Protokolü Aktif Halde Değilse Hedef Makinadan Bu Taramaya, Tarama Yapılan Protokolün Türüne Göre Değişebilen RST Bayrakli (RST Bayraği "1" Yapılmış) Bir Segment Cevap Olarak Gelecektir.
Kullanım Şekli : nmap -sO -v hedef_ip_adresi

ACK Scan : 
Bu Tarama Türünde Kaynak Makina Hedef Makinaya TCP ACK Bayrakli Segment Gönderir. Eğer Hedef Makina ICMP Destination Unreachable Mesajını Dönerse Ya Da Hedef Makinada Bu Taramaya Karşılık Herhangi Bir Tepki Oluşmazsa Port "filtered" Olarak Kabul Edilir. Eğer Hedef Makina RST Bayrakli Segment Döndürürse Port "unfiltered" Kabul Edilir.
Kullanım Şekli : nmap -sA -v hedef_ip_adresi

Window Scan : 
Window Scan, ACK Scan TürüneBenzer Ancak Bir Önemlii Farki Vardir. Window Scan Portlarin Açık Olma Durumlarini Yani "OPEN" Durumlarini Gösterebilir. Bu Taramanin İsmi TCP Windowing İşleminden Gelmektedir. Bazı TCP Yığınlari, RST Baraktli Segmentlere Cevap Döndüreceği Zaman, Kendilerine Özel Window Boyutlari Sağlarlar. Hedef Makinaya Ait Kapali Bir Porttan Dönen RST Segmentine Ait Window Boyutu Sifirdir. Hedef Makinaya Ait Açık Bir Porttan Dönen RST Segmentine Ait Window Boyutu Sıfırdan Farkli Olur.
Kullanım Şekli : nmap -sW -v hedef_ip_adresi

Idle Scan : 
Bu Tarama Türü Kaynak Makinanin Hedef Makinaya Tarama Esnasinda Aktif Olarak Rol Almadığı Bir Türdür. Kaynak Makina "ZOMBİ" Olarak Nitelendirilen Makinalar Üzerinden Hedef Makinayi Tarayarak Bilgi Toplar.
Kullanım Şekli : nmap -sl -v zombi_ip hedef_ip_adresi

Nmap Betik Motoru (Nmap Scripting Engine -NSE)
NSE (Nmap Script Engine) Nmapin En Güçlü Ve Kullanışlı Özelliklerinden Birisidir. NSE'yi Normal Nmap Komutlariyla Yapılamayan Yada Yapılması Çok Zor Olan İşlemlerin Daha Kolay Bir Şekilde Yapılmasının Sağlandığı Bir Betikler Bütünü Olarak Tarif Edebiliriz. Nmap İle Birlikte Bir Çok Betik Kütüphanesi Hazır Olarak Gelmektedir. NSE Kullanılarak Temel Olarak Yapılabilecekler Aşağıda Listelenmiştir.
1) Ağ Keşifleri: Hedef Etki Alanlarının Whois Veri Tabani Sorgulari Yapilabilir. Hedef Sistemlerin SNMP Sorgulari Yapılabilir Ve Mevcut NFS/SMB/RPC Paylaşım Ve Servisleri Listenilebilir.

2) Karmaşık Versiyon Tespiti: Normal Nmap Komutlariyla Hedef Sistemlerin Versiyonlari Belirlenebilmektedir. NSE İle Hedef Sistemlerin Versiyonlari Çok Daha Ayrıntili Bir Şekilde Tespit Edilebilir.
3)  Zafiyet (Vulnerability) Tespiti: Normal Nmap Komurtlariyla Hedef Sistemlerin Zafiyetleri Tam Anlamıyla Tespit Edilememektedir. NSE İle Bu Zafiyetler Daha Kolayca Belirlenebilir. Nmap İle Hazır Gelen Biir Çok Zafiyet Tespit Betiği Bulunmaktadir. Ancak Temel İşlevinin Zafiyet Tarayicisi Olmadığının Bilinmesi Gerekir.
4) Arka Kapi (Backdoor) Tespiti: NSE  Bazi Arka Kapi Programlarinida Tespit Edebilmektedir.
5)  Zafiyet Sömürmesi (Vulnerability Exploitation) NSE İle Sadece Hedef Sistemlerin Zafiyetkeri Tespit Edilmekle Kalmayip Bu Zafiyetlerin Bazıları Kullanilarak Hedef Sistemlere Sızılmasi Mümkün Olmaktadir. Fakat Nmap'in Temel Amaci Metasploit Gibi Bir Zafiyet Sömürü Programina Dönüşmek Değildir. Buna Ragmen NSE İle Hedef Sistemlerdeki Bazi Zafiyetlerin Sömürülmeside Mümkündür.NSE 'nin Geliştirilmesine Devam Edilmektedir.

Nmap Tarama Örneklei : 
nmap -sS -sV -Pn -top-ports 10 192.168.38.130
sS : Syn Taramasi 
sV : Versiyon Bilgisi
Pn : Ping Atma 
Top-ports10: En Çok Kullanilan 10 Portu Tara.
nmap -sS -sV -Pn -T4 -p- 192.168.38.130
sS : Syn Taramasi 
sV : Versiyon Bilgisi
Pn : Ping Atma 
T4 : Tarama Hizi Hizli Bir Tarama.
-p- : Tüm Portlari Tara
Bu Tarama Çok Uzun Sürdüğü İçin Hazır Taranmış Bir Ekran Görüntüsü Koyuyorum.

nmap -sS -A -Pn -oA sonuclar 51.255.10.187
sS : Syn Taramasi 
A  : Versiyon Ve İşletim Sistemi Bilgisi
Pn : Ping Atma 
oA : 3 Farkli Formatta Tarama Çıktısını Kaydeder.

nmap --script ftp-anon -p 21 51.255.10.187
script : Nmap Scriptlerini Kullanmamizi Sağlar.
ftp-anon : Ftp 'ye Anonim Girişi Olup Olmadıgını Kontrol Eder.
p 21 : Port 21 de Scripti Çalıştırır
Zafiyet Oldugunda 2.ci Komut Satirindaki Gibi Belirtir.

nmap --script http-dombased-xss www.trazer.org
script : Nmap Scriptlerini Kullanmamizi Sağlar.
http-dombased-xss : trazer.org'da xss ara
Couldn't find any DOM based XSS.=
Yani Herhangi Bir Dom Tabanli XSS Bulunamadı :) 

Ek Olarak Nmap İle cloudflare Bypass Yapabilirsiniz. Aslında Bypass Demiyelimde Otomatik Olarak Nmap Aracı İle Hedef Sistemin Dns Üzerindeki Tüm Alan Adlarina Subdomain Vs Brute Force Yapilarak Alt Alan Adlari Tespit Edilip Gerçek İp Adresi Bulunabilir. 
nmap --script dns-brute -sn hedefsite.com

Benim Size Aktarma İstediklerim Bu Kadardı Sizler İçin Sağ Soldan Toparladım Ve Bu Çıktı Ortaya
Umarım Anlaşılır Olmuştur. Nmap Scriptlerini /usr/share/nmap/script/ Klasörü Altında Bulup İnceleyebilirsiniz. Bu Yazımızda Nmap Aracının Çok Kaliteli Bir Keşif Aracı Olduğunu Uygulayip Öğrenmiş Olduk.
Nmap Kullanımı Hakkinda Daha Detayli Bilgi İçin Buradaki Linke Göz Atabilirsiniz.

TrazeR Sunar //