Zapora sieciowa (firewall) jest urządzeniem zaprojektowanym do zapobiegania niepowołanemu dostępowi do sieci. Urządzeniem tym zazwyczaj jest niezależny komputer, muter lub inny sprzętowy element sieci. Zapora stanowi jedyny punkt wejściowy do sieci lokalnej - jej zadaniem jest kwalifikacja nadchodzących z zewnątrz zgłoszeń według zadanych reguł i ich przetworzenie, co w najprostszym ujęciu sprowadza się do akceptacji, bądź odrzucenia żądania połączenia z danym serwerem usług sieciowych. Zapory sieciowe mogą przeprowadzać analizy nadchodzących pakietów różnych protokołów. W oparciu o taką analizę, zapora sieciowa może podjąć różne działania, zatem możemy zaprogramować firewall do przeprowadzania warunkowego przetwarzania pakietów. ("Jeśli zostanie napotkany pakiet spełniający warunek A, podejmij działanie B"). Takie warunkowe struktury nazywane są regułami. Na ogół, podczas "stawiania" zapory wyposażamy ją w zestaw reguł odzwierciedlający strukturę zależności służbowych w naszej organizacji. Na przykład, załóżmy, że w firmie jest dział sprzedaży i księgowości, a strategia przedsiębiorstwa wymaga, aby tylko dział sprzedaży miał dostęp do zasobów naszego serwera. Aby wymusić realizację tej polityki, wyposażamy nasz firewall w regułę nie przyjmującą zgłoszeń połączenia otrzymywanych z działu księgowości. W takim aspekcie zapory sieciowe są tym dla sieci, czym są przywileje użytkownika dla systemu operacyjnego. Windows NT pozwala na wskazanie użytkowników mających dostęp do danego pliku lub katalogu. Jest to kontrola dostępu na poziomie systemu operacyjnego. Podobnie zapory sieciowe pozwalają na zastosowanie kontroli dostępu do zasobów naszego serwera i stacji roboczych w sieci. Monitorowanie dostępu jest jednakże tylko częścią tego, do czego można wykorzystać nowoczesne zapory sieciowe - większość komercyjnych firewalli pozwala na kontrolę zawartości pakietów. Można to wykorzystać do odfiltrowywania niepożądanych skryptów JavaScript, VBScript i ActveX oraz plików cookies. Co więcej, mamy możliwość zdefiniowania reguł dyskryminujących poszczególne połączenia na podstawie tzw. sygnatur ataku. Sygnatury ataków są wzorcami poleceń charakterystycznymi dla danego ataku przypuśćmy, że nasz intruz "telnetuje' się na port 80 i wydaje szereg istotnych z jego punktu widzenia komend. Znając taki proces, możemy "nauczyć" firewall rozpoznawać i blokować podobne ataki na podstawie wzorca zawartego w sygnaturze. Podobne efekty można również uzyskać analizując ruch na poziomie pakietu niektóre programy do zdalnego ykorzystywania luk systemowych generują charakterystyczne pakiety, które można wyodrębnić i podjąć odpowiednie działania.

