opracowanie Piotra (edit)

background image

Filtrowanie protokołu HTTPS, jest praktycznie niemożliwe. By zabezpieczyć/filtrować protokół HTTPS należy
przeprowadzić na niego atak, tzn. dodać dodatkowego zaufanego odbiorcę, który jest trzecią zaufaną osobą w
połączeniu. Monitorowanie takiego filtrowania jest legalne, jeśli user zostanie o tym odpowiednio poinformowany.
HTTPS był do niedawna najbezpieczniejszym protokołem, lecz badania wykazały, że większość zagrożeń jest
przeprowadzana tym protokołem.
Ataki VoIP, technika VoIP służy do przesyłania dźwięków za pomocą łączy internetowych lub dedykowanych sieci
wykorzystujących protokół IP. (SIP SCCP MiNET megaco). Ataki coraz bardziej popularne bo technologia jest nowa,
bardziej skomplikowana, co powoduje że łatwiej dokonać nieodkrytej manipulacji. Atak może polegać na spreparowaniu
pakietu, który po dotarciu do węzła komunikacyjnego rozłącza rozmówców, są też pasywne ataki polegające na
podsłuchu. Tradycyjne protokoły VOIP nie posiadają szyfrowania i autoryzacji. Ochrona przed atakami polega na:

kontroli dostępu

proxy dla VoIP (pomaga gdy stosowane NAT, ograniczenie liczby kodeków, ograniczenie zakresu adresów IP,
ochrona przed directory harvesting, ogranicza liczbę sesji, ukrywanie app userów, ukrywanie topologii)


Problemy VoIP:

brak standardów

niebezpieczne protokoły (brak szyfrowania i autentykacji)

podobne do ataków na pocztę ale większe konsekwencje

błędy w konfiguracji (słabe hasła itp.)

cenne ofiary

typowe problemy (DoS, directory harvesting, session hijacking, toll fraud)


Discovery & Response:

Administrator musi wiedzieć co się dzieje w sieci

Co robią użytkownicy i urządzenia

Kto z zewnątrz próbuje uzyskać dostęp

Jakie urządzenia i w jaki sposób zostały zainfekowane

Jakie przeprowadzono ataki i które były skuteczne


UTM (Unified Threat Management) – wielofunkcyjne zapory sieciowe zintegrowane w postaci jednego urządzenia.
Funkcje ochrony:

filtr antyspamowy,

sieciowy filtr antywirusowy,

wykrywanie włamań,

filtrowanie treści,

router,

NAT i inne standardowe usługi sieciowe.


XTM (Extensible Threat Management) – następna generacja urządzeń UTM. Funkcje ochrony:

Proxy HTTP (Application Layer Content Filtering)

Skanowanie zawartości stron w poszukiwaniu Malware (GAV)

Sygnatury IPS (ogólne sygnatury XSS and SQL Injection)

Web Blocker (Kategoryzacja URL)

Reputation Enabled Defense (RED)

Application Control (kontrola dopuszczonych aplikacji)

Ataki APT (Advanced Persistent Threats):

wykorzystywanie wyrafinowanych i nietypowych technik propagacji zagrożeń,

ataki są długotrwałe i długo pozostają w ukryciu,

ataki są przeprowadzane do dokładnie określonych celów, nie ma przypadkowości w doborze ofiary,

bezwzględna konsekwentność, skuteczność - liczy się tylko osiągnięcie celu a nie czas,

background image

jest zaawansowanym sposobem na zdobywanie ukrytej i tajnej kontroli nad istotnymi danymi.

Przykłady ataków APT:

Op Aurora: atak na chiński oddział Google, atak celowany, uzyskano dostęp do serwerów Google Perforce i
(prawdopodobnie) GMail

Stuxnet: atak mocno celowany, skierowany przeciwko irańskim planom wzbogacenia uranu,
przeprogramowywał urządzenia ICS (pompy, wirówki, turbiny)

Duqu: podobne mechanizmy do Stuxneta, miał przygotować urządzenie do przyjęcia innych wirusów, wykradał
klucze prywatne, po 36 dniach sam się odinstalowywał

Ochrona przed atakami APT:

Defense – In – Depth (obrona w głąb): stosowanie kilku różnych metod ochrony systemu informatycznego

„Visibility Tools”: wykrywanie i reakcja na atak APT

Dodatkowe usługi bezpieczeństwa: nowe możliwości obrony


Malware - brak pewności że nowo wyprodukowany sprzęt jest pozbawiony złośliwego kodu (np. bateria ustawiona na
liczbę maksymalnych naładowań, następnie stopniowo jest zmniejszana jej pojemność)

Malware jako usługa - wszystko można pobrać z sieci (filmy, seriale, …), unikalny atak na witrynę do pobrania z sieci,
powstają hackerskie witryny, z których można kupować złośliwe oprogramowanie i informacje o nowych zagrożeniach
(zero day).

Malware + geolokacja:

Użycie lokalizacji jako pozornego uwierzytelnienia komunikatu i ułatwienia ataku

Duże zainteresowanie urządzeniami mobilnymi

Czytanie/wysyłanie wiadomości SMS jest częstą cechą szkodliwych aplikacji

Poznanie zwyczajów osoby

Problem z chmurą - aplikacje czy usługi przechowywane są w chmurze tzn. w świecie wirtualnym, nie da się zatem
fizycznie wskazać gdzie znajdują się owe dane, czy takie przechowywanie jest bezpieczne? Usługodawcy starają się
zwiększyć bezpieczeństwo przechowywania danych w chmurze, ale jak chronić dane, jeśli fizycznej lokalizacji nie da się
wskazać. Bezpieczeństwo zapewnia głównie usługodawca. Usługi cloudowe bazują często na własnych rozwiązaniach
web i wirtualizacji.

Bezpieczeństwo wirtualizacji - coraz większe zastosowanie dla systemów wirtualnych, małe organizacje mają problem z
ich poprawnym zabezpieczeniem, potrzebne wirtualne systemu bezpieczeństwa, do zabezpieczenia stosuje się sprzęt z
wirtualnym oprogramowaniem np. ŁOCZ GARD.

Unikanie złośliwego oprogramowania w telefonach - z reguły złośliwe aplikacje chcą dostać możliwość pisania i czytania
SMSów ponieważ systemy uwierzytelniające wysyłają wiadomość SMS jako zabezpieczenie, to wówczas jest możliwość
odczytu przez złośliwy kod. Odstępem od tego są AV które muszą czytać wiadomości SMS by je filtrować. W razie
zgubienia telefonu można go zlokalizować wysyłając odpowiednią komendę (SOPHOS)

Ochrona DLP (Data Loss Prevention) - analiza całego ruchu sieciowego po to, by chronić się przed wyciekami danych.

