DDoS Testleri
Transkript
DDoS Testleri
Dağıtık Servis Dışı Bırakma Testleri Eğitimi Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı Tarih 1 Temel Ağ Standartları 2 Katmanlar Arası Haberleşme 3 Katmanlar ve Protokoller 4 TCP/IP Standardı TCP/IP • Internet’in temeli 4 katmandan oluşur. • Uygulama • Taşıma • Ağ • Ağ Erişimi 5 OSI ve TCP/IP Her katmanda çalışmak için bir alt katmanın servisine ihtiyaç duyar. 6 DoS/DDoS Saldırıları 7 Kavramlar DoS DDoS Bütünlük Erişilebilirlik RoBotNetwork Erişilebilirlik Gizlilik 8 roBOTNETwork Yıkım amaçlı zombi orduları Uzaktan/Merkezi yönetim Alınır/Satılır 9 Carna IPv4 Botnet http://internetcensus2012.bitbucket.org 10 Ne Anlama Gelir? Kaynak tüketimi • İşlemci • Bellek • G/Ç işlemleri • Disk Alanı • Band genişliği Donanım/Yazılım veya kullanıcı tanımlı sınırlara ulaşmak Yapılandırmanın bozulması veya servis çökertilmesi!!! 11 Amaç Finansal kazanç İntikam Siyasi/Gösteri Siber Terör Anket Manipülasyonu Spam E-posta yayma Anti-DDoS ürünleri satmak Başka bir saldırıyı gizlemek Kendini fark ettirme/Ego gösterimi 12 Tarihten Bazı Örnekler 2014-NTP reflection Attack 2013-Spamhaus 2012-THY:İş bırakma eylemi 2011-PlayStation Network 2010-Wikileaks, Mavi Marmara, TİB, BTK, TÜBİTAK 2009-Twitter 2008-Rusya-Gürcistan: Güney Osetya anlaşmazlığı 2007-Rusya-Estonya: Savaş anıtı konusunda ihtilaf 2007-Kök DNS sunucularını hedef alan 2. DDoS saldırıları 2002-Kök DNS sunucularını hedef alan DDoS saldırısı 1999-(Bilinen ilk DDoS atağı) Minnesota Ünv. Öğrencileri tarafından gerçekleştirildi. 13 Bize Kaça Olur? 14 OSI ve DoS L7 L4 • Uygulamalardaki Bellek, Disk, CPU odaklı buglar • Firmware bugları • Brute-force • Exploit • Slowloris • SlowRead • DNS Amplification • ForkBomb • DHCP istismarı • LAND • SQL * • SYN Seli • Teardrop • UDP Seli • ACK/FIN/RST Seli • DRDOS (Reflection) L3 • ICMP/PingSeli • Fraggle • Smurf • Pingof Death L2 • ARP Seli • Wireless • VTP Saldırısı L1 • Fiziksel zarar • Ağ/Güç kablosunun çekilmesi 15 Yöntemler Miktar Artırma Boyut Artırma Yansıtma 16 Fiziksel Katman (L1) 17 Fiziksel Katman (L1) 18 Veri Bağı Katmanı (L2) 19 Veri Bağı Katmanı (L2) ARP, STP vb. Wireless de-authenticate vs. mesajları 20 ARP Address Resolution Protocol • 48 bit gerçek donanım adresleri – MAC • IP’nin fiziksel adresleri öğrenmesi için kullanılır. • Broadcast Request, Unicast Teply • Statik ve dinamik ARP belleği Statik kayıt ekleme # arp –s 10.0.0.200 00-10-54-CA-E1-40 21 L2 DoS | MAC Seli MAC Seli ve Servis Dışı Bırakma • Saldırgan anahtarın CAM tablosunu sahte MAC adresleriyle doldurulur. • Anahtar hub’a dönüşerek üzerindeki trafik dinlenebilir duruma gelir. 22 L2 DoS | VTP MAC Seli ve Servis Dışı Bırakma • Saldırgan anahtarın CAM tablosunu sahte MAC adresleriyle doldurulur. • Anahtar hub’a dönüşerek üzerindeki trafik dinlenebilir duruma gelir. ÖNCE SONRA 23 L2 DoS | Savunma Port Security • Port varsayılan güvenlik politikası uygulanması • Belirlenen sayıda MAC adresi ile iletişim • Aşımı halinde kapat • MAC filtreleme (config-if)# switchport modeaccess (config-if)# switchport port-security (config-if)# switchport port-security violation shutdown (config-if)# switchport port-security maximum 3 (config-if)# switchport port-security mac-address sticky (config-if)# switchport port-security aging time 10 (config-if)# switchport port-security aging type inactivity 24 Ağ Katmanı (L3) 25 Ağ Katmanı (L3) Uçtan uca veri yönlendirmesi için kullanılır. • IP ve ICMP protokolleri bir üst katmandan gelen segmentleri alıcıya uygun yoldan ulaştırmakla yükümlüdür. • Segmentlere özel bir IP başlık bilgisi eklenir. 26 IP 1982 - RFC 791 • Bağımsız bir protokol • İletimin garantisi üst seviye protokoller ile sağlanır. • Yaygın olarak IPv4 • 32 bitlik mantıksal adres • IPv6 geçiş süreci 27 IP | Paket Başlığı 28 L3 DoS | IP Sahteciliği İstenilen IP adresinden TCP/IP paketleri (TCP, UDP, IP, ICMP, HTTP, SMTP, DNS vb.) gönderebilme işlemi • DDoS saldırılarında önem kazanır. • Stateful olmayan protokollerle gerçekleştirilenler için geçerlidir. Soru • HTTP GET seli saldırıları sahte IP adreslerinden yapılabilir mi? 29 L3 DoS | Parçalanmış Paketler MTU (Maximum Trasnmision Unit) kavramı • Ip datagramları 1500 bayttan daha büyük olmayacak şekilde Ethernet çerçevesi içerisine kapsüllenir. Fragmentation • Bir paketin kendinden düşük kapasitede bir ağa geldiğinde parçalanması Kötü niyetliler tarafından • IDS/IP ve WAF atlatma, • Kaynak tüketime ve servis dışı bırakma atakları için kullanılabilir. 30 L3 DoS | ICMP Saldırıları DoS, ICMP Sweep ve Ping of Death • DoS: hedef ve kaynak bilgisayarlara ICMP time exceeded veya destination unreachable paketleri göndererek TCP bağlantısının koparılması • ICMP Sweep: Ağ taraması • Ping of Death: 65535 bayttan büyük ping paketi oluşturularak çalışamaz hale getirilmek hedeflenir. 31 L3 DoS | Diğer Yöntemler ICMP Seli ICMP Surf Teardrop LAND Saldrısı 32 L3 DoS | ICMP Smurf # hping3 -1 –flood –a KURBAN BROADCAST_ADRESI # echo1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 33 L3 DoS | LAND # hping3 –c 1 –baseport 80 –destport 80 –S --spoof KURBAN KURBAN 34 Taşıma Katmanı (L4) 35 Taşıma Katmanı (L4) Özellikler • Üst katmanlardan gelen veriyi ağ paketi boyutunda parçalara böler. • Alt katmanlar ve üst katmanlar arasında geçit görevi görür. • Alt katmanlar verinin ne olduğuna bakmadan karşı tarafa yollama işini yaparken, üst katmanlarda kullanılan donanım ile ilgilenmeden verinin kendisi ile uğraşabilirler. 36 TCP Özellikler • Bağlantı yönelimlidir. • Verilere sıra numarası eklenir. • Veriler parçalara bölünebilir. • Güvenilirdir. • Akış kontrolü mekanizması sunar. • Çift yönlüdür. 37 TCP | Paket Başlığı Alan İşlevi Source Port Gönderenin TCP portu. Destination Port Alanın (hedefin) TCP portu. Sequence Number TCP segmenti içindeki birinci baytın sıra numarası. Window TCP ara bellek (buffer) alanının şu anki mevcut büyüklüğü. TCP Checksum TCP header ve TCP datanın bütünlüğünü kontrol etmek için kullanılır. 38 TCP | Oturum Kurma 39 UDP İletişim sırasında bağlantı oluşturulmaz. Hata denetimi yok. • Kaybolan paketin yeniden gönderilmesi söz konusu değildir. Veri aktarımı daha hızlıdır. Doğrulama mekanizması yoktur. • Sahteciliğe açık. 40 UDP | Paket Başlığı Alan İşlevi Source Port Gönderenin UDP portu. Destination Port Alanın (hedefin) UDP portu. Checksum UDP header ve UDP datasının kontrolü için kullanılır. 41 Hping | Paket Oluşturma SYN paketlerinin oluşturulması # hping3 –S www.sirket.com.tr -p 80 –c 3 UDP paketlerinin oluşturulması # hping3 --udp www.sirket.com.tr -p 53 –c 3 ICMP paketlerinin oluşturulması # hping3 –1 www.sirket.com.tr –c 3 Port tarama işlemi # hping3 –S www.sirket.com.tr –p ++77 77.porttan itibaren tarama 42 Analiz Soruları Gerçekten bu bir DDoS saldırısı mı? Tipi? Şiddeti? Süresi? Gerçek/Sahte IP adreslerinden mi? Kaynaklandığı yer/ülkeler? 43 L4 DoS TCP SYN Seli TCP Bağlantı Seli Fraggle UDP Seli 44 L4 DoS | TCP SYN Seli # netstat -n –tcp | grep SYN_RECV | awk‘{print $5}’ | cut -d “:” -f1 | sort | uniq-c | sort -n # tcpdump –r ddos.pcap –n ‘tcp[13] = 2’ 45 L4 DoS | TCP Bağlantı Seli ve Fraggle Hedef sistemin oturum limitlerini ölçmek/göremek # nping –tcp-connect 127.0.0.1 –p 80 --rate 1000 –c 10000000 Fraggle • Smurf benzeri • ICMP yerine UDP Echo (chargen ve echo servislerine yönelik) 46 L4 DoS | UDP Seli # hping3 --udp –p 53 --flood 127.0.0.1 47 Uygulama Katmanı (L7) 48 Uygulama Katmanı (L7) SNMP SMTP DNS HTTP 49 DHCP IP adresi ve subnet maskesi başta, diğer TCP/IP parametrelerini otomatik olarak dağıtan bir protokoldür. 50 L7 DoS | DHCP Adres Havuzu Tüketimi MAC adres bilgilerinin değiştirilerek sürekli olarak farklı IP adresi alınmasıyla DHCP sunucu IP havuzunun tüketilmesi #!/bin/bash while true; do killall dhclient3 rm –f /var/run/dhclient3.pid ifconfig eth0 down macchanger –a eth0 2>& 1 | grep Faked ifconfig eth0 up dhclient eth0 2>&1 | grep DHCPACK done 51 DNS Alan adını (FQDN) IP adresine çevirmek için kullanılan sistemdir. • 1984 – Hosts dosyası 52 L7 DoS | DNS Sorgu Seli Herhangi bir alan adına yönelik sorgu içeren paket gönderimi 53 L7 DoS | DNS Amplification Saldırgan hedef A kaydı için kurban kaynak IP adresine sahip bir DNS isteği gönderir. Kurban kaynak IP adresi ile gönderilen DNS isteği yinelemeli sorgulara izin veren bir DNS sunucusuna gönderilir. Gönderilen DNS isteği 512 bayttan küçük ancak olabildiğince büyük olması saldırının şiddetini artırmaktadır. • Çünkü 512 bayt boyutundan büyük DNS sorguları UDP ile değil TCP protokolü üzerinden iletilmektedir. 64 baytlık sorguya 3200 bayt cevap (50 katı) # dig ANY isc.org @8.8.8.8 54 L7 DoS | DNS Amplification 55 L7 DoS | SNMP 56 SMTP Amaç: Postalama yapmaktır. 57 L7 DoS | SMTP Aynı anda çok sayıda e-posta gönderimi Virüslü eklentiler Tcp/25 58 HTTP WEB üzerinde veri iletiminin kaynağı olan protokoldür 59 HTTP | Metotlar 60 L7 DoS | HTTP Sahte IP adresleri ile yapılamaz. # wbox www.sirket.com.tr 61 L7 DoS | HTTP GET Seli Sahte olmayan IP adresleri ile bir ya da birden fazla makineden eşzamanlı olarak üzerinde çok sayıda istek gönderilmesi • Apache Jmeter • AB # ab –n 10000 –c 500 http://www.sirket.com.tr/agguvenligi.pdf # perl httpflooder.pl –h 1.1.1.1 --url /agguvenligi.pdf –a GF –t 300 –n 3000 –v 1 62 L7 DoS | SlowHTTP ve Slowloris SlowHTTP • Kısmi HTTP istekleri • HTTP isteği tam değilse veya transfer hızı çok yavaşsa sunucu verinin geri kalanını beklemek için kaynaklarını meşgul durumda tutar. Slowloris • Saldırgan makine hedef sisteme çok fazla bağlantı kurar. • Kurduğu bağlantılar üzerinden paketleri çok seyrek bir şekilde gönderir ve böylece bağlantının kopması engellenir. 63 L7 DoS | SlowHTTP ve Slowloris | Koruma 64 L7 DoS | HTTP GET Saldırı Analizi TCP paketleri içerisindeki GET taleplerini tcpdump yardımıyla ayıklanabilmesi için # tcpdump –n –r ddos.pcap tcp port 80 and ( tcp[20:2] = 18225 ) | sort –k3 –n |cut –f3 –d ‘‘ ’’ | cut –f1,2,3,4 -d ‘‘.’’ | sort –n |uniq -c 65 DDoS ile Mücadele 66 Risk Tespiti Ağ üzerindeki bütün cihazlar dikkate alınmalı • En zayıf noktanız kadar güçlüsünüz! • Olası zafiyetler, darboğazlar, saldırı vektörler…. Zaman ve kaynak tüketen fonksiyonlar belirlenmeli • Yük/fuzzing testleri ve kaynak kod analizleri Gerçek DoS saldırılarının benzetimi ile ağın test edilmeli • LOIC/HOIC, hping, slowhttptest, thc-ssl-dos, ab…. 67 Genel Hatlarıyla DDoS Önlemleri - I IP Engelleme – Kara Liste İstek Aşımı (Rate Limit) DNS Önbellekleme (Caching) Beyaz Liste Kullanımı DNS İsteklerini TCP Protokolüne Çevirme İlk Paketi Düşürme Anycast DNS SYN Cookie SYN Proxy Atak Modeli ile Engelleme 68 Genel Hatlarıyla DDoS Önlemleri - II Proaktif Önlemler • Kullanılmayan servislerin kapatılması • IDS imzası oluşturulması • DNS zaman aşımının kısa tutulması • ISP ile irtibata geçilerek ek band genişliği talebinde bulunulması • Statik web sayfası kopyası 69 Genel Hatlarıyla DDoS Önlemleri - III HTTP GET/POST Seline Karşı • Bir IP adresinin açabileceği oturum sayısının azaltılması, • IP adreslerinin kara listeye alınması, • IPS için imza oluşturulması, • Web sunucunun desteklediği DoS koruma modüllerinin kullanımı • Reverse Proxy kullanımı 70 Proxy ve TOR Trafiğinin Düşürülmesi Barrelroll PyLoris 71 SYN Proxy 72 URPF IP Sahteciliği Engelleme • İç ağdan dışarı yönlü • Ağınızdan dışarı sahte IP ile saldırı yapılması engeller. # interface FastEthernet 0/0 # ir verify unicast source reachable-via {rx|any} [allow-default # tcpdump –n –r ddos.pcap tcp port 80 and ( tcp[20:2] = 18225 ) 73 Bağlantı Limiti Yerleşik komutlarla # netstat –ntu | awk ‘{print $5} | cut –d: -f1 |sort | uniq –c |sort –n 74 Korumaya Yönelik Bazı Hizmet Sağlayıcılar 75 Korumaya Yönelik Bazı Hizmet Sağlayıcılar Adanmış ekipman • Arbor Networks, Cisco (CiscoGuard), Toplayer, RioRey Bulut koruma (küçük işletmeler için) • Incapsula, CloudFlare, Rivalhost, Imperva Bulut koruma (büyük kurumlar için) • Akamai (DDoS Defender), Verisign, Prolexic, Gigenet, Staminus 76 77
Benzer belgeler
View - Ulusal Bilgi Güvenliği Kapısı
1.2 Amaç ve Kapsam .........................................................................................................9
1.3 Hedeflenen Kitle .....................................................
Slayt 1 - Certified Ethical Hacker
• Firewall arkasındaki sistemlerde bu şekilde
tespit edilebilinir.
www.bga.com.tr