Keşif ve Zafiyet Tarama Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı Tarih 1
Amaç Açık sunucuların tespiti Ağ topolojisi keşfi Açık portların tespiti Versiyon tespiti İşletim sistemi keşfi Zafiyet tespiti 2
Keşif Türleri 3
Keşif Türleri Pasif Keşif Ağın dinlenilmesi Tcpdump Wireshark ARP tablosu Aktif Keşif Aktif paket gönderme Nmap Hping Scapy Ping, tracert, vb. 4
Keşif Türleri Pasif Keşif Wireshark 5
Keşif Türleri Pasif Keşif ARP Tablosu 6
Keşif Türleri Aktif Keşif fping Angry ip scanner Netcat (-z) 7
NMAP 8
Neden NMAP? 9
NMAP NMAP Açık kaynak kodlu Ücretsiz Yaygın kullanım Geniş bir topluluk desteği Güçlü Birçok işi tek başına yapabilir Her platformda çalışır İyi dokümantasyon nmap zenmap ncat ndiff nping ncrack 10
NMAP Sunucu keşfi Ağ topolojisi keşfi Port taraması Servis ve versiyon tespiti İşletim sistemi tespiti Güvenlik duvarı tespiti Zafiyet tespiti Kaba kuvvet saldırısı Exploit 11
NMAP Ping Taraması Port Taraması SYN Taraması TCP Taraması UDP Taraması Servis ve Versiyon Tespiti Zamanlama Betik Taraması İşletim Sistemi Tespiti IPS/IDS Atlatma Büyük Ağların Taranması 12
NMAP Ping Taraması 13
NMAP Ping Taraması Açık sunucuların tespiti #nmap sp 172.20.1.0/24 ICMP echo request TCP 443 portuna SYN TCP 80 portuna ACK ICMP timestamp request Lokal ağda ARP scan 14
NMAP Ping Taraması Nmap Ping Taraması 15
NMAP Port Taraması 16
NMAP Port Taraması TCP/IP Temelleri SYN Taraması Port Taraması Seçenekler i TCP Taraması UDP Temelleri UDP Taraması 17
TCP/IP Temelleri OSI Referans Modeli Uygulama Sunu Oturum Taşıma Ağ Ver Bağlama Fiziksel Kullanıcı etkileşimli uygulamalar: HTTP, SMTP Farklı veri formatlarını birbirine dönüşümü: ASCII,MP3,JPG Soket açma, oturum kurma: SQL, RPC Hata ve akış kontrolü: TCP, UDP Uçtan uca iletişim, sanal adresleme: IP Ortama Erişim: Ethernet, Wireless İkili iletim: Koaksiyel, UTP ve fiber kablolar5 18
Katmanlar ve Protokoller 19
Örnek: DNS Protokolü 20
TCP/IP ile İletişim 21
TCP Temelleri Özellikler Bağlantı yönelimlidir Verilere sıra numarası eklenir Veriler parçalara bölünebilir Güvenilirdir Akış kontrolü mekanizması vardır Çift yönlüdür 22
TCP Temelleri TCP 3 lü el sıkışma Veri Transferi 23
TCP Temelleri SYN URG ACK Bayraklar PSH RST FIN 24
SYN Taraması KAYNAK HEDEF 25
SYN Taraması 26
SYN Taraması OPEN CLOSED FILTERED OPEN FILTERED 27
Terimler Port Durumları open Porta erişim var Bir servis dinliyor closed Porta erişim var Güvenlik duvarı trafiği filtrelemiyor Port üzerinde dinleyen bir servis yok Örnek: Sunucu RST dönmüş 28
Terimler Port Durumları filtered Cevap alınamamış Güvenlik duvarı trafiği filtrelemiş Port açık veya kapalı olabilir Open filtered Cevap alınamamış Güvenlik duvarı filtrelemiş olabilir Uygulama cevap dönmemiş olabilir UDP taraması 29
Port Taraması Önemli Port Numaraları 21 - FTP 22 - SSH 23 - Telnet 25 - SMTP 53 (UDP) - DNS 80 - HTTP 110 - POP3 139 - Netbios 143 - IMAP 161 (UDP) - SNMP www.iana.org 443 - HTTPS 445 SMB, Microsot-DS 514 - RSH 902 - VMware 1433 - MSSQL 1521 - Oracle 3306 - MySQL 3389 - RDP 5900 - VNC 8080, 8081 Proxy, Uygulama Sunucu 30
Port Taraması En sık kullanılan 1000 port -p 80, 443, 445-447 -su st pu:53,t:21-25,80 --top-ports 10 -F (fast) Tüm portlar: -p1-65535 31
Port Taraması Port Taraması ile Sunucu keşfi Sunucular ping e kapalı ise Özellikle dış taramalar veya sunucu bloğu taramaları # nmap ss --top-ports 10 --open 172.20.1.0/24 PN -n --top-ports 100 --top-ports 1000 32
TCP Taraması # nmap -st 10.0.0.1 -PN -n -p80 33
TCP Taraması --packet-trace ile paketler izlenebilir. 34
SYN Taraması TCP Taraması SYN Taraması TCP Taraması 35
SYN Taraması TCP Taraması SYN Taraması 3 lü el sıkışma tamamlanmaz SYN+ACK gelirse RST ile bağlantı kapatılır Sunucuda kayıt tutulmaz Root hakkı gerektirir Paketlere müdahale gerekli olduğu için TCP Taraması 3 lü el sıkışma tamamlanır SYN+ACK gelirse ACK ile bağlantı tamamlanır Sunucuda bağlantıya ilişkin kayıt tutulur İşletim sistemi TCP connect() metodu kullanır, root hakkı gerektirmez 36
UDP Temelleri OSI Referans Modeli Uygulama Sunu Oturum Taşıma Ağ Ver Bağlama Fiziksel Kullanıcı etkileşimli uygulamalar: HTTP, SMTP Farklı veri formatlarını birbirine dönüşümü: ASCII,MP3,JPG Soket açma, oturum kurma: SQL, RPC Hata ve akış kontrolü: TCP, UDP Uçtan uca iletişim, sanal adresleme: IP Ortama Erişim: Ethernet, Wireless İkili iletim: Koaksiyel, UTP ve fiber kablolar5 37
UDP Temelleri İletişim sırasında bağlantı oluşturmaz Hata denetimi yoktur Kaybolan paket yeniden gönderilmez Veri aktarımı hızlıdır Multimedia için uygundur Doğrulama mekanizması yoktur IP sahteciliği yapılabilir Örnek kullanım alanları DNS DHCP Multimedia 38
UDP Taraması # nmap su -161 10.0.0.1 Uzun zaman alır (timeouts) Belirli portlar: DNS (53), TFTP (69), DHCP (67-68), NTP (123), SNMP (161-162) Boş UDP paketi gönderir Güvenilir olması için versiyon tespiti ile birlikte çalıştırılmalı -sv 39
UDP Taraması 40
UDP Taraması OPEN CLOSED FILTERED OPEN FILTERED 41
NMAP Ping Taraması Port Taraması SYN ve TCP Taramaları UDP Taraması Servis ve Versiyon Tespiti İşletim Sistemi Tespiti Betik Taraması Zamanlama ve IPS/IDS Atlatma Büyük Ağların Taranması 42
Servis, Versiyon ve İşletim Sistemi Tespiti 43
Servis ve Versiyon Tespiti Port üzerinde çalışan servisin tespiti Uygulama belirli portta çalışmak zorunda değil TCP/443 portunda SSH çalışabilir Portta çalışan uygulamanın versiyonu ISC BIND DNS veya Microsoft DNS ISC BIND DNS versiyon numarası nmap-service-probes veritabanı Uygulama protokolü (FTP, SSH, ) Uygulama adı (ISC BIND, Apache httpd, ) Versiyon numarası Sunucu adı Cihaz türü (yazıcı, yönlendirici, ) İşletim sistemi ailesi (Windows, Linux, ) 44
Servis ve Versiyon Tespiti 45
Servis ve Versiyon Tespiti 46
İşletim Sistemi Tespiti 47
Girdi Çıktı Yönetimi Girdi Yönetimi -il ip_listesi.txt 192.168.1-255.0-255 192.168.1.0/24 10.0.0.0/16 192.168.1-255.1-10, 254 Çıktı Yönetimi -on: Normal (Okunabilir) -og: Greaple (Parsing) -ox: XML (Veritabanına atmak için) -oa: Tüm formatlarda 48
Genel Tarama nmap -A nmap sv sc O --traceroute 49
Uygulama - 1 51
Uygulama - 1 U1 U2 Ping taraması ile 172.20.0.0/24 ve 172.20.40.0/24 ağ bloklarındaki açık sunucuların tespiti Grepable formatındaki çıktıdan açık sunucuların liste olarak çıkarılması U3 U4 U5 Liste olarak çıkarılan sunuculara SYN taraması yapılması Liste olarak çıkarılan sunuculara versiyon ve işletim sistemi tespiti yapılması 22/SSH, 3389/RDP ve 80/HTTP servisleri açık olan sunucuların tespiti 52
NMAP Ping Taraması Port Taraması SYN ve TCP Taramaları UDP Taraması Servis ve Versiyon Tespiti İşletim Sistemi Tespiti Betik Taraması Zamanlama ve IPS/IDS Atlatma Büyük Ağların Taranması 53
NMAP Betik Taraması 54
Betik Taraması Nmap Scripting Engine Lua programlama dili Ağ keşfi Gelişmiş servis tespiti Zafiyet tespiti Arka kapı tespiti Zafiyet sömürme 55
Betik Taraması -sc (--script=default) --script default and safe Kategoriler auth brute default dos exploit intrusive malware safe version vuln Açıklama 56
Betik Taraması Betik veritabanının güncellenmesi # nmap script-updatedb Betiği çalıştırmak # locate *.nes grep telnet Betiği çalıştırmak # nmap ss p23 10.0.0.1 --script telnet-brute # nmap su p53 10.0.0.1 --script dns-* 57
Betik Taraması telnet-brute.nse 58
Betik Taraması --script-help 59
Betik Taraması Betik Taraması Versiyon Tespit İlişkisi Betik Taraması versiyon tespiti yapılmazsa sadece varsayılan portlara uygulanır 60
Betik Taraması Kullanışlı birkaç betik Kategoriler *-brute.nse *-info.nse dns-recursion dns-zone-transfer https-slowloris-check ms-sql-info ms-sql-dump-hashes nbstat smb-check-vulns smb-enum-users smb-enum-shares Açıklama 61
Betik Taraması Kullanışlı birkaç betik - *.brute.nse Kategoriler ftp-brut ftp-anon ms-sql-brute mysql-brute oracle-sid-brute snmp-brute telnet-brute vmauthd-brute vnc-brute Açıklama 62
Betik Taraması nbstat 63
Betik Taraması nbstat 64
NMAP Ping Taraması Port Taraması SYN ve TCP Taramaları UDP Taraması Servis ve Versiyon Tespiti İşletim Sistemi Tespiti Betik Taraması Zamanlama ve IPS/IDS Atlatma Büyük Ağların Taranması 65
Zamanlama, IPS/IDS Atlatma 66
Zamanlama -T paranoid sneaky polite normal aggressive insane -T0 (paranoid) : 5 dk -T1 (sneaky) : 15 sn -T2 (polite) : 0.4 sn -T3 (normal) : Varsayılan tarama, paralel tarama -T4 (aggressive) -T5 (insane) --max-retries 2 --host-timeout 30m 67
Zamanlama Paralel Taramanın Kapatılması -T 0 1 2 --scan-delay 1 --max-parallelism 1 --max-hostgroup 1 68
IPS/IDS Atlatma Zamanlama Paketler arası süreyi uzat Paralel taramayı kapat Fragmentation -f Kaynak portu Tarama sırasını karıştırma IP sahteciliği Güvenlik duvarı ve IPS/IDS tespiti --source-port Kaynak portu 80 olan bir bağlantı daha güvenilir olabilir --randomize-hosts Sıra ile taramayı engeller Gönderilen paket geri dönmez UDP trafiği için mantıklı TTL --badsum 69
NMAP Ping Taraması Port Taraması SYN ve TCP Taramaları UDP Taraması Servis ve Versiyon Tespiti İşletim Sistemi Tespiti Betik Taraması Zamanlama ve IPS/IDS Atlatma Büyük Ağların Taranması 70
Büyük Ağların Taranması 71
Büyük Ağlarda Tarama Büyük ağların küçük alt ağlara bölünmesi Örnekleme kümesi alınabilir IP keşfi için ping taraması kullanımı İsim çözümleme yapılmaması (-n) Hızlı tarama seçeneklerinin kullanılması -T4 5 --max-retries --host-timeout Paket kaybı yaşanabilir (timeouts) Servis dışı kalma Taranacak sunuculara yakın (yüksek hızlı) konumdan tarama Ağ performansı en yüksek bölge 72
Büyük Ağlarda Tarama Port taramasında dikkat edilecekler En sık kullanılan portları kullan --top-ports -F Belirli portları tara Güvenlik duvarından izin verilen portlara kısıtla Taramayı yavaşlatan tarama seçenekleri Versiyon tespiti İşletim sistemi tespiti Betik taraması UDP taraması Güvenlik duvarı yapılandırmasını değiştirmesi Kapalı portlar için RESET veya ICMP unreachables dönmeli IP blokları ve adresleri istenebilir 73
Büyük Ağlarda Tarama Örnek B class ağ bloğu verilmiş 10.0.0.0/16 Tüm blok taranamaz Her bir C class için aşağıdaki tarama yapılır.1, 254, ilk 10 IP adresi # nmap sp n T5 10.0.0-255.1-10,254 oa out 11 adet C class tarama süresi (muhtemelen daha uzun) Elde edilen açık sunucuların olduğu bloklar taranır # cat out.gnmap grepup cut-d -f2 cut-d : -f1,2,3 sed s/$/\.0\/24/ sort uniq> iplistesi.txt # nmap -sp-n-t5 -il iplistesi.txt-oaout 74
Diğer NMAP Tarama Türleri 75
NULL, FIN, XMAS Taraması SYN, ACK ve RST içermeyen paketler NULL Hiçbir bayrak işaretlenmez FIN Sadece FIN bayrağı işaretli XMAS FIN, PSH ve URG bayrakları işaretli Durumlar Closed Open Filtered Filtered Hedef RST döner Hedef cevap dönmez Hedef ICMP unreachable döner 76
ACK Taraması ACK bayrağı işaretli paket gönderilir Portun open veya closed olduğu anlaşılmaz Filtreleme olup olmadığı tespit edilir Durum Unfiltered Hedef RST döner Port open veya closed durumdadır Filtered Hedef cevap vermez Hedef ICMP unreachables döner 77
Nmap Idle Scan open 1 2 3 78
Nmap Idle Scan closed 1 2 3 79
Nmap Idle Scan filtered 1 2 3 80
Proxy üzerinden tarama İyi yapılandırılmış IDS/IPS ler taramaları yakalar! Proxy üzerinden sadece TCP connect ve versiyon taraması yapılır. # env grep i LD LD_PRELOAD=/usr/lib/libtsocks.so # nmap PO n sv <ip> -p80 # tsocks nmap PO n sv <ip> -p80 -D ile farklı ip adreslerinden geliyormuş gibi tarama yapılabilir. Saniye de gönderilecek paket sayısı --mix-rate --max-rate 81
Tarama sonuçlarını karşılaştırma --reason Tarama sonuçlarının sebebi hakkında bilgi verir. ndiff --text text1 text2 Tarama sonuçlarını karşılaştırır. 82
NMAP Keşif Pasif Keşif Wireshark, tcpdump, Aktif Keşif Nmap Zafiyet Tarama Nessus 83
Zafiyet Taraması 84
Terimler Zafiyet Bir veya birden çok tehdit tarafından istismar edilen varlık veya varlıklar grubunun zayıflığı ISO 27005 Sistem güvenlik prosedürlerindeki, tasarımındaki uygulanmasındaki veya icra edilen ve güvenlik açığı veya sistemin güvenlik politikasının ihlali ile sonuçlanan dahili kontrollerdeki güçsüzlük veya zayıflık - NIST 85
Terimler Donanım Hatası Eksik/yanlış yapılandırma Zayifet Türleri Programlama Hatası Güncel olmayan yazılımlar 86
Zafiyet Yönetimi Politika tanımlama Sürdür ve izle Zafiyet ve politika ihlali keşfet Zafiyetleri azalt Zafiyetleri önceliklendir 87
Zafiyet Taraması Banner ve versiyon tespiti Yapılandırma incelemesi Zafiyet Keşif Yöntemleri Protokol versiyon tespiti Uygulama davranış analizi 88
Zafiyet Taraması Zafiyet Tarayıcıları Nmap NSE Nessus Microsoft MBSA NeXpose OpenVAS SAINT eeye Retine GFI LanGuard QualysGuard Secunia PSI Rapid7 Mcafee Foundstone Netsparker (web) Acunetix (web) 89
Zafiyet Taraması Zafiyet Veritabanları Open Source Vulnerability Database (OSVDB) http://osvdb.org/ NIST National Vulnerability Database http://nvd.nist.gov/ Common Vulnerabilities and Exposures (CVE) https://www.cvedetails.com/ https://cve.mitre.org/cve/index.html Ortak platform 90
Nessus 91
Nessus Yetenekleri Ajan kurmadan yama eksikliği testi Zayıf yapılandırma tespiti Port taraması Servis tespiti Kullanıcı denemesi Exploit uygulanabilirliği Yetkili (credential) tarama yeteneği 55000+ plugin Raporlama özellikleri 92
Nessus - Kurulum Servis başlatmak https://ip_adresi:8834 Username : egitim Password : egitim 93
Nessus - Kurulum Önemli! Kayıt /opt/nessus/bin/nessus-fetch register <kod> Plug-in güncelleme /opt/nessus/bin/nessus-update-plugins 94
Nessus - Kurulum Kurulum 95
Nessus - Kurulum Ana Giriş Ekranı 96
Nessus - Kurulum Ana Giriş Ekranı 97
Nessus - Kurulum Ayarlar 98
Nessus Politika Oluşturma Yeni Politika Oluşturma 99
Nessus Politika Oluşturma Politika Seçenekleri 100
Nessus Politika Oluşturma Tarama Ayarları 101
Nessus Politika Oluşturma Performans Ayarları 102
Nessus Politika Oluşturma Gelişmiş Ayarlar 103
Nessus Politika Oluşturma Kullanıcı Bilgisi Ekleme 104
Nessus Politika Oluşturma Plugin Ayarları 105
Nessus Politika Oluşturma Yeni Tarama 106
Nessus Politika Oluşturma Tarama Sonuçlarının İncelenmesi 107
Nessus Politika Oluşturma Rapor Formatları 108
Nessus Politika Oluşturma Rapor Örneği 109
Uygulama - 2 110
Uygulama - 2 Nessus Web Arayüzünden Bağlan Tarama Politikası Tanımla Hedefleri Seç Taramayı Çalıştır Sonuçları Gözden Geçirme 111
112