background image

 

 

Zapewnianie bezpieczeństwa w sieciach

Ryszard Wiatr

Przedmiot:  Sieci komputerowe

Wykład 11

background image

 

 

Zabezpieczenie sieci (informacji)

  to  uzyskiwanie pewności, że informacja

i usługi w sieci nie będą dostępne dla uzytkowników nieupoważnionych

Bezpieczeństwo sieci

Zabezpieczenie
zasobów fizycznych

Zabezpieczenie
informacji

background image

 

 

Polityka zarządzania informacją

Ludzie są najsłabszym ogniwem w systemie informatycznym:

-   zła wola pracownika
-   nieodpowiedzialność
-   nieświadomośc polityki informacyjnej firmy

Pracownik powinien być świadomy polityki zarządzania informacją w firmie:

-   jak ważna jest informacja w mojeje organizacji?
-   prawa autorskie, polityka firmy w dziedzinie powielania dokumentów
    chronionych prawem autorskim
-   jaką część dostępnej mi informacji mogę omawiać z innymi pracownikami,
    z osobami spoza firmy
-  czy firma używa informacji należących do innych podmiotów
-   jakich informacji można udzielac klientom
-   czy wolno mi zdalnie łaczyc się z zasobami firmy

To zbiór zasad dotyczących dostępu do informacji i jej ochrony

background image

 

 

Firma

A

Firma

B

Firma

C

Gdy kilka organizacji wymienia informację, to powstaje wypadkowa
polityka informacyjna;  organizacja nie zna skutków komunikacji i interakcji
i innymi organizacjami, chyba że uzgodniły swoje polityki na poziomie
wzajemnego zaufania

Tu organizacja A nie udostępnia swoich informacji organizacji C, ale może ona
docierać do niej pośrednio, mimo że polityka informacyjna każdej organizacji
jest przestrzegana

background image

 

 

Zapewnianie bezpieczeństwa w intersieci

Autoryzacja
uwierzytelnianie
integralność

Zapewnienie
poufności

Zapewnienie
dostępności

background image

 

 

Mechanizmy 

uwierzytelniania

rozwiązywanie problemu
potwierdzania tożsamości

Uwierzytelnianie słabe - korzystanie z adresów IP: mechanizm ten nie zapewnia
uniknięcia ataków ze strony przestępców połaczonych z nie zabezpieczoną siecią,
bo przestępca, któremu uda się zdobyć kontrolę nad pośredniczącym ruterem,
może się podawać za klienta uprawnionego

Zapewnienie bezpiecznych usług - 

szyfrowanie z kluczem publicznym

Poza mocnym uwierzytelnieniem szfrowanie umożliwa też rozwiązanie 
problemu 

poufności

 - nadawca może zagwarantować, że tylko odbiorca może

odczytać informację.

Szyfrowanie z kluczem publicznym umożliwia rozwiązanie zagadnienia
uwierzytelnienia, autoryzacji i poufności. Mechanizm szyfrowania powinien być
stosowany zarówno przez klienta jak i przez serwer

background image

 

 

Zewnętrzna intersieć

Sieć wewnętrzna

firmy

część zewnętrzna

część wewnętrzna

zapora ogniowa firmy

Zapora ogniowa

 - zapewnia mechanizmy 

kontroli dostępu do sieci

i ochrony sieci wewnętrznej przed niepożądanymi połączeniami z zewnątrz

background image

 

 

Strefa bezpieczeństwa

 - przy wielu połączeniach z siecia zewnętrzną

należy zainstalować wiele zapór ogniowych, tworząc taką strefę

Organizacja, której sieć ma wiele połączeń zewnętrznych, musi zainstalować
zaporę ogniową przy każdym z połączeń zewnętrznych i musi zapewnić
koordynację działania wszystkich zapór.
Brak jednolitych ograniczeń dostępu we wszystkich zaporach może stanowić
zagrożenie dla całej organizacji

background image

 

 

Podstawa działania implementacji zapory ogniowej to 

filtr pakietów

2         Ruter         1

