Zapory Ogniowe (Firewall).
Każdego dnia przybywa około 20 000 nowych komputerów podłączonych do sieci Internet. Ta największa publiczna sieć komputerowa przyciąga coraz szersze rzesze użytkowników, oferując i bogate zbiory informacyjne, grupy dyskusyjne, wymianę poczty elektronicznej, gry sieciowe, ... a nawet możliwości prowadzenia rozmów "on line". Opierając się na danych statystycznych sporządzonych przez Network Wizards http: //www. nw. com można przypuszczać, iż przed zakończeniem naszego stulecia Internet obejmie swoim zasięgiem ponad 50 milionów komputerów Wraz ze wzrostem liczby użytkowników Internetu rośnie ryzyko utraty prywatności lokalnych sieci komputerowych. Najbardziej skutecznym sposobem zniwelowania potencjalnych zagrożeń bezpieczeństwa, wynikających z podłączenia do sieci publicznej, jest fizyczne odseparowanie wszystkich komputerów wspomagających realizację istotnych zadań organizacji i przechowujących strategiczne informacje. W praktyce, oznacza to kompleksową przebudowę fizycznej infrastruktury systemu informatycznego, co w dużej większości przypadków pociąga za sobą poważne wydatki finansowe. Rozwiązaniem tego problemu jest zastosowanie oprogramowania określanego mianem "ściana ognia" (ang. firewall), dedykowanego do ochrony systemu lokalnego przed ingerencją zewnętrzną. Określenie "ściana ognia", jak do tej pory, nie przyjęło się w polskiej terminologii informatycznej i w związku z tym pozostaniemy przy oryginalnej nazwie tego oprogramowania (firewall).
Zapory umożliwiają firmom utworzenie konfiguracji, która jest kompromisem między siecią izolowaną od Internetu i siecią swobodnie do niego podłączoną. Zapora jest umieszczana między wewnętrzną siecią firmy i siecią zewnętrzną. Daje ona prosty mechanizm kontroli ilości i rodzaju ruchu sieciowego między obiema sieciami. Termin firewall (zapora przeciwpożarowa) zaczerpnięto z budownictwa. Bloki mieszkaniowe i budynki biurowe w Stanach Zjednoczonych są często wyposażane w specjalnie skonstruowane ściany, które się opierają ogniowi. Jeśli budynek zacznie się palić, będzie w stanie opanować jedną stronę budynku, ale właśnie specjalna zapora go zatrzyma lub przynajmniej spowo1lni do czasu przybycia pomocy.
Ta sama filozofia potrzebna jest do ochrony sieci lokalnej przed napastnikami z zewnątrz. Zapora sieciowa używana wewnątrz firmy może minimalizować ilość strat, gdyż napastnik może się włamać do jednej grupy komputerów, ale zapora uniemożliwi mu dostęp do pozostałych. Zapora postawiona między siecią lokalną firmy i Internetem uniemożliwia złośliwym użytkownikom, którzy uzyskali dostęp do komputerów poza firmą, przejęcie kontroli nad komputerami wewnątrz nie dopuszczając do zdobycia przez ruch punktu zaczepienia po jej wewnętrznej stronie. Określenie zapora "przeciwogniowa" (ang. firewall) jest w przypadku bezpieczeństwa sieciowego bardzo na miejscu, zawsze istnieje bowiem niebezpieczeństwo przeniesienia się "ognia" z Internetu do sieci lokalnej.
Zagrożenia.
Przed przystąpieniem do omówienia zagadnień ochrony sieci prywatnej, należało by ogólnie naświetlić jakie niebezpieczeństwa wynikaj ą z faktu połączenia z siecią publiczną - aby zbudować skuteczny system zabezpieczeń trzeba wiedzieć przed czym się bronić. Zasadniczo, oprogramowanie "firewall nie zapewnia ochrony systemu przed użytkownikami lokalnymi, można więc ograniczyć rozważania, zagadnienia zagrożeń zewnętrznych, zakładając optymistycznie, że wszystkie osoby posiadające lokalny dostęp do systemu są upoważnione do wykonywanych przez nie operacji. Nie znaczy to jednak że nie mamy możliwości zbudowania systemu wewnętrznych zabezpieczeń. Wiele produktów nadaje się doskonale i do tego celu poszerzając spektrum zastosowań na sieci Intranet.
Najpowszechniej praktykowaną metodą uzyskiwania dostępu do odległego systemu jest wykonywanie zdalnego logowania Telnet (ang. Network Terminal Protocol), przeprowadzanego najczęściej na bazie łączności modemowej "dial-up". Warunkiem wykonania pomyślnego logowania na odległym komputerze jest znajomość identyfikatora i hasła użytkownika, który jest do tego upoważniony. Uzyskanie identyfikatora z reguły sprowadza się do zdobycia adresu e-mail dowolnego użytkownika tego systemu.. Hasła użytkowników mogą być pozyskane drogą zgadywania, przechwytywania lub rozszyfrowania pliku zawierającego hasła użytkowników systemu. Co ciekawe, sama aplikacja nie stanowi zagrożenia - to przyjęty system kontroli tożsamości jest słaby. Statystyki podają, iż duża większość użytkowników jako hasła dostępu do konta przyjmuje łatwe do zapamiętania słowa (np. imiona, nazwy miejscowości, ...), które w równie łatwy sposób mogą być odgadnięte przez cierpliwego włamywacza ("hackera").
Przechwytywanie hasła może odbywać się za pośrednictwem ukrytego w systemie programu, który odbiera wpisywane przez użytkownika dane (np. fałszywy program login) lub poprzez prowadzenie "nasłuchiwania sieci" (ang. sniffing) wykonywanego w trakcie zdalnego logowania legalnego użytkownika. "Sniffing" odbywa się za pośrednictwem urządzeń podsłuchowych, podłączonych do sieci na drodze transmisji danych. W najprostszym przypadku może to być zmodyfikowana karta sieciowa umożliwiająca selektywne przechwytywanie pakietów.
"Sniffing" to bardzo poważny problem, który nie ogranicza się wyłącznie do przechwytywania haseł w przypadku prowadzenia nieszyfrowanej transmisji danych "nasłuchiwanie sieci" może prowadzić całkowitej utraty poufności przesyłanych informacji. Niestety, na dzień dzisiejszy nie ma skutecznych narzędzi przeciwdziałania tej technice - dostępne programy monitorujące pracę sieci komputerowe gwarantują wykrycia dobrze zamaskowanego urządzenia podsłuchowego. Nawet zastosowanie łącza światłowodowego nie zapewnia pełnej tajności transmitowanych informacji (więcej informacji można uzyskać w Internecie pod adresem: http: //www. cert. org).
W momencie pozyskania pliku zawierającego zaszyfrowane hasła użytkowników (w UNIX /etc/passwd, /etc/snactow), mogą zostać podjęte próby uzyskania ich jawnej postaci. Najczęściej stosowaną techniką jest tzw. "atak brutalny" (ang. brute forte attack), sprowadzający się do szyfrowania i porównywania wszystkich słów zawartych w przygotowanym do tego celu słownika
Potencjalne zagrożenie stanowią wszystkie usługi pozwalające na prowadzenie zdalnej pracy pomiędzy tzw. "zaprzyjaźnionymi" komputerami: RLOGIN, RSH i RCP. Poprzez podstawienie odpowiednich przygotowanych plików konfiguracyjnych .rhosts i hosts.equiv, osoby nieupoważnione mogą uzyskać uprawnienia legalnego użytkownika systemu. (Pierwszym krokiem administratora powinno być zablokowanie tych aplikacji lub instalacja SSH (Secure Shell), jeżeli stosowanie ich okaże się konieczne.)
Pewne niebezpieczeństwo stanowi usługa transferu plików FTP (File Transfer Protocol). Wykorzystując niewłaściwie administrowany serwer FTF, użytkownik Internetu może wejść w posiadanie ważnych informacji, przechowywanych w systemie plików komputera. Bardzo groźny zjawiskiem jest wykorzystanie FTP do rozprowadzania tzw. "złośliwych programów" (ang. malicious programs).
W gronie tych aplikacji możemy wyróżnić:
wirus (ang. virus) - program dopisujący się do innego programu, który atakuje system w trakcie uruchomienia swojego "żywiciela";
bakteria (ang. hatteria), "królik" (ang. Babbit) - program wielokrotnie kopiujący i uruchamiający swój własny kod źródłowy celem pełnego zagarnięcia zasobów komputera (procesora, pamięci operacyjnej, przestrzeni dyskowej) i doprowadzenia do upadku systemu;
koń trojański (ang. trojan horse) - program, który udaje pracę innego legalnego programu w międzyczasie wykonuje szereg niepożądanych czynności (np. fałszywy program Login hasło użytkownika);
bomba czasowa (ang. time borrcb), "bomba logiczna" (ang. logic bomb) - fragment programu podejmujący działanie tylko w określonym czasie (np. dzień urodzin autora programu lub w momencie spełnienia ustalonych warunków;
robak (ang. worm) - program, który powiela samego siebie, wykonuje ustalone czynności (najczęściej niekorzystne dla systemu) i próbuje przenieść się do innego komputera w sieci.
Z uwagi na właściwość samoprzenoszalności, "robak'" wydaje się być najbardziej niebezpiecznym członkiem powyżej wymienionej grupy programów. Program napisany przez Roberta Morrisa przenosił się z komputera na komputer poprzez wykorzystywanie słabych punktów aplikacji SENDMAIL, FINGERD i RHOST.
Inną kategorią zagrożeń są tzw. "furtki" (ang. backdoors) lub "włazy" (ang. trapdoors), które stanowią nieudokumentowane wejścia do legalnych programów. Niekiedy, programiści tworzą alternatywne wejście do aplikacj i aby ułatwić sobie proces testowania. "Furtką" do programu może być ciąg znaków lub nawet wciśnięcie odpowiedniej kombinacji klawiszy. W momencie odnalezienia "furtki" nieuprawniony użytkownik uzyskuje kontrolę na aplikacją.
Omawiając niebezpieczeństwa związane z wykorzystaniem Internetu nie należy zapominać o dwóch najbardziej popularnych usługach - serwisie wymiany poczty elektronicznej SMTP (Simple Mail Transfer Protocol) i serwisie informacyjnym WWW (World Wide Web). Najsłabszą stroną system poczty elektronicznej Internetu okazał się program sendmail - w ostatnich latach odnotowano przypadki wykorzystania niedostatecznych zabezpieczeń tego programu do oszukiwania serwem SMTP, który poprzez błędną interpretację nadchodzących przesyłek, traktował je jako programy wykonywalne. Próby rozszerzenia możliwości WWW (np. interfejs CGI, nowe elementy HTML), spowodowały powiększenie pola działania "hackerów". Administratorzy serwerów WWW często decydują się na korzystanie ze sprowadzonych z Internetu skryptów CGI (Common Gateway Interface) Uruchamianie nieznanych aplikacji nieuchronnie wiąże się z podejmowaniem ryzyka, uzyskania odmiennego niż zakładano, rzeczywistego rezultatu działania programu. Ostatnie rozszerzenia języka opisu dokumentów hypertekstowych HTML (HiperText Markup Language), zmierzająw kierunku wprowadzenia do WWW elementów bezpośredniej interakcji z użytkownikiem. Bez wątpienia najbardziej eleganckim rozwiązaniem jest wzbogacanie stron HTML o aplikacje napisane w języku Java. Warto jednak pamiętać, iż Java jest bardzo "młodym" językiem programowania, a zastosowany system bezpieczeństwa może okazać się nie w pełni skuteczny. Informacje na temat ryzyka wynikającego z uruchamiania sprowadzanych z Internetu programów Java można znaleźć pod adresem http: //www. cs. princeton. edu.
Chyba najgłośniej omawianą obecnie techniką oszukiwania zabezpieczeń systemów (w tym systemie chronionych przez niektóre "firewall") jest "spoofing". Określenie "spoofing" wywodzi się z dziedziny wojskowej i oznacza przeciwdziałanie elektronicznym przeciwsystemom nieprzyjaciela poprzez nadawanie fałszywych informacji. W odniesieniu do zagadnienia transmisji danych w sieci TCP/IP "IP Source-Address Spoofing" oznacza proces przesyłania pakietów zawierających nieprawdziwy adres źródłowy (ang. souorce address), przez co komputer odbierający te pakiety błędnie identyfikują ich nadawcę. Pierwszy poważny atak przeprowadzony z wykorzystaniem tej techniki został odnotowany 22 stycznia 1995 roku w USA.
Zakres przedstawionych powyżej potencjalnych zagrożeń, jakie należy uwzględnić podczas budowania polityki bezpieczeństwa, został świadomie ograniczony tylko do tych zagadnień, którym można przeciwdziałać poprzez "firewall". Nie ma potrzeby rozważać niebezpieczeństwa przechwytywania zainicjowanych połączeń sieciowych (ang. connection hijacking) czy rejestracji fal elektromagnetycznych, emitowanych przez drukarki, monitory komputerów czy przewody instalacyjne sieciowej, skoro "firewall" w niczym tu nie pomoże. Należy także pamiętać, iż wymienione zagrożenia obejmują tylko to, co do tej pory zostało wykryte i ujawnione publicznie. Administrator systemu zobowiązany jest na bieżąco zapoznawać się z informacjami dotyczącymi zagadnień bezpieczeństwa ochrony.
Budowa polityki bezpieczeństwa sieci prywatnej.
Instalacja oprogramowania "firewall" powinna być poprzedzona staranną analizą potrzeb organizacji zakresie wykorzystania sieci Internet. Należy dokładnie sprecyzować z jakich usług będą korzysta pracownicy organizacji (użytkownicy lokalni), a jakie usługi będą świadczone na rzecz użytkowników zewnętrznych - w ostatnich latach coraz więcej organizacji decyduję się na prowadzenie komercyjnej działalności za pośrednictwem sieci Internet (np. reklama w serwisie WWW). W procesie planowania polityki bezpieczeństwa należy uwzględnić konieczność ochrony wszystkich newralgicznych punktach systemu informatycznego (np. serwery baz danych, serwery aplikacji, ... ). Budowa polityki bezpieczeństwa realizowana jest w następujących etapach:
1. Określenie wymagań użytkowników lokalnych w zakresie korzystania z usług sieci Internet.
2. Weryfikacja wymagań użytkowników lokalnych.
3. Określenie zakresu usług sieci prywatnej dostępnych dla użytkowników sieci Internet.
4. Weryfikacja udostępnianych usług sieci prywatnej.
5. Planowanie polityki bezpieczeństwa.
6. Zatwierdzenie przyjętej koncepcji ochrony.
7. Wdrożenie polityki bezpieczeństwa.
8. Testowanie systemu pod względem szczelności i efektywności.
9. Szkolenia użytkowników (jeżeli jest to konieczne).
Należy pamiętać, iż dopiero w momencie zatwierdzenia projektu systemu ochrony przez kierownictwo organizacji można przystąpić do wyboru oprogramowania, które sprosta zadaniu wdrożenia przyjętej polityki bezpieczeństwa. Z uwagi na dużą ilość dostępnych rozwiązań, wybór najbardziej odpowiedniego produktu nie jest łatwy. Jako decydujące kryterium możemy przyjąć: stopień złożoności technologicznej, zakres realizowanych zadań, przejrzystość interfejsu użytkownika i oczywiście cenę.
Opierając się na badaniach laboratoryjnych przeprowadzonych przez Natiohal Software Testing łaboratories i Data Communications (wyniki testów są ogólnie dostępne w sieci Internet pod adresem: http:llwww.data.comlLab-TestslFirewalls.html), można wyłonić pewne wyróżniające się rozwiązania:
Borderware Firewall Server firmy Border Network Technologies;
FireWall-1 firmy Checkpoint Software Technologies lub popularna wersja OEM z SunSoft
Digital Firewall for Unix firmy DEC;
Cyberguard firmy Harris Comcpuźer Systems Corporation.
Najwyższe wyniki testów, spośród wyżej wymienionych produktów, uzyskał Firewall-1. Dzięki zastosowaniu algorytmów selektywnej filtracji pakietów, Firewall-1 bardzo nieznacznie obniża efektywność funkcjonowania całego systemu.
Zestaw potencjalnych możliwości Firewall-1 obejmuje:
filtrację pakietów (przeciwdziałanie "spoofing", ... );
aplikacje pośredniczące (ang. application prox,y) (prowadzenie identyfikacji, kontroli tożsamości, kontroli uprawnień, ... );
translację adresów internetowych (ukrywanie wewnętrznych adresów IP, ... );
szyfrowanie i uwierzytelnianie (tworzenie wirtualnych sieci prywatnych (ang. virtual private network)).
Firewall-1 jako jedno z nielicznych rozwiązań prowadzi bieżące monitorowanie stanu wszystkich otwartych sesji komunikacji sieciowej, niezależnie od tego czy transmisja danych prowadzona jest oparciu o komunikację połączeniową (TCP) czy bezpołączeniową (UDP). Dużą zaletą tego oprogramowania jest także przejrzysty interfejs graficzny użytkownika, który w znacznym stopniu usprawnia proces wdrażania i nadzorowania realizacji przyjętej strategii ochrony.
Wdrożenie polityki bezpieczeństwa
Dysponując zatwierdzonym projektem systemu ochrony można przystąpić do fazy wdrożenia polityki bezpieczeństwa, która sprowadza się do zainstalowania i konfiguracji oprogramowania "firewall", odpowiedzialnego za egzekwowanie przyjętych ograniczeń. Proces wdrożenia polityki bezpieczeństwa obejmuje następujące fazy:
Definicja obiektów sieciowych.
Definicja użytkowników systemu.
Specyfikacja dodatkowych usług sieciowych. (jeżeli jest taka potrzeba)
Ustalenie zasad bezpieczeństwa.
Weryfikacja i instalacja.
WYBÓR ZAPORY OGNIOWEJ
Większość z zapór ogniowych może spełniać swe funkcje w wielu różnych konfiguracjach.
Niektóre z zadań jakie powinna spełniać zapora ogniowa:
Łączenie przez tunele szyfrowane takich sieci prywatnych, które czerpią dane z Internetu. W efekcie powstaje sieć rozległa, złożona z sieci lokalnych połączonych tunelami szyfrowanymi.
Zagwarantowanie kontrolowanego dostępu użytkownikom przebywającym poza przedsiębiorstwem macierzystym. Między zaporą przedsiębiorstwa i komputerem użytkownika można w razie potrzeby utworzyć tunel szyfrowany.
Ochronę usług izolowanych, na przykład serwera przedsiębiorstwa łączącego się z serwerem WWW usytuowanym w sieci operatora świadczącego usługi dostępu.
Zarządzanie blokadami między wieloma sieciami intranetowymi, zapewniające odizolowanie poufnych informacji w obrębie jednego przedsiębiorstwa albo spółki.
Ograniczenie dostępu do sieci prywatnej (intranet) przy jednoczesnym pełnym otarciu wewnętrznych serwerów WWW czy FTP (File Transfer Protocol) na usługi publiczne. Dla takich serwerów tworzy się wtedy osobną podsieć, nazywaną strefą zdemilitaryzowaną albo bastionem. Zapora ogniowa musi tu dysponować trzema interfejsami LAN.
Między bezpośrednim połączeniem z Internetem a pełną izolacją istnieje spora przestrzeń aplikacyjna. Producenci starają się tworzyć produkty, mające zapełnić tą lukę. Zapora ogniowa musi trafiać w potrzeby użytkownika oraz być adekwatną do zaawansowania technicznego samych zainteresowanych. Dostosowanie produktu do środowiska sieciowego może być kłopotliwe dla niedoświadczonego administratora. Bardzo często nie obejdzie się bez porady specjalisty. Zdarza się nawet, że niektóre firmy korzystają z fachowych porad specjalistów zajmujących się bezpieczeństwem Internetowym. Przy wyborze zapory nie trzeba się kierować wyborem renomowanych marek, czy delikatnością administrowania. Najważniejszą rzeczą jest aby zapora ogniowa potrafiła sprostać naszym potrzebom i oczekiwaniom.
Domyślne przepuszczanie kontra domyślne powstrzymywanie
Podstawowym zadaniem zapory sieciowej jest ograniczenie przepływu danych między dwoma sieciami. Aby postawić zaporę, trzeba najpierw określić, jakie rodzaje danych mają być przez nią przepuszczane, a jakie nie. Nazywa się to definiowaniem polityki zapory. Po tej operacji należy utworzyć mechanizmy, które będą zdefiniowaną politykę wprowadzać w życie .
Są dwie podstawowe strategie definiowania polityki zapory:
Pomyślne przepuszczanie
Ta strategia polega na określeniu zbioru warunków, których skutkiem będzie blokowanie danych. Każdy host lub protokół, który nie zostanie objęty polityką, będzie domyślnie przepuszczany.
Pomyślne powstrzymywanie
Ta strategia polega na określeniu protokołów, które będą mogły przechodzić przez zaporę, a także hostów, które będą mogły przesyłać przez nią dane i z którymi komputery wewnątrz zapory będą mogły się kontaktować. Wszystko, co nie będzie objęte definicjami, zostanie powstrzymane od przejścia przez zaporę.
Oba tryby mają wady i zalety. Główną zaletą domyślnego przepuszczania jest łatwość konfiguracji. Blokuje się protokoły "niebezpieczne" i polega na swoich możliwościach wykrywania nowych niebezpieczeństw i odpowiedniego reagowania w przypadku ich opracowania (wykrycia). Tryb domyślnego powstrzymywania polega na przepuszczaniu tylko tych protokołów, o które proszą użytkownicy i zarząd. Każdy protokół, który nie jest używany przez firmę, zostanie zablokowany.
Ani jeden, ani drugi tryb pracy nie stanowi panaceum na problemy bezpieczeństwa. W obu przypadkach można utworzyć konfigurację, która nie będzie prawidłowo zabezpieczała sieci przez niewłaściwe przepuszczenie (bądź nie zablokowanie) jakiegoś "niebezpiecznego" protokołu.
Stosowanie zapór
Zapory są częścią dobrej ochrony w głąb. Pomysł polega na zbudowaniu kilku poziomów zabezpieczeń między komputerami i zagrożeniami. Istnieją pewne oczywiste zagrożenia z zewnątrz, dlatego zapora powinna być ustawiona między siecią zewnętrzną i wewnętrzną.
Ponieważ zapora jest umieszczana na złączeniu dwóch sieci, może ona być używana do wielu celów innych niż tylko kontrolowanie dostępu, na przykład:
Zapory mogą być używane do blokowania dostępu do całej sieci z określonych miejsc w Internecie lub dostępu określonym użytkownikom do wybranych serwerów i usług.
Zapora może być używana do monitorowania komunikacji między sieciami wewnętrzną i zewnętrzną. Można na przykład za jej pomocą rejestrować punkty końcowe połączeń i ilość danych przesyłanych przez połączenia TCP/IP między firmą i światem zewnętrznym.
Zapora może być nawet używana do podsłuchiwania i rejestrowania całej komunikacji między sieciami. Przez linię dzierżawioną o przepustowości 56 KB/s i sprawności 100% można przesłać 605 MB danych dziennie, co oznacza że tygodniowy ruch przez takie połączenie może się zmieścić na jednej taśmie cyfrowej o szerokości 8 mm. Takie zapisy mogą mieć nieocenioną wartość przy badaniu przypadków penetracji sieci, wykrywaniu intruzów i wewnętrznych sabotażystów.
Budowa zapory
Generalnie wszystkie zapory składają się z dwóch rodzajów komponentów:
Dławików
Urządzeń komputerowych lub komunikacyjnych służących do ograniczania przepływu pakietów między sieciami. Dławiki są często realizowane za pomocą ruterów, ale jest to jedyna możliwość. Słowo "dławik" zaczerpnięto z elektroniki. Dławik w elektronice służy do stawiania większego oporu wybranym typom sygnałów.
Bram
Specjalnie skonstruowane programy, urządzenia lub komputery w obwodzie zapory, które odpowiadają na połączenia z zewnętrznych sieci i odpowiednio je obsługują. Inne teksty dotyczące zapór sieciowych nazywają je czasem postami bastionowymi. W idealnej sytuacji w komputerze-bramie nie powinny się znajdować żadne konta użytkowników. To ograniczenie pomaga poprawić niezawodność komputera i bezpieczeństwo użytkowników.
W bramie (bramach) mogą działać następujące rodzaje programów:
Sieciowe programy-klient
Programy takie jak telnet, ftp czy mosaic. Jedną z najprostszych metod udzielenia użytkownikom ograniczonego dostępu do Intemetu jest pozwolenie im na logowanie do komputera-bramy i bezpośrednie uruchamianie programów. Ta technika ma taką wadę, że w komputerze-bramie trzeba tworzyć wiele kont użytkowników lub jedno wspólne konto dla wszystkich.
Serwery proxy
Proxy to program, który występuje w roli innego komputera. W przypadku zapory sieciowej prozy to program przekazujący żądania przez zaporę, z sieci wewnętrznej do zewnętrznej.
Sieciowe programy-serwery
W komputerze-bramie mogą również działać serwery sieciowe. Można na przykład uruchomić program umożliwiający odbieranie poczty, taki jak sendmail lub smap (jednak serwer HTTP służący do prowadzenia stron systemu World Wide Web powinien być uruchomiony na osobnym komputerze}.
Wiele serwerów sieciowych może jednocześnie działać jako prozy. Jest to możliwe dlatego, że realizują one proste modele typu "zapisz i przekaż", co pozwala im przekazywać żądania lub komunikaty, z którymi się one nie mogą same uporać. Do serwerów, które mogą z łatwością działać jako prozy, należą serwery SMTP (ze względu na możliwość prostego przesyłania wiadomości pocztowych), NNTP (lokalnie buforowane artykuły grup dyskusyjnych), NTP (lokalnie obsługiwany czas) i DNS (lokalnie buforowane adresy hostów). W poniższych podrozdziałach znajdują się opisy różnych spotykanych obecnie konfiguracji zapór sieciowych.
Hosty z dwoma portami - zapora pierwsza
Pierwszą zaporą internetową były komputery unixowe wyposażone w dwa porty sieciowe: jeden dla sieci wewnętrznej i jeden dla zewnętrznej (patrz rysunek 21-1).
Rysunek 5-1: Zapora zbudowana z hosta z dwoma portami
W tej konfiguracji komputery unixowe działają jednocześnie jako dławik i brama. Usługi są oferowane użytkownikom sieci wewnętrznej na dwa sposoby:
Do komputera z dwoma portami może się zalogować użytkownik - nie jest to najlepsze rozwiązanie, gdyż może on złamać zabezpieczenia komputera zapory.
W hoście z dwoma portami mogą działać serwery proxy dla poszczególnych usług, które mają być przepuszczane przez zaporę.
Aby komputer działa jako dławik, musi nie przepuszczać pakietów z sieci zewnętrznej do wewnętrznej i odwrotnie. W większości Unixów używających protokołu TCP/IP odziedziczonego po wersji z Berkeley można to zrobić ustawiając zmienną jądra ip_orvarding na wartość 0. Niestety w niektórych systemach Unix pakiety będą nadal przekazywane, jeśli zostanie ustawiona opcja rutingu źródłowego. Dlatego zanim dany dwuportowy host użyje się jako dławik, należy dokładnie sprawdzić, czy będzie on prawidłowo blokował przesyłanie pakietów.
Budowanie pakietów - prosta zapora z jednym dławikiem
Prostą zaporę można zbudować, używając jednego dławika (patrz rysunek 21-2). W niektórych firmach używa się dostępnej w niektórych ruterach funkcji filtrowania pakietów, która służy do blokowania pewnych rodzajów usług TCP i UDP.
Rysunek 5-2: Zapora zbudowana z jednego dławika
Programowanie dławika jest bardzo proste. Należy:
Zablokować wszystkie pakiety nieużywanych usług.
Zablokować wszystkie pakiety, które ustawiają opcje rutingu źródłowego.
Zezwalać na połączenia TCP przychodzące z określonych serwerów sieciowych blokować pozostałe.
Ewentualnie zezwalać komputerom z sieci wewnętrznej firmy na inicjowanie połączeń TCP na zewnątrz do dowolnego komputera w Internecie.
Jest to konfiguracja prosta i bardzo popularna obecnie w Internecie. Wiele firm używa pojedynczego dławika (najczęściej rutera) jako zapory dla całej firmy.
Filtrowanie pakietów ma wiele zalet:
Jest proste i tanie. Większość firm jest w stanie zbudować filtr pakietów z ruterów, których już używa do łączenia się z Internetem.
Jest elastyczne. Jeśli odkryje się na przykład, że jakaś osoba w pewnej podsieci, powiedzmy 204.11.191.0, próbuje włamać się do komputera pracującego w sieci firmy, można po prostu zablokować całkowicie dostęp z tej podsieci do całej sieci firmy (oczywiście ta metoda będzie działać tylko do czasu, kiedy użytkownik z tej podsieci podejmie atak z innej podsieci lub zacznie fałszować adres IP zapisany w pakietach).
Filtrowanie pakietów ma również kilka wad:
Filtry nie mają najczęściej zbyt rozbudowanego systemu rejestrowania ruchu przechodzącego przez zaporę, prób włamań czy udzielania użytkownikom różnego rodzaju dostępu. Jednak niektóre obecne rutery mają już wbudowaną obsługę rejestrowania naruszeń filtra za pomocą narzędzia syslog.
Zasady filtrowania mogą być bardzo złożone - tak złożone, że trudno będzie stwierdzić, czy są prawidłowo zdefiniowane.
Nie ma prostego sposobu na przetestowanie filtra, innego niż przeprowadzanie eksperymentów, które może się okazać dość problematyczne w niektórych sytuacjach.
Filtry pakietów nie obsługują dobrze protokołu TCP, dlatego że przesyłanie danych odbywa się na portach TCP o wyższych numerach. Jednak ten problem może być złagodzony przez klienty FTP obsługujące tryb pasywny FTP.
Oprócz tych wad istnieje również kilka fundamentalnych usterek konstrukcyjnych:
Jeśli zabezpieczenia rutera zostaną złamane, wszystkie hosty w sieci będą szczególnie narażone na ataki z zewnątrz.
Nie można w prosty sposób stwierdzić, czy zabezpieczenia rutera zostały złamane, gdyż nie ma prostej metody sprawdzania tabel konfiguracji rutera.
Choć ruter może rejestrować liczbę pakietów przepuszczanych i nie przepuszczanych przez zaporę, nie może najczęściej rejestrować wielu innych ciekawych informacji.
Rutery można czasem konfigurować zdalnie, ale mogą one nie ostrzegać o tym, że ktoś usilnie próbuje odgadnąć hasło dostępu do procedur administracyjnych.
Mechanizm można łatwo pokonać przy minimalnej pomocy ze strony przekupionego pracownika lub przestępcę działającego z wewnątrz firmy.
Nie ma zabezpieczenia przed zawartością pewnych połączeń, takich jak poczta elektroniczna czy usługi FTP.
Jeden dławik, jedna brama-architektura z ekranowanym hostem
Bardziej bezpieczną zaporę można zbudować, stosując jeden dławik i jedną bramę. Ta brama jest specjalnie wybranym komputerem w sieci, na którym działa serwer poczty programy proxy (serwery WWW i anonimowego FTP powinny działać na osobnych komputerach poza zaporą). Dławik może być zrealizowany w postaci rutera z dwoma interfejsami. Obie sieci może rozdzielić na przykład ruter z dwoma interfejsami. Ewentualnie można zastosować ruter z interfejsem Ethernetu , który będzie spełniał jednocześnie funkcję bramy i połączenia z zewnętrznym dostawcą Internetu (zob, rysunek 21-3).
Rysunek 5-3: Zapora tradycyjna, zbudowana z jednego dławika i jednej bramy
W takiej konfiguracji programowanie jest nieco bardziej złożone:
Dławik zewnętrzny:
Blokowanie pakietów usług, które są niepotrzebne w sieci wewnętrznej. Blokowanie pakietów przesyłanych w ramach rutingu źródłowego lub mających ustawione "nietypowe" opcje (np. record-route).
Blokowanie pakietów, których miejscem przeznaczenia jest sieć wewnętrzna. Przepuszczanie tylko tych pakietów, których źródłowym bądź docelowym adresem IP jest adres bramy.
Brama:
W bramie działają serwery prozy, które umożliwiają użytkownikom z sieci wewnętrznej korzystania z usług sieci zewnętrznej.
Brama działa jako serwer poczty lub odbiera pocztę z sieci zewnętrznej i przekazuje ją do specjalnego hosta w sieci wewnętrznej.
W tej konfiguracji dławik jest skonfigurowany na przekazywanie pakietów tylko pomiędzy siecią zewnętrzną i bramą. Jeśli jakiś komputer z sieci wewnętrznej chce się skontaktować z siecią zewnętrzną, pakiet komunikacyjny musi przejść przez specjalny program "prozy" działający w bramie'. Użytkownicy z sieci zewnętrznej, zanim dostaną się do sieci wewnętrznej, muszą się łączyć z bramą.
Dwa dławiki, jedna brama - architektura z ekranowaną podsiecią ,
Aby uzyskać większy stopień bezpieczeństwa, niektóre firmy stosują zapory zbudowane z dwóch dławików (zob. rysunek 21-4).
Rysunek 5-4: Zapora zbudowana z dwóch dławików i jednej bramy
W takiej konfiguracji dławik zewnętrzny i brama są zaprogramowane jak wcześniej. Nowym elementem jest zastosowanie dławika wewnętrznego. Drugi dławik pełni funkcję awaryjną. Jeśli przestępcy uda się włamać do bramy i przejąć nad nią kontrolę, dławik wewnętrzny uniemożliwi mu posłużenie się bramą do przeprowadzenia ataków na inne komputery z sieci wewnętrznej.
Programowanie jest podobne do konfiguracji z jednym dławikiem:
Dławik zewnętrzny:
Blokowanie pakietów usług, które są niepotrzebne w sieci wewnętrznej.
Blokowanie pakietów przesyłanych w ramach rutingu źródłowego lub mających ustawione "nietypowe" opcje.
Blokowanie pakietów adresowanych do sieci wewnętrznej lub dławika wewnętrznego.
Przepuszczanie tylko tych pakietów, których źródłowym bądź docelowym adresem IP jest adres bramy.
Brama:
W bramie działają serwery proxy, które umożliwiają użytkownikom z sieci wewnętrznej korzystanie z usług sieci zewnętrznej.
Brama działa jako serwer poczty lub odbiera pocztę z sieci zewnętrznej i przekazuje ją do specjalnego hosta w sieci wewnętrznej.
Dławik wewnętrzny:
Blokowanie pakietów usług, które są niepotrzebne w sieci wewnętrznej.
Blokowanie pakietów przesyłanych w ramach rutingu źródłowego lub mających ustawione "nietypowe" opcje.
Blokowanie pakietów adresowanych do dławika zewnętrznego.
Przepuszczanie pakietów, których źródłowym bądź docelowym adresem IP jest adres bramy, a porty odpowiadają portom zdefiniowanym przez programy proxy działające w bramie.
Blokowanie całego pozostałego ruchu.
Używanie wielu bram
Zamiast używać jednej można używać kilku bram - po jednej dla każdego protokołu. Takie podejście cechuje się łatwością administrowania, ale wymaga używania większej liczby komputerów, które trzeba śledzić pod kątem nietypowych zdarzeń. Prostszym rozwiązaniem jest używanie jednej bramy i przeznaczenie kilku serwerów na poszczególne usługi sieci wewnętrznej, takie jak poczta, grupy dyskusyjne, WWW i inne.
Zapory wewnętrzne
Zamiast umieszczać wszystkie komputery firmy w jednej sieci lokalnej, można je pogrupować w kilka osobnych sieci, które się będą komunikować za pomocą specjalnych komputerów-bramek, ruterów i zapór sieciowych. Ewentualnie mogą one łączyć się ze sobą przez niezależne połączenia z Intemetem i z wykorzystaniem odpowiednich systemów kryptograficznych uniemożliwiających podsłuch przez dostawcę Internetu bądź innych jednostek.
Stosowanie wewnętrznych zapór ma sens w dużych firmach. W końcu nie ma powodu, aby pracownicy z laboratorium mieli mieć uprzywilejowany dostęp do komputerów używanych dla celów rozliczania lub aby osoby pracujące przy terminalach do wprowadzania danych miały próbować swoich sił przy włamaniach do serwerów działu nowych produktów. Stosując wewnętrzną zaporę, można utworzyć dodatkowe zabezpieczenia tam, gdzie są one potrzebne.
Celem zakładania niezależnych wewnętrznych sieci powinno być minimalizowanie strat, do których może dojść w razie włamania do wewnętrznych struktur informacyjnych firmy przez osobę z zewnątrz lub wewnątrz. Stosując dokładne izolowanie, można zminimalizować prawdopodobieństwo tego, że napastnikowi uda się utworzyć w jednej sieci punkt zaczepienia do dalszych włamań.
Zapora przeznaczona do wewnętrznego użytku jest bardzo podobna do zapory używanej do ochrony całej firmy. Ponieważ najczęściej za wszystkie sieci w danej firmie odpowiedzialne są te same zarządy, istnieje wielka pokusa przepuszczania przez zaporę wielu danych i nie blokowania wielu usług, choć w zasadzie te dane i usługi nie powinny mieć prawa przechodzenia przez zaporę.
Oto kilka podstawowych zasad, jakie warto stosować podczas konfigurowania wewnętrznych zapór:
Jeśli w firmie działa system NIS, zainstaluj w każdej sieci osobny serwer tej usługi. Zadbaj, aby poszczególne serwery i ich klienty miały własną domenę grupy sieciowej.
Nie zezwalaj, aby żadne serwery ani stacje robocze w sieci nie ufały hostom z innej sieci ani komputerom-bramkom (zasady działania zaufanych hostów opisano w rozdziale 17 w podrozdziale pt. "Zaufane hosty i zaufani użytkownicy").
Upewnij się, że użytkownicy mający konta w kilku sieciach lokalnych mieli różne hasła w każdej podsieci. Jeśli to możliwe, używaj haseł jednorazowych lub systemów z kartą identyfikacyjną.
W bramkach ustaw najwyższy poziom rejestrowania i najbardziej restrykcyjne zabezpieczenia. Jeśli to możliwe, nie zezwalaj użytkownikom na posiadanie kont w komputerach-bramkach.
Nie montuj partycji NFS z jednej sieci na drugiej. Jeśli koniecznie musisz to zrobić, eksportuj partycję NFS w trybie tylko do odczytu.
Stosowanie komputerów pełniących rolę wewnętrznych zapór sieciowych ma wiele zalet. Oto kilka z nich:
Pomagają ograniczać negatywne skutki fizycznych awarii w sieci wewnętrznej do mniejszej liczby komputerów.
Zmniejszają liczbę komputerów umieszczających informacje w określonych fizycznych segmentach sieci, ograniczając potencjalne zagrożenia wynikające z podsłuchu pakietów.
Ograniczają liczbę komputerów, które mogą być podatne na ataki przez uniemożliwienie działania.
Tworzą bariery dla włamywaczy (zarówno z wewnątrz, jak i z zewnątrz firmy) próbujących atakować komputery położone w określonych miejscach instalacji. Pamiętajmy, mimo to, iż wiele osób wydaje wiele pieniędzy i przeznacza dużo czasu na ochronę przed włamywaczami z zewnątrz, nieuczciwi pracownicy mają o wiele dogodniejsze położenie do dokonania zniszczeń. Odpowiednia konfiguracja wewnętrznych zapór sieciowych może pomóc w ograniczeniu zasięgu destrukcyjnych działań tych osób.
PODSUMOWANIE
W wielu firmach użytkownicy garną się do internetu po to, żeby mieć dostęp do grup dyskusyjnych, poczty elektronicznej i World Wide Web. Jednak rzeczywistość jest mniej kolorowa i okazuje się, że pracownicy rzadko używają tych dobrodziejstw do celów związanych merytorycznie z ich pracą. Również rzadko stosowanie narzędzi tego typu przyczynia się do poprawy ich efektywności. W rzeczywistości wiele firm obecnie zamyka swoim pracownikom dostęp do tych usług, dlatego że tracą oni na nie za dużo czasu. Zamiast oferować wszystkim pełny dostęp do Internetu, lepiej jest stosować inne rozwiązania dla tych, którzy potrzebują mieć, oraz inne dla tych, którzy chcą mieć dostęp do Internetu. Na przykład:
Należy skonfigurować małą sieć (składającą się z niewielkiej liczby komputerów) podłączoną do Internetu. Użytkownicy, którzy naprawdę potrzebują mieć dostęp do in ternetu, powinni otrzymać na tych komputerach konta na czas występowania tych potrzeb. Do przekazywania plików między tymi komputerami powinny służyć taśmy magnetyczne lub łącza szeregowe z protokołem UUCP, co zapewni ochronę wszystkich węzłów sieci przed atakami opartymi na wykorzystaniu protokołu IP.
Do przesyłania poczty między siecią wewnętrzną i Internetem należy używać stałego połączenia UUCP. Takie połączenie pozwoli pracownikom firmy wymieniać między sobą pocztę i znów nie narazi na ataki oparte na wykorzystaniu protokołu IP.
Pozostałym użytkownikom należy zapewnić pewien rodzaj dostępu do Intemetu - za pośrednictwem zewnętrznego dostawcy. Poza czasem pracy użytkownicy mogą mieć dostęp do Internetu (być może niektóre specjalne usługi też). Z dostawcą można wynegocjować całkiem dobre warunki, jeśli pod uwagę jest brana duża liczba kont. Cena może być na tyle atrakcyjna, że być może firma zdecyduje się na założenie tanich kont domowych dla użytkowników, co byłoby jeszcze jednym atutem przemawiającym za pracowaniem w firmie. Takie rozwiązanie byłoby prawdopodobnie tańsze niż stosowanie zapór sieciowych połączone z kosztem strat czasu przeznaczanego przez pracowników na bezowocne zwiedzanie WWW.