Wykład 13 Intrusion Detection Systems głowne slajdy 4 stycznia 2012 Instytut Informatyki Uniwersytet Jagielloński 13.1
Dzienniki systemowe wyszukiwanie i analiza rekordów synchronizacja informacji z różnych dzienników dzienniki systemowe Unix /var/log messages, boot, etc. znacznik czasu adres IP hosta tworzacego zapis nazwa procesu tworzacego komunikat opis komunikatu (nie standaryzowany) demon syslogd zapis bezpośredni z jadra systemu zapis przez połaczenie sieciowe UDP na porcie 514 kategorie authorization, authprivilages, cron, daemon, kern, lprinter, mail, news, security, syslog, user, uucp priorytety debug, info, notice, warning, error, critical, alert, emergency, panic 13.2
Informacje zapisywane w dziennikach uruchamianie, zamykanie, restart systemu przekroczenie dostępnych zasobów ewentualne problemy ze sprzętem dostęp użytkowników do systemu przez telnet, ssh, ftp, etc. komendy typu su zmiany uprawnień użytkowników, zmiany uwierzytelnień modyfikacja konfiguracji systemu próby modyfikacji dzienników 13.3
demon klogd zapisuje bezpośrednio komunikaty jadra do pliku syslogd zapisuje przesyłane komunikaty w trybie współdziałania syslogd może przyjmować komunikaty od innych hostów zapisany czas będzie czasem przyjścia komunikatu 1 format komunikatów nie jest standaryzowany 2 filtrowanie informacji jest trudne 3 UDP nie jest protokołem gwarantujacym dochodzenie wiadomości 4 komunikaty przesyłane sa otwartym tekstem ale to zwykle dzieje się w lokalnej sieci 5 tylko dane ostatniego komputera zostan a zapisane 6 dzienniki przechowywane w formacie tekstowym, co ułatwia nieuprawnione modyfikacje szyfrowanie i podpisywanie nie zabezpiecza przed niewykrytymi modyfikacjami dobrze jest używać kodów MAC z sekwencyjnym identyfikatorem jednorazowym inkrementowanym przy każdym zapisie 13.4
Rozwiazania konkurencyjne syslog-ng http://www.balabit.com/network-security/syslog-ng/ lepsza kontrola uprawnień przez pracę w chroot możliwość zapisywania do baz danych nie oferuje szyfrowania ani uwierzytelniania msyslog http://sourceforge.net/projects/msyslog/ możliwość kryptograficznego kodowania najważniejszych komunikatów połaczenie przez port 514 protokołem TCP mechanizm rejestrowania w Windows nie umożliwia zapisu sieciowego zapis na nośnikach jednorazowych najlepiej zapis w trybie inkrementacyjnym liczba danych może przekraczać prędkość zapisu nośniki maja mała pojemność 13.5
Agregacja i synchronizacja informacji z dzienników agregacja (centralizacja) dzienników ułatwia przegladanie dzienników informacje zapisywane w wielu plikach sa trudniejsze do usunięcia możliwe sa też metody globalnej obsługi dzienników z wielu sieci DShield www.dshield.org/ NetWatchman www.mynetwatchman.com/ DeepSight Analyzer analyzer.securityfocus.com/ 13.6
Systemy analiza dla wykrycia potencjalnych włamań dwa podstawowe modele N Network Intrusion Detection System analiza ruchu sieciowego, możliwego skanowania H Host Intrusion Detection System kontrola aktywności aplikacji kontrola spójności systemu plikowego Tripwire IPS Intrusion Prevention System może to jest przyszłość? 13.7
Typy ataków rekonesans skanowanie wyszukiwanie słabości aplikacji dla wirusów tworzone tabele odstępów między wykryciem dziury a pojawieniem się wirusa nieuprawniony dostęp ataki DoS 13.8
Typowe podejścia atak odbywa się zwykle w wielu kolejnych krokach skanowanie sieci w poszukiwaniu słabości próby dostępu do poszczególnych aplikacji właściwy atak wykrywanie anomalii wykrywanie sygnatur ataków 13.9
Wykrywanie anomalii odchylenia od normalnej aktywności uruchomione aplikacje pakiety i duży ruch w sieci dziwne sygnatury dziwne rozmiary pakietów złe sumy kontrolne wykorzystanie procesora i dysku użytkowników liczby operacji na plikach uruchomione usługi otwarte porty konieczność aktualizacji poziomu standardowej aktywności trudne do określenia zamiary atakujacego czy dana aktywność na pewno jest wstępem do ataku??? gwarantuja duża czułość wykrywania ataków sa jednak mało precyzyjne większa precyzja dla osadzonych na hostach 13.10
Wykrywanie wzorców ataki postępuja według ustalonych wzorców konieczność tworzenia sygnatur dla wszystkich ataków dopasowywanie sygnatur jest złożone obliczeniowo wciaż powstaja nowe ataki z nie istniejacymi jeszcze sygnaturami Common Vulnerabilities and Exposures lista znanych dziur cve.mitre.org/ 13.11
Nimda worm atakuje serwery internetowe wysyłajac GET /scripts/..%c0%af../winnt/system32/cmd.exe?+dir %c0%af to / przejście do korzenia wzorzec nie musi występować w postaci kanonicznej najlepiej zdekodować całe wyrażenie i wtedy dopasować bardziej złożone obliczeniowo 13.12
False positives false negatives minimalna zmiana ataku spowoduje nie wykrycie go zwykła operacja podobna do ataku spowoduje alarm konieczność równowagi między czułościa a precyzja bardziej szczegółowe sygnatury mniej false positives czasochłonne w ocenie więcej więcej do oceny czułość/precyzję opisuja ROC Receiver Operating Characteristic czułe (TP/(TP + FN)) tam, gdzie ataki nie moga być przeoczone precyzyjne (TN/(TN + FP)) tam, gdzie ważna wiarygodność alarmów 13.13
Reakcja alarmy e-maile, komunikaty do analityka SNMP raportowanie osobne dla każdego czujnika / miejsca w systemie logowanie wykorzystywane przez oprogramowanie analizujace Cisco, Sourcefire, Snort zazwyczaj logowanie, alarmy, analiza, statystyki administrator musi mieć możliwość analizy wyłapanych pakietów sygnatury nie moga być tajne! 13.14
Rozproszone czujniki musza być umieszczone w wielu miejscach skuteczne zbieranie informacji z wielu sieci wskazana możliwość szukania korelacji między atakami w różnych miejscach pozwala na szukanie dodatkowych wzorców znowu DeepSight, DShield co najmniej jeden czujnik w każdym segmencie sieci wiele charakterystyk administratorzy przez 25 godzin na dobę (albo dłużej) archiwizacja raportów 13.15
Metody obchodzenia fragmentacja pakietów reguły odnosza się zwykle do pojedynczych pakietów obrona może być składanie pakietów przed ocena przez modyfikacje protokołów na przykład inaczej sformatowane komunikaty HTTP ochrona może być próba normalizacji komunikatów złe numery sekwencyjne haker wysyła ostateczne potwierdzenie SYN w 3-way handshake ze sfałszowanym numerem sekwencyjnym host odrzuca, ale nie zdaje sobie z tego sprawy haker wysyła RST z fałszywym numerem zamykajac właściwe komunikaty sa ignorowane przez i wiele innych IPSec koduje informacje uniemożliwia to odczytywanie wszystkich informacji pojawia się konieczność wstawiania na różnych poziomach 13.16
Snort http://www.snort.org oparty na sygnaturach bardzo szczegółowe sygnatury otwarte umożliwiaja kontrolę każdego pola pakietu nie wszystkie dobrze skontrolowane czasem problemy z sygnaturami najświeższych ataków 13.17
Reguły Snort bezstanowe opcje stron wymiany pakietu (adresy) opcje zawartości pakietu alert tcp!10.1.1.0/24 any -> 10.1.1.0/24 any (flags: SF; msg SYN-FIN scan ;) lokalna sieć 10.1.1.0/24 atak z innego adresu i z dowolnego portu atak na nasza sieć dowolny host i port ustawione flagi SYN (S) i FIN (F) 13.18
Akcje Snort alert informacja i alarm log tylko logowanie pass przerwanie dopasowywania sygnatury dla obsługi wyjatkow activate dla reguł dynamicznych dynamic aktywacja innych reguł 13.19
Pola id dla wykrywania niezwykłych wartości adresu IP alert icmp any any > 192.168.100.0/8 any (msg Suspect IP identification # ; id: 0;) dsize wykrywajacy dziwne długości pakietów alert icmp any any -> 192.168.100.0/8 any (msg Large ICMP payload ; dsize > 1024;) seq dla wykrycia szczególnych numerów sekwencyjnych alert tcp any any -> any any (msg Possible Shaft DDoS ; seq: 0x28374839; ) 13.20