Ewolucja systemów wykrywania włamań

Wielu analityków uważa jednak, że analizy Gartnera opierają się na nieporozumieniu. Wielu zarządców sieci, a także analitycy Gartnera wkładają sieciowe IDS-y do tego samego worka co zapory ogniowe: technologii przeznaczonych do ochrony zasobów sieciowych. Natomiast sieciowe IDS-y mogą być dla analityków ochrony tym, czym analizatory protokołów dla zarządców sieci: narzędziami do wglądu w sieć, wspomagającymi rozpoznanie, co się w niej dzieje z punktu widzenia bezpieczeństwa.

IDS-y to pasywne sensory do wykrywania ataków, naruszeń reguł polityki bezpieczeństwa, podejrzanych zachowań i złych ustawień konfiguracyjnych związanych z bezpieczeństwem.

Pomyślna implementacja sieciowych IDS-ów zależy od trzech krytycznych czynników:

  • Świadomej polityki bezpieczeństwa. Sieciowy IDS nie wykryje podejrzanych zachowań dopóty, dopóki nie zostanie zdefiniowane co jest, a co nie jest dozwolone w sieci.

  • Właściwej klasyfikacji ruchu - dla sieciowych IDS-ów dane o ruchu są wtedy użyteczne, jeżeli wiadomo jakie zasoby są w sieci i jak wygląda ruch normalny i poprawny.

  • Architektury IDS - użyteczność IDS-ów zależy od implementowania ich w sposób, który zapewni uzyskiwanie użytecznej informacji. Oznacza to konieczność projektowania lokalizacji sensorów i technologii wykrywającej wg wiedzy o polityce bezpieczeństwa i zasobów sieciowych.
Pojawiła się też nowa generacja produktów IDS stosująca technikę "identyfikacji pasywnej" (passive fingerprinting). Identyfikacja pasywna wykorzystuje informacje związane z systemami funkcjonującymi w hostach będących celem ataku w sieci. IDS zbiera dane o systemie operacyjnym, usługach i niektórych aplikacjach pracujących na hoście, a następnie używa tych informacji do ograniczania fałszywych rozpoznań.

Z chwilą wykrycia pakietu przenoszącego podejrzany ruch IDS kojarzy ten ruch z profilem podatności docelowego hosta na potencjalny atak. Jeżeli host zostanie uznany za niewrażliwy na wykryte zagrożenie, to akcja alarmowa będzie zaniechana. IDS może np. zaniechać alarmu związanego z atakiem wykorzystującym Windows Remote Procedure Call skierowanym do serwera linuksowego.

Identyfikacja pasywna działa na zasadzie porównywania kluczowych informacji nagłówkowych TCP i IP, otrzymanych z hosta źródłowego, z bazą danych sygnatur specyficznych dla danego hosta docelowego. Najbardziej popularne identyfikatory z nagłówka to: rozmiar okna, czas "życia" pakietu, bit DF i całkowita długość pakietu.

  • Rozmiar okna (wSize - window size) określa rozmiar bufora pakietów wchodzących. System operacyjny ustawia ten parametr zazwyczaj na początku sesji TCP. Większość systemów operacyjnych typu Unix, takich jak Linux czy Solaris, utrzymuje stały rozmiar okna na czas trwania sesji TCP, system operacyjny Windows natomiast zmienia rozmiar okna w czasie trwania sesji.

  • Czas "życia" pakietu (TTL - Time-To-Live) jest kolejnym parametrem, który zapewnia użyteczną charakterystykę systemu operacyjnego hosta. Systemy operacyjne ustawiają w nagłówku IP różne wartości domyślne określające czas "życia" pakietu (liczbę przejść pakietu przez rutery, tzw. przeskoków - IPv6, lub maksymalny czas przebywania pakietu w sieci - IPv4), po przekroczeniu którego pakiet jest kasowany. I tak TTL o wartości 64 wskazuje na system operacyjny FreeBSD lub Linux, a TTL o wartości 128 z dużym prawdopodobieństwem określa Windows.

  • Flaga "nie fragmentuj" (DF - don't fragment) nie jest tak użyteczna, jak poprzednie identyfikatory, ponieważ większość systemów operacyjnych domyślnie ustawia tę flagę. Jednak może być ona wykorzystana na zasadzie identyfikacji wyjątków, gdyż niektóre systemy operacyjne, takie jak OpenBSD, pozostawiają te flagę nieustawioną.

  • Długość całkowita określa długość całego pakietu wraz z nagłówkiem IP i zawartością. Jest informacją z dużym przybliżeniem identyfikującą system - niektóre systemy operacyjne mogą być rozpoznane na podstawie domyślnej długości pakietów SYN i SYNACK. Długości te dla poszczególnych systemów operacyjnych wynoszą: Linux - 60, Solaris - 44 i Windows 2000 - 48.
Każdy z tych parametrów rozpatrywany osobno nie pozwala na określenie właściwych intencji nadawcy. Jednak wzięte razem i porównane z bazą danych sygnatur systemów operacyjnych umożliwiają często dokładne zidentyfikowanie systemu operacyjnego lub usługi, będących właściwym celem ataku.

I tak motor identyfikacji pasywnej IDS, sprawdzając pakiet z TTL o wartości 64, będzie zawężał zakres możliwych systemów operacyjnych do Linuksa lub OpenBSD - oba używają tej samej wartości TTL. Z kolei wartość wSize pozwoli na wyselekcjonowanie tylko jednego z nich, ponieważ jest różna dla każdego z tych systemów. Kombinacja parametrów identyfikujących jest tym, co tworzy sygnaturę systemu operacyjnego.

Rozpoznanie, czy docelowy host jest podatny na dany typ ataku, przed wygenerowaniem alarmu, w istotny sposób zmniejsza liczbę fałszywych alarmów. W rezultacie nowa generacja produktów IDS charakteryzuje się bardziej dokładnym rozpoznawanie włamań.


TOP 200