Co to jest Kerberos? Podaj cechy.
Symetryczny protokół uwierzytelniania.
Zalety: działa poprawnie
Wady: konieczność synchronizacji zegarów. Jeśli zegar nadawcy spieszy się w stosunku do zegara odbiorcy, to istnieje możliwość zaatakowania systemu – atak powtórzeniowy.
Podaj fazy audytu i czynności audytowi, zadania audytora
Planowanie i zapoznanie się z obszarem audytu.
Ocena projektowanych mechanizmów kontrolnych.
Ocena zgodności projektu ze stanem rzeczywistym.
Raport i działania poaudytowe.
Techniki audytu:
Lista punktów pomocniczych LPP
CCAT Computer Assisted Audit Techniques
Oprogramowanie wspomagające audyt, LPP i ocenę, np. skanery
Audyt oprogramowania
Kontrola nieszczelności sieci komputerowej
Testy penetracyjne
Inspekcja logów
Zadania audytora:
To co robi wynika z samego audytu
Czyta dokumenty
Obserwuje co się dzieje wokół
Pyta jak czegoś nie wie
Wymień cechy poufnego i wiarygodnego przesyłania wiadomości.
Poufność
Uwierzytelnianie pochodzenia wiadomości
Spójność wiadomości
Uniemożliwienie nieprzyznawania się do autorstwa
Infrastruktura do upewnienia się co do tożsamości nadawcy i odbiorcy – zarządzanie kluczami (wiadomości e-mail)
SSL
Secure Socket Layer
Podstawowym zadaniem protokołu jest umożliwienie bezpiecznej wymiany informacji i danych między komunikującymi się serwerem i klientem, wykorzystując do tego niezabezpieczone łącze.
Mechanizmy zaimplementowane w SSL:
szyfrowanie przesyłanych danych
zabezpieczenie danych przed zmianami (zapewnienie integralności)
uwierzytelnienie komputerów biorących udział w transmisji
Składa się z czterech podprotokołów:
SSL record protocol :
Definiuje format używanych do transmisji danych. Wysyłana wiadomość jest dzielona na fragmenty. Fragmenty kolejno poddawane są kompresji, szyfrowaniu i przekazywane warstwom niższym. Podczas odbierania informacji operacje dzieją się w odwrotnej kolejności.
SSL handshake protocol
Wykorzystywany jest poprzedni protokół w celu wymiany komunikatów między klientem a serwerem, przy nawiązywaniu połączenia.
SSL alert protocol
SSL cipher change protocol
Trzy warianty uwierzytelniania:
Obustronne uwierzytelnianie serwera i klienta
Uwierzytelnianie jedynie serwera – klient anonimowy
Komunikacja całkowicie anonimowa – serwer i klient nie są uwierzytelnieni
Trzy alternatywne metody wymiany kluczy:
Oparte o RSA
Oparte o algorytm Diffie-Hellmana
Oparte o algorytm FORTEZZA
Możliwe jest korzystanie z trzech różnych algorytmów do szyfrowania, uwierzytelniania i zapewnienia integralności danych. Każdy z nich może wykorzystywać odmienne klucze.
Dobór tych algorytmów zachodzi w podprotokole: Handshake protocol.
Uodporniony na ataki typu „przechwycenie połączenia”, poprzez zastosowanie certyfikatów cyfrowych kluczy, pozwalających weryfikować strony (Man In The Middle attaca – napastnik przechwytuje całą transmisję między stronami i sprawia że są one nadal przekonane o komunikacji między sobą.)
W fazie handshake wymieniane są klucze i tworzony początkowy sekret główny.
Schemat wymiany komunikatów podczas fazy uzgadniania (handshake):
ClientHello: klient nawiązujący połączenie wysyła do serwera podstawowe informacje (wersja protokołu, używane metody szyfrowania, używane funkcje skrótu i kompresji oraz czas wskazywany na hoście klienta), wysyłany jest pseudolosowy ciąg zwany ClientHello.random, wykorzystywany w późniejszej części protokołu do ustalenia poszczególnych sekretów.
ServerHello: serwer odpowiada wysyłając analogiczne informacje, podając także swój pseudolosowy ciąg ServerHello.random. (istnieje możliwość wysłania klientowi dodatkowych informacji bez oczekiwania na jego odpowiedź)
ServerCertificate: certyfikat serwera zawierający informacje o kluczu cyfrowym serwera. Na jego podstawie klient jest wstanie zweryfikować autentyczność nadsyłanych później komunikatów. ServerCertificatemoże również zawierać informacje o kluczu publicznym Serwera, bądź informacje niezbędne do ustalenia klucza metodą Diffie-Hellmana.
CertificateRequest: wysyłane do klienta żądanie uwierzytelnienia.
ServerKeyExchange: serwer wysyła informacje potrzebne do ustanowienia początkowego sekretu głównego. W zależności od tego jakie algorytmy zostaną zastosowane do uwierzytelniania, komunikat ServerKeyExchangemoże zawierać:
certyfikowany klucz publiczny serwera lub tymczasowy klucz RSA, jeśli wymiana kluczy następuje z wykorzystaniem RSA,
podpisane kluczem publicznym RSA lub DSA serwera parametry tymczasowe, stosowane przy wymianie kluczy wykorzystującej metodę Diffie-Hellmana,
zaszyfrowaną wartość początkowego sekretu głównego, jeśli wykorzystywany jest algorytm wymiany kluczy stosowany w urządzeniach typu FORTEZZA.
Wysyłanie tych wartości jest opcjonalne, i zależy od algorytmów imechanizmów stosowanych do uwierzytelniania.
ClientCertificate: odpowiedź klienta na wysłane przez serwer CertificateRequest.
ClientKeyExchange: klient, w losowy sposób, wybiera początkowy sekret główny, szyfruje go publicznym kluczem serwera uzyskanym z komunikatu ServerKeyExchange, a następnie wysyła jego wartość do serwera jako ClientKeyExchange.
CertificateVerify: oprócz samego certyfikatu potrzebna jest bezpośrednia weryfikacja chroniąca na przykład przed atakami przez powtórzenie lub usunięcie. Przyjęto następującą metodę polegającą na obliczeniu i przesłaniu wartości:
H(master_secret+p2+H(uprzednie_komunikaty+master_secret+p1))
gdzie H jest używaną funkcją skrótu, p1i p2ciągami wydłużającymi dane, zaś master_secretto wspólnie posiadany sekret główny.
Finish: klient i serwer informują się, że proces uwierzytelniania przebiegł poprawnie i może się rozpocząć chroniona kryptograficznie komunikacja.
Poziomy dojrzałości w zarządzaniu bezpieczeństwem
Na czym polega bezpieczeństwo notariatu cyfrowego? Wymień cztery elementy.
notariusz wie, co podpisuje
notariat wykorzystuje protokół łączący
ochrona klucza prywatnego notariatu
protokół łączący - eliminacja wejścia w zmowę
porządny klucz podpisujący
odpowiednie zabezpieczenia serwera
ochrona klucza (rozdzielenie klucza albo przechowywania)
Co to jest dowód o wiedzy zerowej i do czego służy?
Dowód o wiedzy zerowej - to procedura kryptograficzna, w której jedna ze stron potrafi udowodnić drugiej, że posiada pewną informację, bez jej ujawniania[1].
Sprawdzający niczego nie dowiaduje się od osoby dowodzącej, czego nie mógłby dowiedzieć się sam, bez tej osoby dowodzącej.
Dowody takie znajdują zastosowanie w procesach uwierzytelniania, gdy równocześnie konieczne jest zapewnienie określonego poziomu anonimowości.
Podwójny podpis cyfrowy - budowa, gdzie się go używa?
Podwójny podpis cyfrowy używa się w transakcjach internetowych, w standardzie SET. Ukrywa on dane karty nabywcy przed sprzedawcą i ukrywa specyfikację zakupów przez bankiem kupującego, zapewniając anonimowość zakupów.
Podpisywanie czegoś co jest splotem dwóch wiadomości (dwóch haszy – konkatenacja)
Konstrukcja:
M1- dyspozycja zapłaty za otrzymany towar
M2 – specyfikacja zakupu towaru (oferta)
A – Alice- nabywca
B – Bob – kupiec
Podpis na splocie dwóch wiadomości:
SA(H(H(M1), H(M2))) („podwójny” podpis).
Do banku wysyłamy:
EK(M1), SA(H(M1)), H(M2),SA(H(H(M1), H(M2)))
Bank zna polecenie zapłaty (dane karty), ale nie zna treści oferty.
Kupiec otrzymuje:
EK(M2), SA(H(M2)), H(M1),SA(H(H(M1), H(M2)))
Bank zna specyfikację zakupu, ale nie zna danych karty płatniczej.
Jakie cechy ma dobry protokół uwierzytelniania + zilustruj na przykładzie.
każda sesja („rozmowa”) ma swoj własny, specjalnie dla niej wygenerowany klucz sesyjny
klucze sesyjne powinny maksymalnie rzadko się powtarzać między rożnymi sesjami
klucz sesyjny powinien mieć w sobie czynnik losowy
sesja powinna być umiejscowiona w czasie, ale ów czas powinien być mierzony wg zegara tylko jednej ze stron!
Challenge & response
Bezpieczny serwis WWW
dobór i przygotowanie platformy systemowej: odpowiedni dobór opcji instalacji systemu, np. w Linuxie:
zabezpieczenie BIOS’u za pomocą hasła
bezpieczne hasło superużytkownika
shadow passwords i MD5 password
instalacja jedynie niezbędnych pakietów
powyłączać usługi sieciowe poza koniecznymi
podstawowa konfiguracja serwera WWW
szczegółowa konfiguracja serwera WWW
konfiguracja lokalnej zapory ogniowej
Zabezpieczenia serwera WWW i pracującej na nim aplikacji można pogrupować pod względem umiejscowienia w systemie:
zabezpieczenia na poziomie aplikacji WWW, (np. poziomie aplikacji możliwe jest weryfikowanie użytkowników pod względem przynależności do wybranych grup numerów IP i przydzielanie im odpowiednich uprawnień w systemie, przypisania każdej ze stron mechanizmu autoryzacji dostępu); Dodatkowe zabezpieczenia stanowią serwery współpracujące: serwer SSL, CA, serwery aplikacyjne.
zabezpieczenia realizowane przez serwer WWW, (np. realizowanie zabezpieczeń wynikających z wykorzystywania dyrektywy <Directory> serwera Apache ma zasięg niejako globalny i odnosi się do całej witryny, a nie tylko do pojedynczych stron czy katalogów.)
zabezpieczenia realizowane przez system. Oprócz właściwego skonfigurowania usług systemu operacyjnego podstawowym narzędziem podnoszącym ogólny poziom bezpieczeństwa jest zapora ogniowa. Skutkiem uruchomienie śluzy jest pozamykanie wszystkich zbędnych portów stanowiących furtki, przez które mogłoby nastąpić włamanie do systemu. Oprogramowanie tego typu nie obniża w znaczący sposób wydajności systemu, dlatego może być stosowane również w systemach o stosunkowo niewielkich możliwościach. Zkolei środowisko chrootstanowi idealne uzupełnienie zapory ogniowej (system LINUX).
Bezpieczeństwo fizyczne serwera.
Zabezpieczyć fizycznie
Konfiguracja z konsoli, nie zdalnie
Dobór platformy systemowej
Konfiguracja aplikacji
Atak D-DOS - aktorzy i fazy
Najgroźniejsze są ataki typu DoS, ponieważ zalewanie pakietami odbywa się z setek i tysięcy różnych adresów IP.
Opis ataku:
Aktorzy:
INTRUZ – inaczej atakujący lub klient
MASTER – inaczej handler
DAEMON – agent, bcast lub zombie
OFIARA – target
Typy ofiar:
Docelowa ofiara
Pośredniczące systemy, na których działają exploity i demony atakującego
Fazy ataku:
INTRUZ wynajduje jeden lub więcej systemów w Internecie, mogących dać się skompromitować i zainstalować exploity intruza; najczęściej wykorzystuje się dane legalnego użytkownika, wybierając systemy z szerokopasmowym dostępem (węzły akademickie)
Na skompromitowanym systemie ładuje się narzędzie hakerskie (skanery, programy Dos/DDoS) – MASTER
Przeszukiwanie systemów w sieci pod kątem uruchomionych usług, wyszukując podatnych; te skompromitowane systemy stają się początkowymi ofiarami DDoS – zostają na nich uruchomione właściwe DAEMONY DDoS przeprowadzające właściwy atak
INTRUZ dysponuje listą „posiadanych” systemów z DEAMONAMI DDoS
Właściwa faza DDoS rozpoczyna się wraz z uruchomieniem na MASTER programu, który komunikuje się z DEAMONAMI, wydając polecenie rozpoczęcia ataku. Komunikację tą można ukryć, tak że jest trudna do wykrycia.
Cechy dobrego algorytmu uwierzytelniania - 4 techniczne.
• każda sesja („rozmowa”) ma swoj własny, specjalnie dla niej wygenerowany klucz sesyjny
• klucze sesyjne powinny maksymalnie rzadko się powtarzać między rożnymi sesjami
• klucz sesyjny powinien mieć w sobie czynnik losowy
• sesja powinna być umiejscowiona w czasie, ale ów czas powinien być mierzony wg zegara tylko jednej ze stron!
Co to jest PKI, porównać PEM i PGP
PKI – Infrastruktura klucza publicznego
PGP i PEM są używane do zabezpieczenia poczty elektronicznej.
PGP (aplikacja) Pretty Good Privacy |
PEM (standard) Privacy Enhanced Mail |
|
---|---|---|
Zaufanie | Sieciowa dystrybucja zaufania | Hierarchiczna dystrybucja kluczy |
Zastosowania docelowe | - Zaprojektowany do ochrony poczty elektronicznej, ale użyteczny też do zabezpieczania wybranych plików - Prywatność co najmniej równoważna uwierzytelnianiu |
- Zawsze projektowano specyficznie do pracy z pocztą elektroniczną - Uwierzytelnianie ważniejsze prywatności |
Szyfrowanie | - Obsługuje wiadomości szyfrowane i podpisane - Może podpisać wiadomość nieszyfrowaną - Może szyfrować wiadomości niepodpisane - algorytmy: IDEA (AES), RSA, MD5 (obecnie SHA-1) |
- Obsługuje wiadomości szyfrowane i podpisane - Może podpisać wiadomość nieszyfrowaną - Nie jest możliwe wysłanie wiadomości, która jest niepodpisana - 3-DES, RSA, MD5 (obecnie SHA-1) |
Wytwarzanie kluczy | Użytkownik PGP wytwarza własną parę kluczy jawny/prywatny korzystając z posiadanego oprogramowania | Certyfikatu wg. standardu X.509 są wytwarzane przez użytkownika, albo przez wyznaczoną osobę, albo przez urządzenie sprzętowe |
Ukrywanie informacji o podpisie | Niemożliwe jest sprawdzenie podpisu PGP, jeśli wiadomość jest zaszyfrowana | Możliwe sprawdzenie podpisu PEM, jeśli wiadomość jest zaszyfrowana |
Dystrybucja kluczy | - Typowo rozprowadza się pocztą elektroniczną, za pomocą sieciowych biuletynów informacyjnych lub serwerów kluczy opartych na poczcie elektronicznej - W celu przeciwdziałania sabotażom klucze są podpisywane przez trzecie strony- innych użytkowników |
- CA jest obdarzoną powszechnym zaufaniem (TTP) bazą kluczy jawnych - Klucze jawne PEM mogą być rozprowadzane za pomocą dowolnych środków, zwykle pocztą elektroniczną lub za pomocą przeglądania katalogów zbudowanych w oparciu o standard X.500 |
Unieważnienie kluczy | - Dystrybucja kluczy jest doraźna i w znacznej części na drodze ustnej - niemożliwe jest zagwarantowanie unieważnienia certyfikatu, jeżeli jest on skompromitowany |
- Listy unieważnień certyfikatów (CRL) są zachowane w katalogach typu X.500 lub w skrzynkach pocztowych utrzymywanych przez każdy urząd typu PCA |
21) Handel elektroniczny - protokoły SET i OTP
SET | OTP Internet Open Trading Protocol |
---|---|
Twórcy: VISA, MasterCard, Netscape, IBM, Microsoft | Jeszcze nie do końca sformułowany I opublikowany |
Podstawy: certyfikaty kluczy publicznych, wystawiane przez firmy rozliczające obrót z użyciem kart kredytowych | Wykorzystuje się w nim doświadczenia i pomysły zawarte w innych protokołach e-commerce: SET, JEPI (Joint Electronic PaymentInitiative–CommerceNeti W3C), EMV (technologie mikroprocesorowe w kartach płatniczych), E-Check(elektroniczna książeczka czekowa), jednak nadal to koncepcja, a nie standard. |
Wystawienie certyfikatu (nabywcy) : Podajemy dane karty i własne, po sprawdzeniu serwer odsyła certyfikat | Cel: przeniesienie klasycznych zwyczajów handlowych do świata wirtualnego: przedstawienie oferty, - negocjowanie warunków kontraktu, - ustalenie metody dokonania płatności, - pobór prowizji, - dostarczenie zakupionych produktów, - pobranie poświadczenia odbioru itp. |
Sprzedawcy posiadają podobny certyfikat | Wymagania: - rozszerzalny i elastyczny, - różne schematy płatności, - proponowanie klientowi różnych sposobów przeprowadzenia transakcji, - sprzedawca powinien mieć możność ustawiania różnych opcji do wyboru przez klienta. |
Podwójny podpis | inne aspekty bezpieczeństwa transakcji: - niezaprzeczalność oferty, - zgodność z lokalnymi przepisami prawa, - dowolność dostarczania pokwitowania, - żądanie zapłaty z dowolnej strony, - udział trzeciej strony w różnych działaniach (np. dostawca). |
Zaleta: ukrywa dane karty nabywcy przed sprzedawcą i ukrywa specyfikację zakupów przed bankiem kupującego (anonimowość zakupu) | - transakcje równy-z-równym, - szyfrowanie (zapewnianie poufności), - prywatność (ukrywanie szczegółów transakcji), - rejestracja transakcji (w celu rozwiązywania ewentualnych problemów i stworzenia niezaprzeczalnych dowodów), - wymagania prawne (zerwanie transakcji, identyfikacja w przypadku uzasadnionych podejrzeń, reklamacje, wznawialność transakcji przerwanych, itp.). |
Znakowanie czasem (ważne*)
Cechy dobrego protokołu znakowania czasowego:
Dane muszą być opatrzone znacznikiem czasu, bez jakiegokolwiek odniesienia do nośnika fizycznego, na którym one się znajdują.
Musi być niemożliwe dokonanie zmiany chociaż jednego bitu dokumentu bez uwidocznienia tego faktu.
Niemożliwe musi być oznakowanie czasem dokumentu przy odmiennej od aktualnych dacie lub czasie.
Zastosowania: wszędzie tam, gdzie czas powstania, ujawnienia, prezentacji jakiegoś dokumentu (pliku) ma istotne znaczenie z p. widzenia bezpieczeństwa, biznesowego, prawnego, społecznego, itp.
Rodzaje ataków na 802.11?
- kolizje wektorów
- wstrzykiwanie danych do sieci
- podmiana bitów w ramce
- Denial of Service
Porównaj uwierzytelnianie sym/asym oraz z ttp/bez ttp
Uwierzytelnianie symetryczne bez ttp:
- Alice wysyła Bobowi liczbę losową Ra,
- Bob przesyła z powrotem swoją liczbę losową oraz skrót Mac, zawierający liczbę losową Bob’a, liczbę losową Alice, identyfikator Boba.
- Alice liczy skrót z liczby losowej i jeśli się zgadza to go akceptuje
- Potem Alice wysyła identyfikator za pomocą klucza tajnego i Bob wtedy ma też pewność, że Alice to Alice.
- Alice i Bob współdzielą klucz tajny K.
Uwierzytelnianie asymetryczne bez ttp:
1. Strony wymieniają sięcertyfikatami, muszą zaufać sobie nawzajem
2. Alice pobiera klucz jawny boba z KDC
3. Alice generuje losowy klucz sesyjny k, szyfruje go, używając klucza jawnego Boba i przesyła Bobowi.
4. Aby odtworzyć klucz sesyjny Bob deszyfruje otrzymaną wiadomość za pomocą swergo klucza prywatnego.
5. Oboje szyfrują przesyłane wiadomości, używając tego samego klucza sesyjnego.
Uwierzytelnianie symetryczne z ttp:
1. obie strony bezwzględnie ufają Trentowi,
2. Tren posiada klucze tajny
3. trend jest podatny na ataki i wąskie gardło
4. to trend losuje losowy klucz sesyjny
Uwierzytelnianie asymetryczne z ttp:
1. TTP potwierdza autentyczność certyfikatów komunikujących się stron
Jakie cechy musi mieć protokół podpisu cyfrowego?
Zarządzaniem bezpieczeństwem informacji
Co to jest protokół łączący i do czego służy ?
Protokół łączący = notariat cyfrowy -> sprawdzenie … czasu i tożsamości
Protokoły podpisu cyfrowego i wiadomości wysyłanych z kluczem
Zabezpieczanie platform obliczeniowych
Opisać krótko zasadę przesyłania poufnych wiadomości i podpisanych wiadomości.
Porównaj konfigurację platformy obliczeniowej i serwera www.
Etapy zabezpieczania serwisów www