sieć zewnętrzna

sieć wewnętrzna

Interfejs

IP nadawcy

IP odbiorcy

Protokół

Port nadawcy

Port odbiorcy

2
2
1
2
2
2

*
*

128.5.*.*

*
*
*

*
*
*
*
*
*

TCP
TCP
TCP

UDP
UDP

TCP

21
23
25
43
69
79

*
*
*
*
*
*

Ruter z dwoma interfejsami i przykład konfiguracji filtrów pakietów.
Ruter + filtr pakietów to główny składnik ściany ogniowej

background image

 

 

„Odwrócenie” działania filtra pakietów:

administrator konfiguruje zaporę tak, by blokowała wszystkie datagramy
poza tym, które są skierowane do określonych sieci, komputerów i portów,
dla których pozwala się na komunikację ze światem zewnętrznym

Konfiguracja filtra przy

założeniu, że komunikacja

nie jest dozwolona

Zapoznanie się z polityką

informacyjną organizacji

Pozwolenie na wybrane

połączenia, portów,

komputerów

Skutecza zapora ogniowa, wykorzystująca filtrowanie pakietów, powinna odcinać
dostęp wszystkich nadawców IP, odbiorców IP, protokołów i portów protokołów
poza tymi komputerami, sieciami i usługami, które dana organizacja decyduje się 
udostępnić na zewnątrz. Filtr pakietów umożliwiający administratorowi określenie,
które datagramy należy przepuszczać (a nie - które należy blokować) może znacznie
ułatwić wprowadzanie takich ograniczeń

background image

 

 

Skutki ograniczenia dostępu

Jeśli zapora ogniowa organizacji odfiltrowuje wszystkie przychodzące
datagramy poza skierowanymi do portów odpowiadających usługom,
które organizacja udostępnia na zewnątrz, to programy wewnątrz
zapory ogniowej nie mogą być klientami serwerów na zewnątrz
organizacji

background image

 

 

Zewnętrzna intersieć

Sieć wewnętrzna

firmy

Komputer-

-bastion

Obejście ręczne

Komputer - bastion będący częścią zapory ogniowej. Zapewnia on bezpieczny dostęp do
usług zewnętrznych, nie wymagając przepuszczania do wnętrza zapory datagramów
o dowolnym adresacie

Dostęp do usług przez zaporę ogniową

background image

 

 

Zewnętrzna intersieć

Sieć wewnętrzna

firmy

KOMPUTER-BASTION

R1

R2

Implementacja zapory ogniowej za pomocą dwóch ruterów i jednego komputera - bastionu.
Firma przyłączona jest do internetu za pomoca łącza szeregowego

Komputer - bastion konieczny jest do komunikowania się poprzez zaporę ogniową, ale skuteczność
zapory zależy od zabezpieczeń tego komputera. Jeżeli włamywacz znajdzie lukę w zabezpieczeniach
systemu operacyjnego komputera bastionu, to może zyskać dostęp do komputerów
wewnątrz zapory

background image

 

 

Sieć wewnętrzna

firmy

R1

R5

R4

R3

R2

KOMPUTER-BASTION

połączenia
zewnętrzne

Architektura zapory ogniowej, która umożliwia wiele połączeń zewnętrznych przy zastosowaniu
pojedynczej zapory. Obniża to koszty

Każdemu połaczeniu odpowiada tu osobny ruter

background image

 

 

Monitorowanie

 zapory ogniowej jest niezbędnym warunkiem jej skutecznego funkcjonowania

Monitorowanie aktywne - zapora ogniowa informuje administratora o każdej
próbie naruszenia zabezpieczeń. Zaleta to szybkość - administrator natychmiast
dowiaduje się o niebezpieczeństwie.

Monitorowanie pasywne - zapora rejestruje wszelkie nietypowe sytuacje w pliku.
Rejestruje się informacje o normalnym ruchu i datagramy odfiltrowywane.
Administrator powinien okresowo przeglądać zapisy

background image

 

 

Szyfrowanie

Z kluczem
prywatnym

