Sieciowe Systemy Operacyjne
Sieciowe systemy operacyjne Klient-Serwer. System z wydzielonym serwerem, który spełnia róŝne funkcje i udostępnia róŝne usługi dla uŝytkowników. Ta architektura zapewni duŝą skalowalność (Novell NetWare, Windows NT, UNIX). Peer-to-Peer. Wszystkie komputery pracujące w sieci są równorzędne, funkcje serwerów i stacji roboczych nie są sztywno rozdzielone. Architektura dla nieduŝych grup roboczych (Lantastic).
Funkcje serwerów sieciowych Serwer plików Serwer drukowania Serwer komunikacyjny Serwer baz danych Serwer pocztowy Serwer aplikacji Serwer WWW
Sieciowe systemy operacyjne w sieciach korporacyjnych Dostarczanie uŝytkownikom wszechstronnych usług sieciowych w miejsce tradycyjnych funkcji obsługi plików i drukowania Zasoby sieciowe muszą być zorganizowane w taki sposób, aby uprawniony uŝytkownik miał do nich łatwy dostęp niezaleŝnie od ich fizycznej lokalizacji Aktualizowana baza informacyjna o zasobach sieciowych powinna być dostępna w dowolnym czasie i miejscu, jedynie względy bezpieczeństwa wpływają na ograniczenia w dostępie
Sieciowe systemy operacyjne w sieciach korporacyjnych cd. System zabezpieczeń powinien działać niezaleŝnie od rozproszenia chronionych zasobów i zapewniać wysoką niezawodność Usługi komunikacyjne muszą umoŝliwiać współpracę z systemami o innej architekturze Funkcje komunikacyjne powinny być zoptymalizowane pod kątem ich przydatności w Internecie Dostępność narzędzi do administracji i zarządzania sieciami umoŝliwiające analizę i diagnostykę sieci UmoŜliwienie dokonywanie zmian i upgradów
Sterowanie dostępem Mechanizmy sterowania dostępem zapewniają, Ŝe wszystkie bezpośrednie dostępy do róŝnych obiektów są uznawane za legalne Skuteczność sterowania dostępem opiera się na: Poprawnej identyfikacji uŝytkowników lub obiektów zabiegających o dostęp do zasobów poprzez procedury sprawdzania i weryfikacji toŝsamości Kontrolowaniu dostępu do zasobów za pomocą praw dostępu, które są chronione przed nieuprawnioną modyfikacją.
ZagroŜenia niedozwolonego dostępu Intruzi - nieupowaŝniona osoba próbuje włamać się do systemu informatycznego Wirusy - złośliwe programy komputerowe zagraŝające systemom komputerowym, wykorzystujące ich słabe punkty Szpiegostwo - celowe pozyskiwanie tajnych informacji chronionych przed niepowołanym dostępem SabotaŜ - celowe niszczenie tajnych informacji chronionych przed niepowołanym dostępem
Metody weryfikowania toŝsamości uŝytkowników Coś, co znasz (something you know) - do tej kategorii moŝna zaliczyć hasła, identyfikatory, numery PIN, itd Coś, co posiadasz (something you own), np. karta magnetyczna, karta chipowa, klucz do drzwi, itd. Coś, czym się charakteryzujesz (something you are) metody biometryczne, np. linie papilarne, geometria twarzy, tęczówka oka, charakterystyka głosu, ręczny podpis, kod DNA, zapach, cechy behawioralne
Ochrona haseł Większość systemów wymaga podczas identyfikacji podania identyfikatora uŝytkownika oraz hasła Hasła są kodowane algorytmami szyfrującymi umoŝliwiającymi łatwe zakodowanie i jednocześnie będące bardzo trudne do deszyfracji (np. algorytmy haszujące) Hasła są przechowywane w systemie oraz przesyłane w sieci komputerowej w formie zakodowanej
Łamanie haseł Metody brutalnej siły (brute force) sprawdzane są wszystkie moŝliwe kombinacje, złoŝoność ataku zaleŝy od długości hasła Atak słownikowy szyfrowane są kolejne wyrazy ze słownika oraz róŝnych kombinacji tych wyrazów z dołączonymi cyframi, znakami graficznymi itd. Tęczowe tablice (rainbow table) wykorzystywana jest gotowa tablica skrótów, do których próbuje się dopasować przechwycone zaszyfrowane hasło Wirusy, konie trojańskie, key logger InŜynieria społeczna intruz próbuje wyłudzić hasło od uŝytkownika, np. phishing
Liczba róŝnych haseł Długość hasła Tylko litery (26 znaków) Litery i cyfry (36 znaków) DuŜe i małe litery, cyfry (62 znaki) Wszystkie wyświetlane znaki (96) 3 17 576 46 656 238 328 884 736 4 456 976 1 679 616 15 x 10 6 85 x 10 6 5 12 x 10 6 60 x 10 6 916 x 10 6 8 x 10 9 6 309 x 10 6 2 x 10 9 57 x 10 9 783 x 10 9 7 8 x 10 9 78 x 10 9 4 x 10 12 75 x 10 12 8 209 x 10 9 3 x 10 12 218 x 10 12 7 x 10 15 9 5 x 10 12 102 x 10 12 14 x 10 15 693 x 10 15 10 141 x 10 12 4 x 10 15 839 x 10 15 67 x 10 18
Czas potrzebny na pełen przegląd haseł przy załoŝeniu weryfikacji 100 000 haseł na sekundę Długość hasła Tylko litery (26 znaków) Litery i cyfry (36 znaków) DuŜe i małe litery, cyfry (62 znaki) Wszystkie wyświetlane znaki (96) 3 0,2 s 0,5 s 2,4 s 8,8 s 4 2,6 s 17 s 2,5 min 14,1 min 5 2 min 10 min 2,5 godz. 22 godz 6 51 min 6 godz 6,6 dni 90 dni 7 22 godz. 9 dni 407 dni 23 lata 8 24 dni 326 dni 69 lat 2287 lat 9 628 dni 32 lata 4270 lat 219 451 lat 10 44 lata 1159 lat 265 958 lat 21 mln lat
Metody utrudniania haseł Dołączanie do hasła tzw. domieszek Wymuszanie na uŝytkownikach odpowiednio długich haseł Wymuszanie na uŝytkownikach czasowej zmiany haseł Hasła generowane komputerowo Aktywne sprawdzanie haseł Pasywne sprawdzanie haseł Hasła jednorazowe
Koncepcje mechanizmów sterowania dostępem Macierz dostępu Lista kontroli dostępu ACL (Access Control List) Lista moŝliwości (capability) Zaufane systemy Hierarchia dostępu
Model macierzy dostępu Macierz dostępu stanowi podstawowy sposób opisu systemów ochrony. W tym modelu stan systemu ochrony reprezentuje macierz, a przejścia stanów są opisywane poleceniami. Stan systemu jest określany przez zbiór podmiotów S, zbiór obiektów O oraz macierz dostępu A. Elementy macierzy zawierają rodzaje Obiekty dozwolonych praw dostępu R O1 O2 F1 F2 D1 D2 Podmioty U1 RWE Own,R R R U2 RW RWE RW R
Lista sterowania dostępem Lista sterowania dostępem ACL (Access Control List) jest listą podmiotów s upowaŝnionych do dostępu do pewnego obiektu x. Lista ta zawiera niepuste elementy kolumny x macierzy dostępu A, i-ta pozycja listy określa nazwę podmiotu s i oraz prawa r i w elemencie A[s i,x] macierzy Podmioty Prawa dostępu ACL(O1) ACL(O2) ACL(F1) ACL(F2) ACL(D1) ACL(D2) U1 [RWE] U2 [RW] U1 [Own,R] U1 [R] U2 [RWE] U1 [R] U2 [RW] U2 [R]
Lista moŝliwości MoŜliwość (capability) jest parą (x,r) określającą unikalną nazwę (adres logiczny) obiektu x i zbiór praw dostępu r do x. MoŜliwość jest rodzajem biletu, którego posiadanie bezwarunkowo upowaŝnia do dostępu r do obiektu x C(U1) C(U2) Obiekt Prawa O1 F1 F2 D1 O2 F2 D1 D2 [RWE] [Own,R] [R] [R] [RW] [RWE] [RW] [R]
Zasady projektowania mechanizmów ochrony Najmniejsze uprzywilejowanie - kaŝdy uŝytkownik i proces powinny dysponować najmniejszym zbiorem niezbędnych praw Ekonomiczność mechanizmu - projekt powinien być dostatecznie mały i prosty, by mógł być zweryfikowany i zaimplementowany Całkowite pośrednictwo - kaŝdy dostęp powinien podlegać upowaŝnieniu i kontroli Jawność projektu - ochrona systemu nie powinna zaleŝeć od utrzymywania w tajemnicy projektu lub ignorancji intruzów
Zasady projektowania mechanizmów ochrony cd. Oddzielenie przywilejów - gdzie to moŝliwe, dostęp do obiektu powinien zaleŝeć od spełnienia więcej niŝ jednego warunku Najmniejszy wspólny mechanizm - liczba wspólnych mechanizmów powinna być jak najmniejsza Psychiczna akceptowalność - mechanizmy muszą być łatwe w uŝyciu, aby były stosowane poprawnie i nie były omijane przez uŝytkowników
Sieciowe systemy operacyjne Novell NetWare Windows Unix Linux