Bezpieczeństwo systemów komputerowych
Forma zajęć
Wykład (30 godzin) + laboratorium (30 godzin)
Opis
Celem przedmiotu jest zapoznanie studentów z podstawowymi problemami bezpieczeństwa systemów informatycznych. Omawiane będą m.in. zagrożenia systemów informatycznych w kontekście poufności, integralności i dostępności informacji, modele bezpieczeństwa i klasy bezpieczeństwa systemów informatycznych (TCSEC, ITSEC, EAL), problematyka tworzenia polityki bezpieczeństwa systemu informatycznego, elementy kryptografii, zagadnienia dotyczące podpisu elektronicznego i infrastruktury klucza publicznego, podstawowe modele uwierzytelniania, strategie kontroli dostępu, bezpieczeństwo protokołów komunikacyjnych i usług aplikacyjnych. Przedstawiona zostanie problematyka bezpiecznego programowania, narzędzia analizy zabezpieczeń i monitoringu, lokalne i sieciowe systemy wykrywania ataków i ochrony przed nimi, środowiska o podwyższonym bezpieczeństwie i usługi narzędziowe (np. Kerberos, bezpieczne usługi katalogowe).
Sylabus
Autor
- Michał Szychowiak — Politechnika Poznańska
Wymagania wstępne
Podstawowe wiadomości z zakresu przedmiotów:
- Systemy operacyjne
- Technologie sieciowe
Zawartość
Wykłady
- Podstawowe problemy bezpieczeństwa:
- przestępstwa komputerowe
- polityka bezpieczeństwa
- normy i zalecenia
- klasy bezpieczeństwa systemów komputerowych
- podstawowe środki ostrożności i mechanizmy ochrony
- mechanizmy uwierzytelniania (m.in. uwierzytelnianie jednostronne, dwustronne, z zaufaną stroną trzecią, single sign-on, one-time passwords)
- uwierzytelnianie biometryczne
- strategie autoryzacji i kontroli dostępu (m.in. uznaniowa i ścisła kontrola dostępu, listy ACL)
- ograniczanie podsłuchu
- mechanizmy podnoszenia stopnia dostępności informacji (redundancja komponentów, archiwizacja i kopie zapasowe)
- Elementy kryptografii:
- szyfry symetryczne
- szyfry asymetryczne
- zarządzanie kluczami (PKI)
- funkcje skrótu i podpis cyfrowy
- uwierzytelnianie kryptograficzne
- narzędzia
- prawne aspekty wykorzystania kryptografii
- Bezpieczeństwo systemów operacyjnych:
- typowe naruszenia bezpieczeństwa
- problemy uwierzytelniania i kontroli dostępu współczesnych systemów operacyjnych
- wirusy, konie trojańskie i in.
- zamaskowane kanały komunikacyjne
- ograniczone środowiska wykonania
- delegacja uprawnień administracyjnych
- Bezpieczeństwo infrastruktury sieciowej:
- bezpieczeństwo podstawowych protokołów i urządzeń sieciowych w poszczególnych warstwach modelu OSI
- narzędzia podnoszące poziom bezpieczeństwa sieci
- tunele VPN i protokół IPsec
- zapory sieciowe (firewall)
- bezpieczeństwo infrastruktury sieci bezprzewodowych i urządzeń mobilnych (WiFi, Bluetooth)
- bezpieczeństwo usług VoIP
- Bezpieczeństwo aplikacji użytkowych i usług:
- bezpieczne środowisko aplikacyjne
- problemy ochrony popularnych usług aplikacyjnych (WWW, poczta elektroniczna, komunikatory internetowe)
- ochrona na poziomie warstwy sesji (protokół SSL/TLS)
- zagrożenia technologii aplikacji internetowych
- bezpieczne protokoły aplikacyjne (X.400, PEM, PGP)
- Bezpieczne programowanie:
- krytyczne błędy programistyczne (np. przepełnienie bufora)
- ochrona przed błędami
- bezpieczna kompilacja
- bezpieczne biblioteki
- sztuka tworzenia bezpiecznego kodu
- Środowiska o podwyższonym bezpieczeństwie:
- interfejs usług bezpieczeństwa
- kerberos
- GSSAPI
- SASL
- PAM
- bazy danych o podwyższonym bezpieczeństwie
- Zarządzanie bezpieczeństwem:
- monitorowanie zabezpieczeń, przynęty i pułapki, kamuflaż, detekcja intruzów (IDS/IPS)
- narzędzia analizy zabezpieczeń (dzienniki zdarzeń, gromadzenie statystyk, rejestry lokalne i centralne)
- procedury reagowania, dokumentowanie incydentów
- aktualizacja systemów operacyjnych i aplikacji
Laboratoria
Laboratoria obejmują zakresem następujące ćwiczenia:
- Modularne systemy uwierzytelniania i kontroli dostępu do systemu operacyjnego
- Konstrukcja urzędów certyfikacji standardu OpenSSL, zarządzanie certyfikatami
- Ograniczone środowiska wykonania aplikacji, ograniczone powłoki systemu operacyjnego środowisk serwerowych, delegacja uprawnień administracyjnych
- Umacnianie ochrony systemu operacyjnego (hardening) środowisk MS Windows
- Utwardzanie ochrony systemu operacyjnego środowisk Linuksowych
- Zabezpieczanie usług aplikacyjnych i usług narzędziowych, przykłady ataków i sposoby obrony
- Realizacja sieci VPN w środowisku homogenicznym oraz wieloplatformowym
- Systemy programowych i sprzętowych zapór sieciowych (firewall), osobiste zapory (personal firewall)
- Systemy wykrywania włamań IDS (snort), reakcje na włamania, dokumentowanie incydentów
Literatura
- W. Stallings, Network Security Essentials. Prentice Hall, 2003
- J. Stokłosa, T. Bliski, T. Pankowski, Bezpieczeństwo danych w systemach informatycznych. PWN, 2001
- N. Ferguson, B. Schneier, Kryptografia w praktyce., Helion, 2004
- S. Garfinkel, G. Spafford, Bezpieczeństwo w Unixie i Internecie. Wyd. RM, 1997
- W. R. Cheswick. Firewalle i bezpieczeństwo w sieci. Helion, 2003
Moduły
Wykłady
- Wprowadzenie do problematyki bezpieczeństwa systemów komputerowych - bsi_01_wykl.pdf
- Podstawowe definicje i problemy - bsi_02_wykl.pdf
- Ogólne własności bezpieczeństwa informacji - bsi_03_wykl.pdf
- Podstawowe elementy kryptografii - bsi_04_wykl.pdf
- Wykorzystanie kryptografii - bsi_05_wykl.pdf
- Podstawowe problemy bezpieczeństwa sieci komputerowych - bsi_06_wykl.pdf
- Podstawowe problemy bezpieczeństwa systemów operacyjnych - bsi_07_wykl.pdf
- Tunele wirtualne VPN - bsi_08_wykl.pdf
- Zapory sieciowe (firewall) i translacja adresów - bsi_09_wykl.pdf
- Bezpieczeństwo aplikacji i usług sieciowych - bsi_10_wykl.pdf
Laboratorium
- Mechanizmy lokalnej kontroli dostępu - bsi_01_lab.pdf
- Domeny zaufania, mechanizmy kontroli zdalnego dostępu - bsi_02_lab.pdf
- Umacnianie ochrony systemu opearacyjnego serwerowych środowisk MS Windows - bsi_03_lab.pdf
- Utwardzanie ochrony systemu operacyjnego serwerowych środowisk Linuksowych: RSBAC - bsi_04_lab.pdf
- Modularne systemy uwierzytelniania i kontroli dostępu do systemu operacyjnego - bsi_05_lab.pdf
- Ograniczone środowiska wykonywania aplikacji, ograniczone powłoki systemu operacyjnego środowisk serwerowych, delegacja uprawnień administracyjnych - bsi_06_lab.pdf
- Systemy kryptograficznej ochrony komunikacji warstwy aplikacyjnej - bsi_07_lab.pdf
- Zabezpieczanie komunikacji pocztowej, integracja mechanizmów kryptograficznych z usługami pocztowymi - bsi_08_lab.pdf
- Zabezpieczanie serwerów usług aplikacyjnych na przykładzie WWW (uwięzienie w piaskownicy) - bsi_09_lab.pdf
- Konstrukcja urzędów certyfikacji standardu OpenSSL, zarządzanie certyfikatami - bsi_10_lab.pdf
- Tworzenie sieci VPN w środowisku Linux i Windows - bsi_11_lab.pdf
- Systemy programowych zapór sieciowych - bsi_12_lab.pdf
- Systemy wykrywania włamań IDS (snort) - bsi_13_lab.pdf