Jak odzyskać dane po ataku? Do podstawowych narzędzi należy ochrona za pomocą systemów SIEM (FW proxy) Jakie
kroki podjąć po ataku - odzyskać czysty system, ocenić utratę danych i wpływ na działalność, zgłosić do zarządu? Osoba
zajmująca się bezpieczeństwem powinna wiedzieć co się dzieje: Research & Development
Kontrola aplikacji jest najlepszym sposobem określenia które porty chcemy mieć otwarte.

Ochrona centrum sieci i danych - ochrona centrum sieci musi radzić sobie z nowymi zagrożeniami, powinna skupiać się
na centrum danych, oddzielenie sieci userów od miejsc składowania danych (segmentacja sieci). Wykorzystanie
systemów DLP do monitorowania przesyłanych danych.

background image

Duża liczba ataków kierowana jest na sieci WEB (strona www ma przeważnie 13 poważnych błędów/dziur przez które
można się włamać) połowa incydentów z wykradaniem danych z sieci związana jest z siecią WEB. Dlaczego atakowana
jest sieć WEB:
Zabezpieczone są FW i serwery, przeglądarki są bardzo popularne, skutecznie chroniona jest poczta elektroniczna +
świadomość userów poczty o zagrożeniach, Dodatki i pluginy instalowane dodają nowe drogi do możliwego ataku.
Dlaczego WEB 2.0? Bo HTTP jest pozbawiony zabezpieczeń, HTTPS jest mało zabezpieczony, brak filtrowania ruchu
szyfrowego.