Rodzaje zapór ogniowych

 

  • Na rynku dostępnych jest wiele produktów sprzedawanych pod nazwą "Firewall", lecz różnią się one poziomem oferowanych zabezpieczeń. Filtry pakietowe (Network Level) na podstawie adresu źródłowego i docelowego oraz portu pojedynczego pakietu decydują, czy dana przesyłka może zostać przesłana dalej, czy też nie. Zwyczajny router nie jest zwykle w stanie takiej decyzji podjąć, lecz bardziej nowoczesne konstrukcje mogą przechowywać wewnętrzne informacje o stanie połączeń przechodzących przez niego, zawartości niektórych strumieni danych itp. Filtry pakietowe są zwykle bardzo szybkie, jednak ich wadą jest, że podane kryteria selekcji mogą okazać się niewystarczające dla niektórych usług internetowych, przez co do sieci byłyby przepuszczane niepożądane pakiety, a wtedy... Jedną z możliwych prób ataku może być umieszczenie pakietów wyższego poziomu w fałszywych ramkach MAC lub protokołu warstwy 3 (sieciowa) i 4 (transportowa) modelu ISO/OSI. Często wystarczy tylko zmienić adres nadawcy pakietu. W takim przypadku filtr pakietowy jest bezradny.

     

     

     

  • Bramki typu Circuit Level są w stanie przyporządkowywać pakiety do istniejących połączeń TCP i dzięki temu kontrolować całą transmisję. Zaawansowane systemy potrafią także kojarzyć pakiety protokołu UDP, który w rzeczywistości kontroli połączeń nie posiada.

     

     

  • Firewalle Application Level to, generalnie rzecz ujmując, hosty, na których uruchomiono proxy servers, które nie zezwalają na bezpośredni ruch pakietów pomiędzy sieciami oraz rejestrują i śledzą cały ruch przechodzący przez niego. Proxies potrafią więc niejako odseparować "wiarygodną" część sieci od podejrzanej; mogą magazynować najczęściej żądane informacje - klient kieruje swoje żądanie do proxy, który wyszukuje obiekt w swoich lokalnych zasobach i zwraca zamawiającemu. Dla każdej aplikacji (czyli usługi sieciowej, np. http, ftp, telnet, smtp, snmp, ...) istnieje osobny proxy, dla którego definiowane są reguły według których podejmowana jest decyzja o zaakceptowaniu bądź odrzuceniu połączenia. Niewątpliwym minusem tego rozwiązania jest konieczność stosowania wielu proxies do obsługi różnych aplikacji; jeżeli dla danego protokołu nie jest dostępny odpowiedni proxy, to dane przesyłane w tym formacie nie będą w ogóle przepuszczane przez bramkę. Na rynku dostępne są też systemy z proxies definiowanymi przez użytkownika funkcjonującymi jednakże nie na płaszczyźnie aplikacji, lecz analogicznie do filtrów pakietowych i bramek Circuit Level.

     

     

    Techniki integracji systemów ochronnych

     

  • Technika konwencjonalna.

     

    Klasyczny system firewall składa się z zewnętrznego routera z filtrem pakietowym, tak zwanej sieci granicznej (DMZ - demilitarized zone) i wewnętrznego routera, także z filtrem pakietowym. W strefie DMZ umieszcza się Bastion Hosta przeznaczonego do odparcia najcięższych ataków, na którym uruchamia się proxy servers dla poszczególnych aplikacji. Transmisja wszelkich danych musi odbywać się poprzez właśnie Bastion Hosta, co gwarantuje odpowiednia konfiguracja obu routerów.

     

  • Technika perspektywiczna.

     

    Nowoczesne firewalle działają według zasady all-in-one, czyli są to pojedyncze urządzenia łączące w sobie funkcje obu routerów i Bastion Hosta, czasami dysponując dodatkowymi serwisami w rodzaju DNS bądź mail. W przypadku takiego systemu serwery typu WWW najlepiej lokalizować w osobnej sieci bezpośrednio podłączonej do firewalla. W ten sposób firewall chroni serwer przed intruzami z zewnątrz, a w razie jego przełamania - sieć wewnętrzna pozostaje w dalszym ciągu dobrze zabezpieczona. Jednak do prawidłowej pracy takiego systemu niezbędna jest współpraca firewalla z minimum trzema kartami sieciowymi, co może w wielu przypadkach być warunkiem trudnym do spełnienia.

     

    Architektury zapór ogniowych

     

  • Dual-Homed Host Firewall (router ekranujący)

     

    Umieszczenie routera ekranującego i filtra pakietowego na komputerze z dwoma kartami sieciowymi jest najprostszym rozwiązaniem, w którym jeden komputer oddziela sieć lokalną od potencjalnych zagrożeń. Blokuje on ruch pomiędzy konkretnymi sieciami, hostami lub niektórymi portami.

     

  • Screened Host Gateway Firewall (firewall z routerem ekranującym)

     

    Taka konfiguracja wymaga dodania WAN routera, który dostarcza połączenie z WAN i filtrowanie pakietów. Rozwiązanie to pozwala umieścić komputer główny z dala od sieci publicznej. Komputer główny w tym przypadku to serwer firewall z usługami proxy i dodatkowym filtrowaniem pakietów. Przerwanie bezpośredniego połączenia tego serwera z Internetem pozwala znacząco zwiększyć bezpieczeństwo.

     

  • Screened Subnet Firewall (firewall z dwoma routerami ekranującymi)

     

    Firewall z dwoma routerami ekranującymi zapewnia dodatkową izolację sieci lokalnej. Oprócz routera WAN dodajemy router LAN, który kontroluje przepływ danych w sieci lokalnej. Dzięki temu, że komputer główny z Proxy Server jest umieszczony w osobnej sieci, atak ogranicza się jedynie do uderzenia na niego. Dodatkowo router LAN uniemożliwia nieautoryzowany dostęp do komputera głównego z wnętrza sieci. Oba routery mogą zostać skonfigurowane, by serwer komunikował się wyłącznie z nimi.

     

    Wymagania sprzętowe

    Każdy Firewall powinien posiadać co najmniej dwa adresy, więc wymagane będą dwie karty sieciowe lub inne interfejsy transmisyjne (np. porty szeregowe, modemy ISDN, karta sieciowa + modem). Jedno z urządzeń połączone jest ze strefą zdemilitaryzowaną (DMZ) a drugie z siecią prywatną. Interfejsy należy dobrać tak, aby nie zmniejszyć przepustowości łącza (np. w przypadku łącza FastEthernet dobieramy dwie karty 100Mb). Jeśli zdecydujemy się na darmowy Firewall działający pod Linuxem wystarczy komputer z 16MB RAM i 300MB partycją. Proste zapory ogniowe działające pod Windows 95 lub Windows NT mają wymaganie nie większe od systemu operacyjnego. Większe systemy komercyjne, jak Novell BorderManager potrzebują min. 48MB RAM (+500 KB RAM dla każdych 100 otwartych połączeń TCP przechodzących przez bamkę IP) i 250 MB miejsca na dysku. W celu zapewnienia poprawnego działania Proxy Cache należy zainstalować minimum 48 MB RAM i co najmniej dodatkowe 250 MB HDD w celu efektywnego wykorzystania pamięci podręcznej. Warto zwrócić uwagę, że przy dużej ilości połączeń obsługiwanych przez wszelkiego rodzaju Proxy Servers, dodatkowa pamięć RAM przyspieszy pracę.

     

    Wady i zalety firewalli

    Zalety:

     

  • ochrona systemu,
  • umożliwiają całej sieci korzystanie z jednego wspólnego adresu IP,
  • dają możliwość na podłączenie do Internetu systemom z protokołami innymi niż TCP/IP,
  • pozwalają monitorować połączenia WAN i ruch w sieci,
  • przy intensywnej pracy z WWW Proxy Cache Server pozwala zoptymalizować obciążenie na łączu WAN, a co za tym idzie - przyspieszyć pracę wielu osób,
  • zamiast wynajmować drogie międzymiastowe lub międzynarodowe linie dzierżawione możemy używać VPN i tańszych linii z dostępem do najbliższych węzłów sieci publicznej.

     

    Wady:

     

  • ograniczają dostęp do sieci z Internetu,
  • wymagają częstych uaktualnień, gdyż nowe typy klientów sieciowych i serwerów przybywają prawie codziennie,
  • uniemożliwiają bądź utrudniają zdalne zarządzanie siecią,
  • mało wydajne serwery pośredniczące zmniejszają wydajność sieci.