przestawianie liter
według pewnego,
z góry ustalonego
schematu

przestawianie bitów
(DES, 3DES, RC3, RC4)

ale jak przesłać sobie klucz?

Z kluczem
publicznym

background image

 

 

Szyfrowanie z kluczem publicznym:

Każda ze stron generuje parę kluczy (

publiczny

 + 

prywatny

Każda ze stron publikuje swój klucz publiczny w sieci (jest on dostępny dla wszystkich) 

Jeżeli A chce przesłać wiadomość do B to szyfruje ją kluczem publicznym B.
Z własności algorytmu wynika, że tylko używając klucza prywatnego B można ją odtworzyć 
(to jest typowy schemat 

wymiany danych

). 

Jeżeli B chce mieć pewność, że wymienia informacje rzeczywiście z A, to może np.
poprosić A o zaszyfrowanie pewnego tekstu jego kluczem prywatnym.
Jeżeli B będzie w stanie odtworzyć tekst używając klucza publicznego A to znaczy,
że rozmawia rzeczywiście z właściwym partnerem. 
(to jest typowy schemat 

autentyfikacji partnera

Jeżeli B po odebraniu wiadomości od A chce zabezpieczyć się przed sytuacją,
w której A zaprzeczy, że wysłał wiadomość, może poprosić A o zaszyfrowanie jej
dodatkowo swoim kluczem prywatnym (a następnie kluczem publicznym B). B będzie
w stanie ją odszyfrować (najpierw używając swojego klucza prywatnego,
a następnie publicznego klucza A) i A nie będzie mógł zaprzeczyć, że wiadomość wysłał
- wiadomość która dała się odszyfrować kluczem publicznym
A musiała być zaszyfrowana jego kluczem prywatnym. 
(to jest typowy schemat 

podpisu cyfrowego

)

 

background image

 

 

Metoda 

mieszana

Najważniejszym faktem dla tej metody stała się obserwacja,
że wada algorytmów symetrycznych nie polega na ich "słabości" -
dobierając odpowiednio długi klucz możemy uzyskać zabezpieczenie właściwie dowolnie "silne".
Problemem jest tylko uzgodnienie tych kluczy.
Natomiast algorytmy symetryczne są o wiele szybsze.
Wymyślono więc następujący schemat bezpiecznego przesyłania danych:

    

A generuje klucz K, który używany będzie później przy przesyłaniu danych
algorytmem symetrycznym. 

  

 A wysyła klucz K do B korzystając z jego klucza publicznego 

    

B odczytuje klucz K korzystając ze swojego klucza prywatnego. 

Strony dalej komunikują się korzystając z szyfrowania symetrycznego z użyciem klucza K

 

background image

 

 

Metoda mieszana umożliwia:

Autentyfikację serwera/klienta 
Można to zrealizować na etapie nawiązywania połączenia - właściwie sytuacja jest tu taka,
jakby używany był tylko algorytm asymetryczny. 

Okresową wymianę kluczy 
Strony mogą się umówić, że przykładowo co jakiś czas niszczą i od nowa generują klucze
symetryczne. Może to być ważne przy połączeniach trwających bardzo długo i takich,
po których przesyła się niewiele danych. Ktoś posiadający odpowiednio szybki komputer
i będący w stanie podsłuchać szyfrowaną transmisję mógłby wtedy jednak dane odszyfrować. 

background image

 

 

Przykłady zastosowania metody mieszanej to:

SSH

 (Secure Shell)- protokół bezpiecznego logowania się do systemu zdalnego. 

Zaletą SSH w porównaniu z logowaniem się przy pomocy telneta lub rsh
      
(oczywiście poza bezpieczeństwem) jest fakt, że można wyeliminować podawanie hasła
      - do autentyfikacji wystarczający jest klucz prywatny klienta. 

SSL

 (Secure Socket Layer) - protokół bezpiecznych połączeń WWW, równierz FTP,

poczty elektronicznej i innych

background image

 

 

Certyfikat  

rozwiązuje problem autentykacji kluczy publicznych. Jest to zbiór danych

jednoznacznie identyfikujących pewną jednostkę (osobę, komputer)
oraz pozwalający stwierdzić, czy osoba, która się nim legitymuje jest rzeczywiście tym,
za kogo się podaje. Jest on potwierdzony przez zaufaną organizację,
zwaną w protokole 

SSL certificate authority (CA).

        Certyfikat zawiera:

        Nazwę certyfikowanego obiektu 

        Identyfikator obiektu 

        Klucz publiczny obiektu 

        Czas ważności 

        Nazwę wystawcy certyfikatu 

        Identyfikator wystawcy 

        Podpis wystawcy   -  zawiera jednoznaczny skrót całego certyfikatu zaszyfrowany
        przy pomocy klucza prywatnego wystawcy.

background image

 

 

Przypadek szczególny:

certyfikat poświadczający tożsamość CA -
identyfikator wystawcy jest w nim równy identyfikatorowi obiektu,
a skrót certyfikatu jest szyfrowany kluczem publicznym obiektu!

Jest tak dlatego, bo CA jest instytucją zaufaną i jej tożsamości nie trzeba sprawdzać
(nie można, bo kto ją miałby potwierdzić?).

Łańcuch certyfikatów.

 Nie musimy (a nawet nie powinniśmy) dla każdego obiektu

w danym systemie wystawiać certyfikatu potwierdzonego przez CA, gdyż spowodowałoby
to przeciążenie tych instytucji i niepotrzebny rozrost bazy danych.
Możemy na własne potrzeby ustanowić lokalny urząd certyfikacyjny który będzie
poświadczał lokalne certyfikaty, a sam będzie legitymował się certyfikatem
poświadczonym przez CA.

background image

 

 

Łańcuch certyfikatów. Możliwe są dwie sytuacje:

Ustalamy, że wewnątrz naszej sieci ufamy wszystkim certyfikatom potwierdzonym
przez lokalny CA - wtedy możemy zrezygnować z usług zewnętrznej instytucji certyfikującej. 

Jeżeli jednak chcemy sprawdzić, czy instytucja potwierdzająca certyfikat, który właśnie
otrzymaliśmy jest faktycznie tym, za kogo się podaje, zawsze możemy w analogiczny
sposób zweryfikować jej certyfikat. W ten sposób w końcu dojdziemy do kogoś komu ufamy
(w najgorszym razie będzie to któryś z międzynarodowych CA - ale komuś ufać musimy ). 

background image

 

 

Schemat działania protokołu SSL:

ClientHello

ServerHello

K

Certificate 

K

ServerKeyExchange 

ServerHelloDone 

ClientKeyExchange 

ChangeCipherSpec 

Finished 

ChangeCipherSpec 

Finished

Klient wysyła do serwera zgłoszenie zawierające m.in. obsługiwaną wersję protokołu SSL, dozw. sposoby szyfrowania i kompresji danych 

Serwer odpowiada podobnym komunikatem w którym zwraca klientowi wybrane parametry połączenia:

Serwer wysyła swój certyfikat pozwalając klientowi na sprawdzenie swojej tożsamości 

Serwer wysyła informację o swoim kluczu publicznym. Rodzaj i długośc tego klucza jest określony przez typ algorytmu przesłany poprzednio

Serwer zawiadamia, że klient może przejść do następnej fazy zestawiania połączenia

Klient na podstawie ustalonych w poprzednich komunikatach dwóch liczb losowych (swojej i serwera) generujeklucz sesji używany do
faktycznej wymiany danych. Następnie wysyła go serwerowi używając jego klucza publicznego. 

Klient zawiadamia, że serwer może przełączyć się na komunikację szyfrowaną

... oraz że jest gotowy do odbierania zakodowanych danych

Serwer zawiadamia, że wykonał polecenie - od tej pory wysyłał będzie tylko zaszyfrowane informacje

... i od razu wypróbowuje mechanizm - ten komunikat jest już wysyłany bezpiecznym kanałem

background image

 

 


Document Outline