Jak chronić sieć WEB - rozwiązania XTM (fw's): proxy HTTP, skanowanie zawartości stron (real time av), sygnatury IPS,
RED (Reputation Enabled Defence), kontrola aplikacji pomaga w kontroli dopuszczonych do ruchu sieciowego aplikacji.
Rozwiązania XCS: skanowanie zawartości stron w poszukiwaniu Malware, kategoryzacja adresów URL, RED, OCF
(Objectionable Content Filtering), możliwości w Web DLP.

Zagrożenia mobilne - Bootnety dla systemów mobilnych, hackowanie RIM Blackberry, Wysyp Malware na AM. Jak
przeciwdziałać? Bezpieczna komunikacja mobilna przy zestawieniu bezpiecznych kanałów komunikacji z użyciem SSL
IPSec, L2TP.

Ataki przeciw POS (Point Of Sale) - ataki na urządzenia płatności bezgotówkowych, złośliwe kody Vskimmer, BlackPOS.
Vskimmer wykrada informacje z kart używanych w czytnikach podłączonych do komputerów z systemem Windows i
wysyła je na zewnątrz. BlackPOS wyszukuje w sieci komputery podane na atak, NFC - zbliżeniowo.

Ataki na urządzenia ICS/SCADA (Industrial Control System, Supervisory Control And Data Aquisition) – automatyka
przemysłowa.

Ataki na DNS:

DNS spoofing – atak, który modyfikuje wpisy w bazach serwerów DNS. Klient połączy się z innym adresem IP niż
pierwotnie chciał i nastąpi przechwycenie transmisji między klientem a serwerem DNS. Korzystanie z UDP
znacznie ułatwia takie ataki (trwają krótko).

DNS amplification – wykorzystanie serwerów DNS w celu wzmocnienia ataku DoS. Atakujący wysyła zapytanie
DNS do różnych serwerów podmieniając adres IP klienta na adres IP atakowanej maszyny. Serwery DNS wyślą
odpowiedź na adres atakowanej maszyny

Telefoniczny DoS (Denial Of Service) - nie tak skomplikowany jak sieciowy DoS (wymaga jednej rozmowy telefonicznej)
automatyzacja poprzez serwery VoIP. Polega na dzwonieniu co kilka sekund na podany numer, co spowoduje
zablokowanie linii telefonicznej, atakujący podszywa się pod poprawne numery (przykład – ataki na firmy lotnicze).

Atak SWATing: atak polegający na przesłaniu fałszywego numeru identyfikacyjnego dzwoniącego (Caller ID) na numer
alarmowy, w celu zmanipulowania dyspozytora do wysłania jednostki szybkiego reagowania (policja, straż pożarna,
antyterroryści itp.) pod adres wskazany identyfikatorem dzwoniącego.

Niebezpieczeństwa FEJSBUKA - niebezpieczne linki pochodzą ze: sfałszowanych zaproszeń przyjaciół, like-jacking,
wiadomości FB (przesyłanie zarażonych plików), niebezpieczne aplikacje, skrót adresów URL, potencjalne zagrożenia
wynikające z Web 2.0

Zarządzanie bezpieczeństwem systemów informatycznych - to proces stosowany w celu osiągnięcia i utrzymania
odpowiedniego poziomu poufności, integralności, dostępności, rozliczalności, autentyczności i niezawodności systemów
informatycznych.

poufność (confidentiality) – właściwość zapewniająca, że informacje są udostępniane tylko tym użytkownikom
co trzeba

background image

integralność systemu (system integrity) – właściwość zapewniająca, że system realizuje swoją zamierzoną
funkcję w nienaruszony sposób, wolny od nieautoryzowanej manipulacji, przypadkowej, lub celowej

integralność danych (data integrity) - właściwość zapewniająca, że dane nie zostały zmienione lub zniszczone w
nieautoryzowany sposób

dostępność (availability) - właściwość zapewniająca bycie dostępnym i możliwym do wykorzystania na żądanie
w założonym czasie przez autoryzowany podmiot

rozliczalność (accountability) - właściwość zapewniająca, że działania podmiotu mogą być przypisane w sposób
jednoznaczny tylko podmiotowi

autentyczność (authenticity) – właściwość zapewniająca, że tożsamość podmiotu jest taka jak deklarowana i
użytkowana

niezawodność (reliability) - właściwość zapewniająca otrzymanie dokładnego efektu, który chcieliśmy osiągnąć


Relacje pomiędzy bezpieczeństwem systemów informatycznych:


Zasoby (assets
) - wszystko co ma wartość dla instytucji - prawidłowe zarządzanie zasobami jest niezbędne do osiągnięcia
celu działania instytucji i jest ono głównym obowiązkiem osób odpowiedzialnych za kierowanie instytucją na wszystkich
poziomach (fizyczne jak sprzęt budynki, informacje/dane, oprogramowanie/zdolność produkowania lub świadczenia
usług, ludzie, dobra niematerialne jak reputacja wizerunek) Wszystkie te zasoby można uważać za wartościowe na tyle
aby zagwarantować pewien stopień ochrony, jeśli nie są chronione niezbędne jest oszacowanie ryzyka akceptowalnego.

Zagrożenie (threat) – potencjalna przyczyna niepożądanego incydentu którego skutkiem może być szkoda dla systemu
lub instytucji. Szkoda może powstać jako skutek bezpośredniego lub pośredniego ataku na informację przetwarzaną
przez system lub usługę informatyczną, np. uszkodzenie ujawnienie modyfikację utratę informacji lub jej dostępności.
Zagrożenia wykorzystują podatność tych zasobów. Zagrożenia mogą mieć pochodzenie naturalne lub ludzkie i mogą być
przypadkowe lub rozmyślne.

Podatność (vulnerability) – słabość zasobu lub grupy zasobów która może być wykorzystana przez zagrożenie

background image

Ryzyko (risk) – prawdopodobieństwo określające możliwość wykorzystania określonej podatności przez dane zagrożenie
w celu spowodowania straty lub zniszczenia zasobu grupy lub grup zasobów a przez to negatywnego wpłynięcia na
instytucję.

Zagrożenia, podatności i wartość zasobów firmy zwiększają ryzyko.

Zabezpieczenie (safeguard) - praktyka procedura lub mechanizm redukujący ryzyko - zabezpieczenia to praktyki
procedury lub mechanizmy które mogą chronić przed zagrożeniem, redukować podatność, ograniczać następstwa,
wykrywać niepożądane incydenty i ułatwić odtwarzanie.

Proces zarządzania ryzykiem:

1. Zdefiniowanie granicy systemu – na co mamy wpływ (SLA- Service Level Agreement)
2. Zidentyfikowanie zasobów
– jakie usługi świadczymy
3. Oceny i identyfikacje:

a. Ocena zasobów, określenie zależności między nimi
b. Ocena zagrożenia
c. Ocena podatności
d. Identyfikacja istniejących i planowanych zabezpieczeń

4. Ocena ryzyka
5. Wybór zabezpieczeń
– identyfikacja i przeglądy zabezpieczeń
6. Akceptacja ryzyka
– jeśli je akceptujemy, przechodzimy dalej, jeśli nie – wracamy do pkt. 5
7. Polityka bezpieczeństwa
8. Planowanie zabezpieczeń

Proces analizy ryzyka powtarzany jest co jakiś czas, więc co pewien określony czas należy sprawdzić, czy ryzyko nie jest
zbyt duże, w zależności od tego w jakim środowisku, tak często. Im środowisko bardziej krytyczne tym częściej jest
sprawdzane.

Zarządzanie ryzykiem - całkowity proces identyfikacji, kontrolowania, eliminacji lub minimalizacji prawdopodobieństwa
zaistnienia niepewnych zdarzeń które mogą mieć wpływ na zasoby systemu informatycznego.

Analiza ryzyka - proces identyfikacji ryzyka, określenia jego wielkości i identyfikowania obszarów wymagających
zabezpieczeń.

Ryzyko szczątkowe - ryzyko które pozostaje po wprowadzeniu zabezpieczeń.

Monitorowanie - konieczne nieprzerwane monitorowanie działania zabezpieczeń w celu zapewnienia ich prawidłowego
działania, upewnienia się czy zmiany w środowisku nie wpłynęły na efektywność działania zabezpieczeń oraz czy
zapewniona jest rozliczalność.

Automatyczne narzędzia do przeglądania i analizy dzienników działań są pomocne w zapewnieniu zamierzonej
skuteczności działania zabezpieczeń. Narzędzia te mogą także być użyte do wykrywania niepożądanych zdarzeń a ich
użycie ma efekt odstraszający.

Planowanie awaryjne i odtwarzanie po katastrofie - plany awaryjne zawierają informacje o tym, jak prowadzić
działalność, gdy procesy ją wspomagające są osłabione lub niedostępne. Powinny zapierać opis wszystkich możliwych
składników scenariuszy sytuacji awaryjnych:

różne okresy trwania awarii,

utrata różnych rodzajów funkcji,

całkowita utrata fizycznego dostępu do budynków instytucji,

potrzeba powrotu do stanu który istniałby gdyby nie wystąpiła przerwa w działaniu.

background image

Cele, strategie i polityki bezpieczeństwa – powinny być opracowane hierarchicznie od poziomu instytucji do poziomu
eksploatacyjnego. Powinny odzwierciedlać potrzeby instytucji i uwzględniać wszelkie występujące ograniczenia.

Bezpieczeństwo systemu informatycznego - wszelkie aspekty związane z definiowaniem, osiąganiem i utrzymaniem
poufności integralności, dostępności, rozliczalności, autentyczności i niezawodności.

Polityka bezpieczeństwa instytucji w zakresie systemów informatycznych – zasady zarządzania i procedury, które
określają jak zasoby, włącznie z wrażliwymi informacjami, są zarządzane, chronione i dystrybuowane w instytucji i jej
systemach informatycznych. Nie określa dostępu do danych osobowych

Polityka czystego biurka – nie może być cennych informacji/danych dostępnych po odejściu pracownika od biurka.

Schemat x -4- polityka bezpieczeństwa instytucji – polityka bezpieczeństwa systemów teleinformatycznych -3- polityka
bezpieczeństwa systemów teleinformatycznych konkretnego oddziału instytucji -4- x(1,2,3a,3b)

Szyfrowanie - przekształcenie wiadomości tekstu jawnego, by dla osoby trzeciej (różnej od nadawcy i odbiorcy)
stanowiła ona jedynie przypadkowy ciąg znaków, na podstawie którego nie jest możliwe odtworzenie żadnej użytecznej
informacji. Szyfrogram – wiadomość zaszyfrowana.

System kryptograficzny – zbiór wszystkich tekstów jawnych, które mogą być zaszyfrowane przy użyciu danego klucza.

Z każdym systemem szyfrującym będą powiązane przynajmniej dwa elementy - algorytm szyfrujący oraz klucz. Klucz jest
parametrem którego wartość decyduje o tym które odwzorowanie ze zbioru odwzorowań wyznaczonych przez ogólny
system szyfrowania zostanie użyte do zaszyfrowania lub odszyfrowania danej wiadomości. Zbiór możliwych do wyboru
kluczy powinien być na tyle liczny, aby był trudny do odszyfrowania.

Klucz kryptograficzny wyznacza odpowiednie przekształcenie szyfrujące i/lub odszyfrowujące.

Istnieje tylko jedno przekształcenie odwrotne do wybranego przekształcenia szyfrującego.

Systemy symetryczne - posługują się tym samym kluczem zarówno do szyfrowania jak i odszyfrowania. Szyfrowanie
symetryczne jest szybsze niż asymetrycznego. By ustalić klucz można stosować różne algorytmy, ustalają one tajny ciąg
znaków do danej odpowiedzi (Diffi – Hellman).

Bezpieczeństwo szyfrowania symetrycznego zależy od:

jakości algorytmu szyfrującego by nie dało się łatwo odczytać klucza,

tajności klucza (nie algorytmu), algorytmy są jawne by mogły być popularne.

(HTTPS szyfrowany symetrycznie ze względu na szybkość, klucz zmieniany jest co 128MB lub co 8h)

Systemy asymetryczne(szyfrowanie z kluczem jawnym) - posługują się dwoma kluczami, przy czym jeden klucz służy do
szyfrowania (jawny) a drugi do odszyfrowania (tajny), para kluczy jest przypisana każdemu userowi sieci. Stosowane tam
gdzie szyfrujemy niewielką ilość danych. Klucz publiczny jest udostępniany każdemu userowi sieci, a prywatny jest
przypisany z osobna każdemu userowi. W systemach asymetrycznych klucze wyznaczające wzajemne odwrotne
przekształcenia są różne (pub, priv).

Metoda realizacji usługi poufności – klucz tajny.

Schemat

- źródło komunikatu -x-> szyfrator -y-> deszyfrator -x-> miejsce przeznaczenia

^

^

|-k->

bezpieczny kanał

__ |

Źródło klucza

background image

Autentykacja (rodzaje):

jednostronna (uwierzytelnienie jednego podmiotu [uwierzytelnianego, np. klienta aplikacji], wobec drugiego
[uwierzytelniającego np. serwera]),

dwustronna (polega na kolejnym lub jednoczesnym uwierzytelnieniu obu podmiotów [które są wzajemnie i
naprzemiennie uwierzytelnianym oraz uwierzytelniającym]),

z pośrednikiem (istnieje trzecia zaufana strona będąca centrum dystrybucji kluczy, każda usługa i user posiadają
dostęp do pośrednika, następuje wzajemna autentykacja.),

Kerberos (klucz autentykacji posiada czas życia)

Kerberos - przykład systemu, który wykorzystuje trzecią zaufaną stronę, która poświadcza tożsamość klienta i serwera.
W systemie uwierzytelniania wykorzystuje tajny dzielony klucz który umożliwia identyfikację usera bez eksponowania
informacji narażających na bezpieczeństwo sieci. Składa się z 4 komponentów:
- Klient - user lub app reprezentująca usera, miejsce z którego user prowadzi pracę, wprowadza id i hasło.
- TGT - ticket granting ticket, przyznawanie biletów klientowi uprawniających do korzystania z usługi przyznawania
biletów.
- TGS - ticket granting service, usługa serwera Kerberos umożliwiająca pobieranie biletów dla innych usług, zespolona z
serwerami autentykacji.
- Serwer Aplikacji - zasób który chce się upewnić czy dany klient jest poprawny, dostarcza klientowi żądanej przez niego
usługi.

Realizacja usługi zapewnienia integralności, uwierzytelnienia i niezaprzeczalności - polega na dołączeniu do
transmitowanej wiadomości w niezmienionej postaci pewnego ciągu bitów. Ciąg ten będący zawsze funkcją wiadomości,
otrzymywany jest w różny sposób, ma różne długości i różne nazwy dla każdej z trzech podstawowych usług:

Silny skrót wiadomości (Message Digest) - integralność,

MAC (Message Authentication Code) - uwierzytelnianie,

podpis cyfrowy - niezaprzeczalność.


Kryptosystemy asymetryczne:
klucze wyznaczające dwa wzajemnie odwrotne przekształcenia są różne. Przy użyciu
kluczy publicznych możliwe jest nadanie wiadomości do dowolnego użytkownika w sieci w sposób zapewniający
poufność.

Funkcja skrótu (haszująca):

jest określona dla wiadomości M o określonej długości

MDC=h(M) o ustalonej długości n

h

bitów

h(M) jest łatwy do obliczenia

nie można odtworzyć wiadomości na podstawie skrótu

jest wolna od kolizji, inne wiadomości użyją inną funkcję skrótu

niewielka zmiana danych wejściowych powinna generować dużą zmianę w ciągu wyjściowym.

Funkcje skrótu (MD4/5, SHA).

Ataki na funkcje skrótu:

kolizyjny( brute force ),

urodzinowy (znalezienie funkcji haszującej, atak siłowy u którego podstaw leży paradoks dnia urodzin który
pozwala oczekiwać że kolizja zostanie znaleziona znacznie szybciej niż sugerowałby to rozmiar przeciwdziedziny
funkcji haszującej).

Realizacja integralności:

Po stronie nadawcy – generuje skrót i załączam,

Po stronie odbiorcy – liczę skrót i porównuje z przesłanym.

background image

Ze względu na własność silnej funkcji skrótu wykrywana jest w ten sposób zamiana choćby jednego bitu przesyłanej
wiadomości. Funkcja skrótu z tzw. „odciskiem palca” wiadomości lub pliku.

Integralność sekwencji wiadomości chroni przed przechwyceniem i opóźnionym przesłaniem wiadomości, zmianą
kolejności oraz powieleniem, usunięciem, itp.

Uwierzytelnianie nadawcy - zapewnia możliwość sprawdzenia czy nadawca jest tym użytkownikiem za którego się
podaje, realizowane przez dołączenie do wiadomości znacznika uwierzytelniania wiadomości (MAC – Message
Authentication Code
). Skrót danych szyfrowany kluczem prywatnym nadawcy odbiorca odszyfrowuje kluczem
publicznym.

Wartość znacznika jest funkcją wiadomości oraz klucza

Klucz nie jest znany żadnemu użytkownikowi poza siecią

Niezaprzeczalność – chroni przed możliwością wyparcia się przez nadawcę faktu wysłania lub zmiany treści komunikatu.
Realizowana poprzez wykorzystanie idei podpisu cyfrowego.

Podpis cyfrowy - ciąg bitów, zazwyczaj krótszy od wiadomości, którą reprezentuje będący funkcją:

podpisywanej wiadomości,

tajnej informacji znanej tylko autorowi podpisu (klucza prywatnego nadawcy).

Może być weryfikowany przy użyciu publicznie znanej informacji (klucza publicznego nadawcy)

Podpis cyfrowy nie zapewnia poufności danych, jednakże często ważniejszą kwestią jest uwierzytelnienie nadawcy.

Algorytmy tworzenia podpisów cyfrowych: RSA, DSS (Digital Signature Standard), SHS, DSA (DSS szybciej niż RSA tworzy
klucze i podpisy ale dłużej weryfikuje)

Cechy podpisu ręcznego i cyfrowego - wspólne (przypisane jednej osobie, niemożliwy do podrobienia, łatwy do
weryfikacji przez osobę niezależną, łatwy do wygenerowania)

Różnice:

Ręczny (związany nierozłącznie z dokumentem, taki sam dla każdego dokumentu, stawiany na ostatniej stronie
dokumentu),

Cyfrowy (może być składowany oddzielnie od dokumentu, jest funkcją dokumentu, obejmuje cały dokument)

Dystrybucja kluczy tajnych Diffiego - Hellmana – ustalenie przez dwie strony tajnego klucza bez przesyłania żadnych
poufnych informacji. Nie jest odporny na man in the middle, czyli ingerencję w komunikację między odbiorcą a nadawcą
poprzez podmianę kluczy publicznych na własne. Algorytm D –H nie nadaje się do szyfrowania i deszyfrowania
wiadomości, wykorzystywany jest do szyfrowania połączenia między nadawcą a odbiorcą.

Protokół (A, B – Alice, Bob: osoby przesyłające do siebie komunikat):

1. A i B wyznaczają 2 liczby: p - liczba pierwsza oraz g mniejsze od p takie, że dla każdego n pomiędzy 1 a p-1

włącznie istnieje potęga takiego k od g że n = g

k

mod p.

2. A generuje prywatną wiadomość a, B generuje prywatną wiadomość b.

3. A wysyła B (g

a

mod p), B wysyła A (g

b

mod p).

4. A oblicza na podstawie swojej wartości prywatnej k = (g

b

)

a

mod p,

5. B oblicza na podstawie swojej wartości prywatnej k = (g

a

)

b

mod p.

background image

OPRACOWANIE BSK – KOLOS 2

1.SZYFROWANIE

Szyfrowanie symetryczne

Szyfrowanie symetryczne (szyfr z jednym/pojedynczym kluczem) – nadawca i odbiorca
wiadomości używają tego samego prywatnego klucza. Inaczej mówiąc, każdy kto jest w
posiadaniu tego klucza symetrycznego, może zarówno zaszyfrować jak i odszyfrować wiadomość.
Wobec tego oczywiste jest, że szyfrowanie symetryczne będzie skuteczne tylko wówczas jeżeli ten
klucz nie wpadnie w niepowołane ręce – kluczem tym powinny dysponować tylko nadawca i
odbiorca.

Nadawca i odbiorca wiadomości muszą jednak najpierw przesłać sobie ten klucz tak, żeby nie
zdobyły go osoby postronne, np. muszą spotkać się osobiście. Zauważamy że w niektórych
przypadkach szyfrowanie symetryczne jest bezużyteczne, bo skoro nadawca i odbiorca spotkali
się by przekazać sobie klucz, to czemu od razu nie mogli by sobie przekazać wiadomości którą
mieli zaszyfrować? Oczywiście czasami jest np. tak, że w momencie przekazania klucza
wiadomość która ma być zaszyfrowana nie jest jeszcze znana i w takiej sytuacji szyfrowanie
symetryczne może się oczywiście przydać. Nie ma znaczenia czy to nadawca wygeneruje i
przekaże klucz odbiorcy, czy odwrotnie. Kiedy już obie strony będą dysponowały tym kluczem
prywatnym wiadomość może być zaszyfrowana. Spójrzmy więc jak przebiega szyfrowanie
symetryczne:

Szyfrowanie symetryczne

1. Nadawca przekazuje odbiorcy (lub odwrotnie) klucz prywatny przez bezpieczny kanał.
2. Nadawca szyfruje wiadomość za pomocą klucza prywatnego. Szyfrowania odbywa się za
pomocą specjalnego algorytmy (szyfru) symetrycznego który używa klucza prywatnego. Do
szyfrów symetrycznych zaliczamy takie algorytmy jak DES, AES, Blowfish, Triple DES, Twofish,
Serpent, RC4, RC5. Zaszyfrowana wiadomość zostaje wysłana to odbiorcy.
3. Odbiorca przy pomocy klucza prywatnego odszyfrowuje wiadomość.

Jak więc widzimy schemat szyfrowania symetrycznego jest bardzo prosty. Szyfrowanie
symetryczny umożliwia poufność (ang. confidentiality) danych, czyli udostępnienie ich tylko
osobom które posiadają odpowiedni klucz (właściwemu odbiorcy). Informacje których nie chcemy
udostępniać osobom postronnym mogą mieć różnoraki charakter, stąd często spotykamy się z takim
pojęciami jak:
- poufność danych/informacji
- poufność transakcji
- poufność płac/wynagrodzenia

Z uwagi na opisane powyżej niedogodności związane z przekazywaniem klucza prywatnego, często
zamiast szyfrowania symetrycznego wykorzystane jest szyfrowanie asymetryczne.

background image

Szyfrowanie asymetryczne

Szyfrowanie asymetryczne (szyfrowanie z kluczem publicznym) jest nieco bardziej
skomplikowane od szyfrowania symetrycznego. Podstawowa różnica polega na tym, że tutaj
wyróżniamy dwa klucze - prywatny i publiczny. Oba klucze generowane są przez odbiorcę.

Szyfrowanie asymetryczne

1. Odbiorca za pomocą specjalnego algorytmu (szyfru) asymetrycznego (np. RSA, ElGamal,
DSA, ECC, Diffy-Hellman, Cramer-Shoup) generuje oba klucze. Klucz publiczny odbiorca
przekazuję nadawcy. Ponieważ jest on publiczny odbiorca nie musi martwić się o jego przekazanie
nadawcy - może to zrobić np. za pomocą Internetu, umieścić na stronie czy forum (istnieją nawet
specjalne serwery kluczy publicznych). To że wszyscy mogą zdobyć ten klucz nie stanowi
żadnego problemu.
2. Nadawca korzystając z przekazanego mu klucza publicznego szyfruje wiadomość.
3. Odbiorca odszyfrowuje wiadomość za pomocą prywatnego klucza.

UWAGA: Na tym i następnych diagramach pojawiać będą się klucze w kolorach białym i
czarnym. Czarny oznacza klucz prywatny, a biały klucz publiczny.

Jeżeli ktoś postronny zdobył ten klucz publiczny również może zaszyfrować wiadomość.
Pamiętajmy jednak że tylko odbiorca dysponuje kluczem prywatnym, a w szyfrowaniu
asymetrycznym wiadomość zaszyfrowana za pomocą klucza publicznego może być odszyfrowana
tylko za pomocą klucza prywatnego! Może na początku wydawać się to trochę dziwne, jednak
gdy odbiorca (w kroku nr. 1) generuje oba klucz, to stają się one w pewien sposób "powiązane
matematycznie"
. Dlatego odbiorca nie powinien nikomu innemu udostępniać klucza
prywatnego! Jeżeli nie udostępni, to nikt kto zna klucz publiczny nie będzie wstanie
odszyfrować wiadomości
.

Przedstawione powyżej szyfrowanie asymetryczne - podobnie jak szyfrowanie symetryczne - służy
zapewnieniu poufności. Jednak jeżeli zmienimy kolejność użycia kluczy szyfrowanie asymetryczne
może być również wykorzystane do zapewnienia autentyczności, a także poufności i autentyczności
jednocześnie.

background image

Szyfrowanie asymetryczne i autentyczność

21.09.2010 - 16:30
Zacznijmy od wyjaśnienia czym jest autentyczność nadawcy:
Uwierzytelnianie (ang. authentication) jest to potwierdzenie, zweryfikowanie tożsamości nadawcy.
Dzięki uwierzytelnieniu źródła wiadomości mamy więc pewność, że wiadomość pochodzi od
właściwego nadawcy - możemy wówczas mówić o autentyczność nadawcy/dokumentu/danych
(ang. authenticity).

Szyfrowanie asymetryczne zapewniające autentyczność

1. Nadawca za pomocą szyfru asymetrycznego generuje klucz prywatny i publiczny i przekazuje
klucz publiczny odbiorcy.
2. Nadawca używając klucza prywatnego szyfruje wiadomość.
3. Odbiorca przy pomocy klucza publicznego odszyfrowuje wiadomość.

Zauważmy, że podstawowa różnica w stosunku do "zwykłego" szyfrowania asymetrycznego polega
na tym, że oba klucze generuje tu nadawca. Jak widzimy wiadomość szyfrowana jest kluczem
prywatnym przez nadawcę, dlatego nadawca powinien zachować go tylko dla siebie. Do
szyfrowania służy klucz publiczny, a więc każdy może odszyfrować wiadomość. Taka forma
szyfrowanie asymetrycznego ma wobec tego zastosowanie tylko wówczas gdy zależy nam na
autentyczność nadawcy, a poufność danych jest nieistotna. Weryfikacja źródła wiadomości jest
możliwa, ponieważ gdy odbiorca odszyfruje wiadomość, będzie to jednoznacznie świadczyło o
tym, że została ona zaszyfrowana przez nadawcę
(bo tylko on dysponuje kluczem prywatnym).

background image

Szyfrowanie asymetryczne i autentyczność oraz poufność

21.09.2010 - 16:35
Gdy zależy nam zarówno na poufności danych jak i na autentyczności nadawcy możemy użyć
swoistego połączania dwóch uprzednio omówionych form szyfrowania asymetrycznego, którego
schemat przedstawia poniższy obrazek:

Szyfrowanie asymetryczne zapewniające autentyczność oraz poufność

1. Nadawca przekazuje klucz publiczny odbiorcy.
2. Odbiorca przekazuje klucz publiczny nadawcy. Krok 1 i 2 mogą być oczywiście wykonane w
odwrotnej kolejności.
3. Nadawca używając wygenerowanego przez siebie klucza prywatnego szyfruje wiadomość.
4. Nadawca tak zaszyfrowaną wiadomość szyfruje jeszcze raz korzystając z klucza publicznego
wygenerowanego i przekazanego mu przez odbiorcę.
5. Odbiorca całkowicie odszyfrowuje wiadomość korzystając z wygenerowanego przez siebie
klucza prywatnego.
6. Odbiorca częściowo odszyfrowuje wiadomość korzystając z klucza publicznego przekazanego
mu przez nadawcę.

Kroki 1, 3 i 6 odpowiadają za zapewnienie autentyczności nadawcy (porównaj ze schematem na
stronie szyfrowanie asymetryczne i autentyczność), natomiast kroki 2, 4 i 5 zapewniają poufność
informacji
(porównaj ze schematem na stronie szyfrowanie asymetryczne). Zauważmy, że odbiorca
stosuje klucze w kolejności odwrotnej niż nadawca.

background image

Hashowanie

Hashowanie (haszowanie) polega na tworzeniu na podstawie dowolnie dużej wiadomości krótkiej
liczby (zwanej jako hash, skrót lub odcisk palca). Haszowanie jest realizowane przez funkcję
haszującą
(zwana również jako jednokierunkowa funkcja mieszająca lub funkcja skrótu). Funkcje
skrótu to np. MD2, MD4, SHA1, MD5. Bezpieczna funkcja hashująca jest jednokierunkowa - nie
można znaleźć wartości wejściowych (wiadomości) na podstawie wartości wyjściowych (skrótu)
oraz bezkolizyjna - brak jest kolizji, czyli sytuacji w których z 2 różnych wiadomości
wygenerowany zostanie taki sam hash. Haszowanie pozwala na tworzenie sygnatury (np. podpisu
cyfrowego), co przydaje się np. do weryfikacji integralności danych. W celu zobaczenia jak w
praktyce wygląda hashowanie przejdź do strony podpis cyfrowy.

Hashowanie

Podpis cyfrowy

Podpis cyfrowy (podpis elektroniczny) (ang. digital signature) - jednym z najciekawszych
zastosowań szyfrowania jest podpis cyfrowy. Wykorzystywane jest tu połączenie szyfrowania
asymetrycznego zapewniającego autentyczność i haszowania.

Podpis cyfrowy

background image

Tworzenie podpisu cyfrowego (podpisywanie dokumentów, podpisywanie danych):
1. Nadawca generuje klucz publiczny i prywatny i dostarcza odbiorcy klucz publiczny.
2. Nadawca za pomocą funkcji haszującej tworzy hash.
3. Nadawca szyfruje ten hash korzystając z wygenerowanego przez siebie klucza prywatnego.
Zaszyfrowany hash jest podpisem elektronicznym.
4. Nadawca przekazuje odbiorcy ten podpis cyfrowy wraz z niezaszyfrowaną wiadomością.

Weryfikacja podpisu cyfrowego

Weryfikacja podpisu cyfrowego:
5. Odbiorca odszyfrowuje hash korzystając z klucz publicznego nadawcy.
6. Odbiorca z przekazanej mu wiadomości tworzy hash.
7. Odbiorca porównuje oba hasze (skróty). Jeżeli są równe, to mamy zagwarantowane:

* autentyczność - dane wysłał właściwy nadawca. Podpis cyfrowy gwarantuje, że nikt się nie
“podszyje” pod nadawcę, bo tylko nadawca dysponuje prywatnym kluczem nadawcy. Owszem ktoś
może próbować się podszyć, ale wtedy sygnatura wysłana przez takiego “fałszywego” nadawcę
będzie błędna (albo w ogóle nie zaszyfrowany hash, albo zaszyfrowany błędnym kluczem).
Odbiorca oczywiście to wykryje, gdyż porównując oba hashe, wyjdzie mu, że są różne.
* integralność (ang. data integrity) - dane nie zostały zmienione przez niepowołane osoby. Jeżeli
ktoś zmieniłby treść wiadomości, to odbiorca haszując taką zmienioną wiadomość otrzyma inny
hash niż powinien – porównane hashów będą się różnić, gdyż hashowane były różniące się
wiadomości.
* niezaprzeczalność (ang. non-repudiation) - nadawca nie wyprze się, że wysłał dane - tylko
nadawca wiadomości zna klucz prywatny nadawcy. Jeżeli więc weryfikacja podpisu cyfrowego się
powiodła (oba hashe są równe), to znaczy, że tylko właściwy nadawca ja wysłał.

Ważne jest żeby uświadomić sobie, że jest wiele schematów podpisów cyfrowych. Przedstawiony
powyżej schemat tworzenia podpisu elektronicznego nie zapewnia poufności danych, dlatego
może być wykorzystany tylko wówczas gdy nie zależy nam na poufności wysyłanej wiadomości
(jak powyżej wspomniano, opieramy się tu na szyfrowaniu asymetrycznym zapewniającym
autentyczność, tylko że szyfrujemy hash, a nie wiadomość). Istnieją oczywiście metody które
pozwalają jednocześnie na generowanie podpisu cyfrowego jak i na zaszyfrowanie samej
wiadomości.

background image

2.UTM/XTM

2. Historia zabezpieczeń sieciowych

Rozwój sieci komputerowych spowodował, iż zaczęto w nich umieszczać (i udostępniać) na

tyle cenne zasoby, że nieuniknione stały się próby dostępu do nich także osób nieuprawnionych.
Spowodowało to konieczność stworzenia metod zabezpieczania zasobów sieciowych. Dla
umiejscowienia rozwoju systemów bezpieczeństwa w historii sieci komputerowych warto
przytoczyć kilka faktów z początkowej historii rozwoju sieci Internet [1]:

1969 powstaje sieć ARPAnet (ang. Advanced Research Projects Agency Network) uznawana

za bezpośredniego prekursora sieci Internet

1981 stworzona zostaje sieć CSNET (ang. Computer Science NETwork)
1983 stworzona zostaje brama (ang. gateway) pomiędzy ARPAnet a CSNET; fakt ten uważa

się za początek istnienia Internetu takiego, jakim znamy go dzisiaj

1984 powstaje system nazw domenowych DNS (ang. Domain Name System)
1985 rejestracja pierwszej nazwy domenowej (domeny) ‘symbolics.com’
1987 powstaje jeden z pierwszych artykułów w szeroki sposób omawiający tematykę

filtrowania ruchu sieciowego [2]

1988 w sieci pojawia się pierwszy wirus, który zaraża dużą liczbę komputerów (blisko 6000

maszyn, czyli około 10% ówczesnej sieci)

1994 w wersji 1.1 jądra systemu operacyjnego Linux zaimplementowana zostaje

funkcjonalność filtrowania pakietów

Znacznie wcześniej (na przełomie lat 80-tych i 90-tych) funkcjonalność taka pojawiła się w
systemie operacyjnym UNIX. Pojawiło się wiele implementacji filtrowania pakietów, pierwszej
funkcjonalności ‘dedykowanej’ zagadnieniom bezpieczeństwa sieci [3]. Wiele firm rozpoczęło
produkcję i sprzedaż opartych na niej programowych rozwiązań typu zapora sieciowa (ang.
firewall), przeznaczonych do zastosowań komercyjnych [4].

Pierwsze firewalle były zaporami bezstanowymi (ang. stateless firewall). Zajmowały się

analizą wyłącznie nagłówków pakietów, nie potrafiły zatem przypisać danego pakietu sieciowego
do konkretnej sesji i każdy filtrowany pakiet traktowały jako osobny byt. Decyzja o przepuszczeniu
lub odrzuceniu pakietu podejmowana była w zasadzie wyłącznie w oparciu o adresy nadawcy
i odbiorcy. Firewalle drugiej generacji były już filtrami stanowymi (ang. stateful firewall). Potrafiły
przypisać poszczególne pakiety sieciowe do określonych sesji. Wymagało to utrzymywania w
pamięci maszyny tablicy połączeń sieciowych, co przy ograniczonej ilości pamięci a dużej liczbie
połączeń mogło stanowić poważny problem. Fakt ten był podstawą jednego z pierwszych ataków,
jakie przeprowadzane były na systemy ochrony. Były to ataki typu DoS (ang. Deny of Service),
których celem było unieszkodliwienie filtra pakietów poprzez przepełnienie tablicy połączeń.

Z czasem okazało się, że rozwiązania programowe nie są wystarczające. Różnorodność

stosowanego sprzętu (rozwiązania tego typu były często instalowane na już posiadanych przez
użytkowników komputerach), ich różna, często niewystarczająca wydajność obliczeniowa,
niewystarczająca ilość pamięci operacyjnej oraz wysoka zawodność doprowadziły – w sytuacji
lawinowo rosnącej liczby incydentów bezpieczeństwa (rys. 1.) – do powstania sprzętowych
rozwiązań systemów bezpieczeństwa. Jednymi z pierwszych rozwiązań, jakie pojawiły się na rynku
w 1996 roku, były urządzenia o nazwie ‘Firebox’ firmy Seattle Software Labs [5] (wcześniej
Mazama Software Labs, zaś od 1997 roku WatchGuard® Technologies – firma, która jest do dzisiaj
jednym z czołowych producentów rozwiązań bezpieczeństwa). Również w 1996 roku powstał
pierwszy firewall stworzony na bazie układu ASIC przez chińskiego inżyniera Ken Xie [6]. Założył
on firmę Fortinet, w której wciąż pełni rolę prezesa. Firma ta, podobnie jak WatchGuard®
Technologies, nadal pozostaje w czołówce producentów rozwiązań bezpieczeństwa.

background image

Rozwiązania sprzętowe wraz z upływem czasu ewoluowały. W niedługim czasie wyposażone
zostały w dodatkowe funkcje bezpieczeństwa. Urządzenia bezpieczeństwa realizujące jedynie
filtrowanie pakietów nie zapewniały należytego poziomu zabezpieczenia, co wynikało z ewolucji
zagrożeń. W 2004 roku Charles Kologdy pracownik firmy International Data Corporation
zaproponował termin UTM (ang. Unified Threat Management) na określanie zintegrowanych
rozwiązań bezpieczeństwa. Termin ten został przyjęty przez środowisko i jest powszechnie
stosowany. Urządzenie, które może być nazywane tym terminem, musi poza funkcjonalnością
filtrowania pakietów realizować także dodatkowe funkcje bezpieczeństwa, takie jak:

 filtrowanie ruchu sieciowego oprogramowaniem antywirusowym,
 ochrona antyspamowa,
 ochrona przed włamaniami (ang. Intrusion Detection System oraz Intrusion Prevention

System), oraz

 filtrowanie treści w protokole http (ang. Web Blocking).

W 2008 roku tenże sam Charles Kologdy zaproponował nową nazwę dla urządzeń realizujących
większą liczbę funkcjonalności niż rozwiązania klasy UTM – XTM (ang. eXtensible Threat
Management
). Określeniem XTM oznacza się zintegrowane rozwiązania bezpieczeństwa, które
oprócz funkcjonalności realizowanej przez urządzenia UTM muszą także zapewniać (co najmniej):

 centralne logowanie i korelację zdarzeń,
 kontrolę dostępu do zasobów sieciowych,
 zarządzanie zagrożeniami, oraz
 ochronę bazującą na reputacji.

W praktyce rozwiązania klasy UTM, czy XTM realizują znacznie większy zbiór funkcjonalności
sieciowych, zapewniających możliwie wysoki poziom bezpieczeństwa. Aktualnie na rynku, w
miejscu prostych rozwiązań typu firewall dostępne są właśnie tego typu rozwiązania.

3. System Kerberos

W procesie uwierzytelniania może być wykorzystywana zaufana strona trzecia (trusted third-party),
która poświadcza tożsamość klienta i serwera. Jest nazywana serwerem bezpieczeństwa (security
serwer
). Jego zadaniem jest przechowywanie haseł wykorzystywanych podczas weryfikacji
użytkowników i serwerów. Jest to jedyne miejsce przechowywania haseł.
Wymagania:

Zapewnienie dwustronnego uwierzytelnienia dwukierunkowego. Zadaniem trzeciej strony
jest przechowywanie i pielęgnacja haseł.

Hasła nie powinny być przesyłane poprzez sieć.

Hasła nie powinny być przechowywane na stacji klienckiej.

Zarejestrowany użytkownik powinien otrzymać tymczasowy klucz tajny. Jest on
wykorzystywany przez klienta przy wszystkich dostępach.

System powinien pozwalać na bezpieczne przesyłanie kluczy szyfrowania pomiędzy
klientami i serwerami.

Przykładem systemu uwierzytelniania z udziałem strony trzeciej jest system Kerberos.
System Kerberos powstał w czasie realizacji projektu Athena na uniwersytecie MIT. Projekt miał
na celu integrację komputerów uniwersyteckich. System weryfikacji autentyczności jest oparty na
znajomości haseł zapisanych w serwerze Kerberosa. W procesie uwierzytelniania wykorzystuje się
tajny dzielony klucz (shared secret), który pozwala na identyfikację użytkowników bez
eksponowania informacji narażających bezpieczeństwo sieci. W systemie uwierzytelniania
wyróżnić można cztery komponenty.

background image

Pierwszy komponent to klient czyli użytkownik lub aplikacja reprezentująca użytkownika.
Jest to miejsce, z którego użytkownik prowadzi pracę, wprowadza identyfikator i hasło.

Drugi komponent to serwer uwierzytelniający (authentication server) służący do
przechowywania haseł i sprawdzania tożsamości użytkownika. W czasie wymiany
informacji z klientem dostarcza on klientowi bilet uprawniający do korzystania z usługi
przyznawania biletów (ticket-granting ticket).

Komponent trzeci to serwer przepustek lub serwer przyznawania biletów (ticket-granting
server
), który dostarcza klientowi bilet uprawniający do skorzystania z serwera aplikacji.

Komponent czwarty to serwer aplikacji (application server) czyli zasób, który chce się
upewnić, że dany klient jest poprawny. Dostarcza klientowi żądanej przez niego usługi.

Konto w bazie zawiera dane dotyczące tożsamości oraz klucze główne (np. hasła) wszystkich
klientów i serwerów z danego obszaru. Klucz główny serwera uwierzytelniajacego służy do
szyfrowania wszystkich kluczy głównych klientów udaremniając nieautoryzowany dostęp do
serwera.
Poważną wadą systemu jest jego dostęp do zaszyfrowanych haseł użytkowników. Powoduje to, że
zawarte są w nim dane krytyczne dla bezpieczeństwa i powinien być on chroniony w sposób
szczególny.
Serwer Kerberosa jest bezstanowy. Odpowiada po prostu na żądania użytkowników i wydaje
przepustki (żetony, bilety). Ułatwia to tworzenie replikowanych serwerów zapasowych.
Funkcjonowanie systemu z punktu widzenia użytkownika niczym nie różni się od systemu
tradycyjnego. Idea systemu Kerberos została przedstawiona na rys. 5.

Rys. 5. Idea systemu Kerberos

background image

4.Algorytm Diffie-Hellman'a

Protokół uzgadniania kluczy Diffie-Hellman jest wykorzystywany w kryptografii do ustalenia
jednego klucza dla obu stron transakcji bez przesyłania żadnych poufnych informacji. Tak
wygenerowany klucz jest później wykorzystywany przez algorytm symetryczny do szyfrowania
połączenia między odbiorcą, a nadawcą. Dzięki temu można zabezpieczyć transakcję przed
podsłuchiwaniem przez osoby postronne. Algorytm Diffie-Hellman nie jest odporny na atak "man
in the middle" czyli ingerencję w komunikację między odbiorcą, a nadawcą poprzez podmianę
kluczy

publicznych

na

własne.

Protokół:

1. Alicja i Bob wyznaczają dwie liczby: p będącą liczbą pierwsza oraz g (zwany generatorem)

mniejsze od p (z następującymi właściwościami: dla każdego n pomiędzy 1 i p-1 włącznie,
istnieje potęga takiego k od g że n = gk mod p).

2. Alicja generuje prywatną wartość a - Bob generuje prywatną wartość b.
3. Alicja wysyła Bobowi g

a

mod p. Bob wysyła Alicji g

b

mod p.(są to wartości publiczne)

4. Alicja oblicza na podstawie swojej wartości prywatnej k=(g

b

)

a

mod p.

5. Bob oblicza na postawie swojej wartości prywatnej k=(g

a

)

b

mod p.

Protokół ten zakłada że jest niewykonalne obliczenie k, jedynie na podstawie wartości publicznych
Alicji i Boba jeżeli p jest dostatecznie duże.


Wyszukiwarka

Podobne podstrony:
opracowanie Piotra (edit) druk
opracowanie Piotra (edit) druk
Trójca opracowanie Piotra Zaręby
Lachu opracowanie otwarte Kerto me edit, INNE, WYKŁADY Lach, pps na 17 czerwca
Opracowanka, warunkowanie
OPRACOWANIE FORMALNE ZBIORÓW W BIBLIOTECE (książka,
postepowanie w sprawach chorob zawodowych opracowanie zg znp
opracowanie 7T#2
opracowanie testu
Opracowanie FINAL miniaturka id Nieznany
Opracowanie dokumentacji powypadkowej BHP w firmie
przetworniki II opracowane
Opracowanie Programowanie liniowe metoda sympleks
Nasze opracowanie pytań 1 40
haran egzamin opracowane pytania

więcej podobnych podstron