BSK 2007 Igor T. Podolak 1 tdc 477 Intrusion Detection Systems
BSK 2007 Igor T. Podolak 2 Intrusion Detection Systems sieciowy IDS (NIDS) podsłuchuje pakiety i analizuje je dla wykrycia możliwych ataków, rekonesansu, niebezpiecznych działań, itp. Intrusion Prevention System daje dodatkową ochronę Host based intrusion detection systems (HIDS) pojedyncze hosty aktywność aplikacji kontrola spójności systemu plikowego
BSK 2007 Igor T. Podolak 3 Typy ataków rekonesans skanowanie wyszukiwanie słabości scanmap, nslookup, rpcinfo, nessus nieuprawniony dostęp brutalne, przez usługi denial of service
BSK 2007 Igor T. Podolak 4 Różne podejścia do IDS network IDS skanowanie pakietów sieciowych wyszukiwanie nietypowych aktywności pakietów logowanie lub alarm host-based IDS ataki przeciew poszczególnym hostom nietypowa aktywność aplikacji biometryczne kontrola spójności systemu plikowego analiza plików log
BSK 2007 Igor T. Podolak 5 potrzeba IDS zwykle nie jesteśmy świadomi ataków ataki w szeregu krokach skanowanie próba dostępu właściwy atak IDS pozwala na wykrycie pierwszych kroków przed właściwym atakiem dwa podstawowe podejścia wykrywanie anomalii statystyczna analiza ruchu sygnatury dopasowywanie do typowych wzorców ataków
BSK 2007 Igor T. Podolak 6 Wykrywanie anomalii normalna aktywność i wyraźne odchylenia uruchomione niespodziewane aplikacje duży ruch w sieci niestandardowe pakiety poziom standardowej aktywności musi być często aktualizowany trudne do określenia zamiary atakujących tylko informacja o nie standardowości często związane z innymi typami
BSK 2007 Igor T. Podolak 7 Wykrywanie wzorców sygnatura jest wzorcem sygnatury dla większości ataków dopasowywanie wzorców obliczeniowo czasochłonne sygnatury powstają stale nawet codziennie są nowe nie wszystkie przetestowane i pewne listy znanych dziur do znalezienia na przykład na http://cve.mitre.org - Common Vulnerabilities and Exposures
BSK 2007 Igor T. Podolak 8 Sygnatura Nimda Nimda worm infekuje serwery Internetowe wysyła łąńcuch GET /scripts/..%c0%af../winnt/system32/cmd.exe?c+dir celem jest zyskanie uprawnień %c0%af to Unicode dla slasha atak stara się dojść do korzenia i wykonać cmd.exe możliwe różne postacie zwykłe dopasowanie może nie działać zawsze lepiej zdekodować wyrażenie i wtedy dopasować bardziej złożone obliczeniowo
false negatives vs. false positives dokładna sygnatura będzie świetnie rozpoznawać atak mała zmiana ataku spowoduje, że nie wykryje go rezultatem jest brak alertu false negative sygnatura bardziej ogólna wykryje atak jednak wiele pakietów nie będących atakami też będzie pasować false positive trzeba znaleźć równowagę atakujący starają się obejść IDS (IDS evasion) BSK 2007 Igor T. Podolak 9
BSK 2007 Igor T. Podolak 10 równowaga cmd.exe pasuje do cmd.exe analysis.html bardziej złożone sygnatury są zwykle lepsze obejście IDS trzeba brać pod uwagę takie próby częsta wymiana znaków na Unicode potrzeba mniejszej ilości niepotrzebnych alarmów pełna lista prawdopodobnych ataków jest trudna do przeglądnięcia prawdziwe ataki mogą się przedostać
BSK 2007 Igor T. Podolak 11 Alarmowanie, logowanie, raporty alarmy komunikaty na konsole analityka e-maile SNMP raportowanie proste dla jednego czujnika każdy sensor do osobnego raportu logowanie oprogramowanie analizujące
Oprogramowanie Cisco Secure IDS Sourcefire Intrusion Management System Snort, etc. zwykle logowanie, alarmy, raporty, analiza, statystyki statystyki pomagają wykrywać złamania reguł bezpieczeństwa IDS musi móc logować pakiety analityk musi móc sprawdzić inkryminowany pakiet uwaga na systemy z tajnymi sygnaturami brak możliwości ich sprawdzenia BSK 2007 Igor T. Podolak 12
BSK 2007 Igor T. Podolak 13 Rozproszone usługi IDS rozproszone usługi logi z wielu sensorów i wielu instytucji możliwość obliczenia korelacji między sygnałami możliwość wyszukania wzorców tak można wykryć rzeczywisty atak na hosta rozproszony IDS informuje o możliwym ataku Symantec DeepSight Analyzer http://analyzer.symantec.com/ Dshield http://www.dshield.org
BSK 2007 Igor T. Podolak 14 Podstawowe zadania IDS wykrywanie słabości aktywne użycie IDS dla wykrycia dziur w systemie audyt bezpieczeństwa IDS może kontrolować poprawną pracę zapór ogniowych (i innych urządzeń bezpieczeństwa) łamanie polityki bezpieczeństwa można dostosować IDS do kontrloli ustalonych protokołów
BSK 2007 Igor T. Podolak 15 obsługa ataków idealnie dużo pracowników przez 25 godzin na dobę analizujących i odpowiadających na wszystkie ataki rzadkie, ale c oraz częstsze przeglądanie raportów tak często jak to możliwe raport jest cenny nawet po włamaniu pokazuje metody włamania pokazuje różne słabości systemu pozwala na dochodzenie szkód
BSK 2007 Igor T. Podolak 16 czujniki IDS zwykle wiele sensor na każdy segment sieci wiele czujników pozwala na dopasowanie do charakterystyk danych segmentów ale nie więcej niż jesteśmy w stanie monitorować im więcej sensorów, tym system staje się bardziej odporny
ale gdzie? blisko urządzeń filtrujących w segmencie zewnętrznym identyfikacja wszelkiego podejrzanego ruchu na wewnętrznym segmencie identyfikacja ruchu, który przeszedł przez zaporę najlepiej z obydwu stron czujnik po zewnętrznej stronie ma wiele pracy a jeśli jesteśmy ograniczeni do jednego? często sugerowane na zewnątrz ale wewnętrzny pozwoli wykryć ruch, który przeszedł IDS będzie porzucał pakiety gdy ruch będzie zbyt duży część pakietów niezauważona dajmy inny BSK 2007 Igor T. Podolak 17
ale gdzie? w sieci wewnętrznej szczególne podsieci jak R&D wymagają dodatkowych kontrola reguł zapory zabezpieczenie przed nieuprawnionym dostępem ochrona przed ruchem wychodzącym z podsieci czujniki i switche w takim środowisku nie cały ruch jest widoczny trudna konfiguracja konfiguracja portu rozgłaszającego switch-a switche zaprzestają wysyłania pakietów na port rozgłaszający w przypadku dużego ruchu czasem IDS widzi tylko ruch TCP w jednym BSK 2007 Igor T. Podolak 18
BSK 2007 Igor T. Podolak 19 Snort open source, projekt Martiego Roesch www.snort.org system oparty na sygnaturach sygnatury pozwalają na kontrolę nagłówków i zawartości pakietów możliwość napisania bardzo szczegółowych reguł możliwość porównania zatrzymanych pakietów z sygnaturami możliwość kontroli każdego pola dostępne bardzo wiele sygnatur całkiem nowe nie zawsze sprawdzone
BSK 2007 Igor T. Podolak 20 struktura reguł Snort reguły są bezstanowe nagłówek reguły (pierwsza część) kto bierze udział opcje reguły (druga część) co ma być w pakiecie alert tcp!10.1.1.0/24 any > 10.1.1.0/24 any (flags: SF; msg SYN FIN scan ;) alarm gdy pakiet tcp ze źródła innego niż 10.1.1.0/24 do 10.1.1.0/24 do dowolnego portu pakiet ma obie flagi SYN i FIN ustawione alarm z komunikatem
Pola nagłówka akcja alert utwórz pozycję w pliku alarmów i loguj pakiet zawartość może być również logowana opcjonalnie log tylko loguj pass jeśli pasuje, to snort przerywa testowanie wygodne dla obchodzenia wyjątków niedozwolone pakiety, ale poza jednym hostem activate aktywuj reguły dynamiczne dynamic reguły do uaktywnienia BSK 2007 Igor T. Podolak 21
BSK 2007 Igor T. Podolak 22 pola nagłówka protocol typ protokołu (TCP, UDP, ICMP, IP, ARP,RARP, GRE, RIP, IPX) Snort nie rozpoznaje IPSec źródłowy i docelowy IP oraz port możliwość definiowania podsieci kierunek > < <>
BSK 2007 Igor T. Podolak 23 pola opcji (flags: SF; msg: SYN FIN scan ;) opcje składają się z słów kluczowych i wartości opcje msg: <message text> komunikat logto: < filename > możliwość rozdzielenia logów alert udp any any > 192.168.100.0/8 31355 (msg: trinoo port ; logto: DDoS ;)
BSK 2007 Igor T. Podolak 24 pola opcji ttl: <number> pakiet z niskim ttl i portem 33000-34000 to prawdopodobnie UNIX-owy traceroute niskie ttl oraz pakiet ICMP to prawdopodobnie Windows tracert alert udp any any > 192.168.100.0/8 33000 34000 (msg: UNIX traceroute ; ttl: 1;) alert icmp $EXTERNAL_NET any > $HOME_NET any (msg:"icmp traceroute ipopts"; ipopts:rr; itype:0; reference:arachnids,238; classtype:attempted recon; sid:475; rev:4;)
BSK 2007 Igor T. Podolak 25 pola opcji id: <number> pole identyfikatora w nagłówku IP (16 bitów) używany dla łączenia pofragmentowanych pakietów kontrola niezwykłych wartości, np. 0 alert icmp any any > 192.168.100.0/8 any \ (msg Suspect IP identification # ; id: 0;) dsize: [< >] number rozmiar danych alert icmp any any > 192.168.100.0/8 any (msg Large ICMP payload ; dsize > 1024;)
pola opcji itype: <number> and icode: <number> kontrola pakietów ICMP z odpowiednimi typami i kodami alert icmp $EXTERNAL_NET any > $HOME_NET any (msg:"icmp PING NMAP"; dsize:0; itype:8; reference:arachnids,162; classtype:attempted recon; sid:469; rev:4;) seq: <number> numer sekwencyjny niektóre ataki mają szczególny alert tcp any any > any any (msg: Possible Shaft DdoS ; seq: 0x28374839;) zależne od konfiguracji -> false negatives BSK 2007 Igor T. Podolak 26
BSK 2007 Igor T. Podolak 27 pola opcji flags <flags string> F FINish, S SYNchronize, R RESET, P Push, A ACKnowledgment, U Urgent, 0 no flags set możliwe modyfikatory '+' flaga wymieniona i ewentualnie jakieś inne, e.g. A+ ACK i inne '*' a dowolna kombinacja wymienionych, e.g. SF albo SYN albo FIN albo obie '!' flaga nie ustawiona, e.g.!a ACK nie ustawiona alert tcp any any > any any (msg Null scan ; flags: 0;) na wyjściu wymienione wszystkie flagi, które były ustawione w pakiecie
BSK 2007 Igor T. Podolak 28 pola opcji content: <value> [content: <value>] kontrola zawartości wolne używać z uwagą! testować zawsze na koncu wiele podanych zawartości może wystąpić w dowolnym porządku w pakiecie alert udp $EXTERNAL_NET any -> $HOME_NET 53 (msg: Exploit BIND tsig Overflow Attempt ; content: 00 FA 00 FF ; content: /bin/sh ;)
BSK 2007 Igor T. Podolak 29 pola opcji offset: <number> depth: <number> offset: przesunięcie dopasowanie w głąb dpeth: ograniczenie obszaru dopasowania alert tcp any any > 192.168.100.0/8 21 (msg: Attempted anonymous ftp access ; content: anonymous ; offset: 5) alert udp any any >$HOME_NET 5632 (msg: PCAnywhere Startup, content: ST ; depth: 2;) nocase; niezależność od liter
pola opcji resp <resp_option[, resp_option...]> pozwala na związanie akcji przerwanie sesji TCP albo wysłanie ICMP konieczność aktywacji przy kompilacji możliwy wybór akcji rst_snd sygnał TCP_RESET do wysyłającego rst_rcv sygnał TCP_RESET do odbierającego rst_all sygnał TCP_RESET do obydwu icmp_net sygnał ICMP_NET_UNREACH do nadawcy icmp_port sygnał ICMP_PORT_UNREACH do odbiorcy icmp_all sygnał ICMP_UNREACH (obydwa) do nadawcy alert tcp any any > $HOME_NET 21 (msg: FTP password retrieval ; flags: A+; resp: rst_all; content: passwd ;) BSK 2007 Igor T. Podolak 30
pola opcji tag: <type>, >count>, <metric>, [<direction>] by zapisać więcej pakietów po dopasowanym to record more packets after the one that triggered type = session pakiety z obydwu stron = host pakiety tylko z jednej strony count liczba (zależna od metryki) metric = packets dla zapamiętania pakietów = seconds dla zapamiętania przez okres czasu direction = src tylko ze źródłowego IP dst tylko z docelowego IP alert tcp any any > any 21 (msg: FTP passwd access ; flags: A+; content: passwd ; tag: session, 10, packets) BSK 2007 Igor T. Podolak 31
BSK 2007 Igor T. Podolak 32 pola opcji reference podaje URL gdzie można znaleźć opis problemu bugtraq - http://www.securityfocus.com/bid/ cve - http://cve.mitre.org/cgi-bin/cvename.cgi?name= arachnids - http://www.whitehats.com/info/ids McAfee - http://vil.nai.com/vil/conetnt/v_ nessus - http://cgi.nessus.org/plugins/dump.php3?id=
BSK 2007 Igor T. Podolak 33 ICMP_REDIRECT Sid: 436 Summary: This event is generated when a network host generates an ICMP Redirect for the Type of Service and Host datagram. Impact: Redirect messages are normally an indication that a shorter route to a particular destination exists.
BSK 2007 Igor T. Podolak 34 ICMP_REDIRECT Detailed Information: ICMP Redirect messages are generated by gateway devices when a shorter route to the destination exists. When a gateway device receives an Internet datagram from a host on the same network a check is performed to determine the address of the next hop (gateway) in the route to the datagrams destination. The datagram is then forward to the next hop on the route. If this gateway device is also on the same network, the gateway device generates an ICMP Redirect message and sends it back to the host that originally generated the traffic. The ICMP redirect message informs the original host that a shorter route exists and any additional traffic should be forwarded directly to the closer gateway device.
ICMP_REDIRECT Attack Scenarios: Attackers on the local subnet could potentially use ICMP Redirect messages to force hosts to use compromised gateway devices. Ease of Attack: Numerous tools and scripts can generate this type of ICMP datagram. False Positives: ICMP Redirect datagrams are legitimate Internet traffic if a shorter route to a destination actually exists. False Negatives: None known Corrective Action: Ingress filtering should be utilized to block incoming ICMP BSK 2007 Igor T. Podolak 35
BSK 2007 Igor T. Podolak 36 ICMP_REDIRECT Contributors: Original rule writer unknown Sourcefire Vulnerability Research Team Matthew Watchinski (matt.watchinski@sourcefire.com) Additional References: RFC792