aplikacje i usługi

Transkrypt

aplikacje i usługi
Protokoły wyższych warstw
Protokoły pośredniczące:
RPC – Remote Procedure Call – zdalne wywołanie procedury
4 bajtowe numery usług RPC
Serwery lokalizujące usługi RPC – portmapper i RPC Lokator ( Windows NT)
NetBIOS ponad TCP/IP (NetBT)
Zwykle ponad NetBT lub czasem bezpośrednio na TCP/IP (CIFS) – TCP/UDP port 445
TLS i SSL ( Secure Socket Layer)
Usługi nazewnicze – UDP 137
Datagramowe - UDP 138
Sesyjne – TCP 139
CIFS i SMB ( Common Internet File Systems , Server Message Block)
Port TCP i UDP 111 dla RPC Suna i 135 dla RPC MS
Serwery usług rejestrują usługę w portmapperze
SSL produkt Netscape’a 1993
Do przenoszenia HTTP – wydajny przy krótkich bezstanowych połączeniach, może być
podtrzymany przez serię połączeń http.
SSL3 , TLS ( Transport Layer Security – IETF RFC 2246)
IPsec
AH – Authentication Header – Protokół numer 51
ESP – Encapsulating Security Payload – Protokół numer 50
ISAKMP – Internet Security Association Key Managment Protocol – przez UDP 500
Tryb transportowy – AH lub ESP za nagłówkiem IP
Tryb tunelowy – cały pakiet umieszczony w nowym IP
Bezpieczeństwo IPv4 i IPv6
IPSec
Bezpieczne łączenie filii firmy przez Internet
Bezpieczny zdalny dostęp przez Internet
Łączność extranet (zewnętrzna) i intranet (wewnętrzna)
Wzbogacone bezpieczeństwo działalności komercyjnej
Obszar IPSec
Nagłówek poświadczenia (AH)
Kapsułkowanie zabezpieczonych danych (ESP)
Wymiana kluczy
RFC 2401,2402,2406,2408
Security Association
(Bezpieczne Połączenie)
Jednostronna relacja między nadawcą a
odbiorcą
Dla obustronnej, dwa połączenia (skojarzenia)
są wymagane
Trzy parametry identyfikacji SA
Współczynnik bezpieczeństwa
Docelowy adres IP
Identyfikator protokołu bezpieczeństwa
Parametry SA
Licznik numerów sekwencyjnych
Limit licznika
Okna anty-odpowiedzi
Informacja AH (nagłówek poświadczenia)
Informacja ESP (Kapsułkowanie
zabezpieczonych danych)
Czas trwania SA
Tryb protokołu IPSec
Tunelowy, transportowy lub „wildcard” (mieszany)
Ścieżka MTU
Tryby transportu i tunelu
Tryb transportu
Ochrona dla protokołów wyższej warstwy
Ogranicza się do pola danych w pakiecie IP
End-to-end pomiędzy hostami
Tryb tunelu
Ochrona dla IP
Cały pakiet traktowany jako dane do zewnętrznego
pakietu
Żaden ruter nie rozszyfrowuje pakietu
Może mieć inne adresy źródłowe i docelowe
Może być zaimplementowany w firewall’u
Nagłówek Poświadczenia (AH)
IPsec
The IPsec authentication header in transport
mode for IPv4.
Kapsułkowanie
zabezpieczonych danych
ESP(Encapsulating Security Payload)
Usługi wymagające poufności
Pakiet ESP
Zakres ESP
Zarządzanie Kluczami
Ręczne
Automatyczne
ISAKMP/Oakley
⌧Protokół Oakley do wyznaczania kluczy
⌧Internetowy protokół bezpiecznego połączenia i zarządzania
kluczami (Internet security association and key management
protocol)
Bezpieczeństwo w stosie
protokołów TCP/IP
SSL ( Secure Socket Layer)
SSL produkt Netscape’a 1993
Do przenoszenia HTTP – wydajny przy krótkich bezstanowych połączeniach, może być
podtrzymany przez serię połączeń http.
SSL3 , TLS ( Transport Layer Security – IETF RFC 2246)
Grupa robocza TLS w ramach IETF
Pierwsza wersja TLS rozpoznawana jako SSLv3.1Transport
Layer Security
Ten sam format rekordu jak w SSL
Zdefiniowany w RFC 2246
Podobny do SSLv3.
Różnice:
⌧
⌧
⌧
⌧
⌧
⌧
⌧
⌧
⌧
version number
message authentication code
pseudorandom function
alert codes
cipher suites
client certificate types
certificate_verify and finished message
cryptographic computations
padding
SSL—The Secure Sockets Layer
Warstwy (i protokoły) dla przeglądania WWW z SSL
Architektura SSL
SSL – przesył danych
Transmisja danych z wykorzystaniem SSL.
Operacje protokołu SSL Record Protocol
Format protokołu SSL Record
Content Type – typ danych
20 - Change CipherSpec, 21 – Alert Protocol, 22 –Handshake, 23 – Application
Wersja
SSLv3 – 3,0
TLSv1 – 3,1
SSL Record Protocol Payload
Handshake Protocol
Najbardziej skomplikowana i rozbudowana część
SSL.
Pozwala na autentykację serwera i klienta
(opcjonalnie) względem siebie
Negocjuje szyfrowawanie, algorytmy interalności
(MAC), wymiana i ustalenie kluczy kryptograficznych
Używany przed transmisją danych aplikacji
SSL – protokół Handshake
Uproszczona wersja nawiązania połączenia SSL.
Składowe protokołu Handshake
Client Hello
Wersja protokołu
⌧ Jak w protokole Record
Wartość losowa
⌧ 32 bajtowa wartość losowa
• w tym 4 bajty czas ( w sekundach od Unixowej epoki –0:00,1.01.1970)
ID sesji
⌧ Łańcuch do 32 bajtów – 0 dla nowej sesji
• Wykorzystanie informacji z poprzedniej sesji
Lista proponowanych algorytmów kryptograficznych
⌧ Od najbardziej preferowanych
Lista proponowanych algorytmów kompresji
Server Hello
Składnia jak w Client Hello
⌧ Ale algorytmy wybrane przez z server z listy proponowanych
⌧ ID sesji może być ustawione, jeśli server dopuszcza wznawianie sesji
Certificate
Jedno pole – łańcuch certyfikatów – X.509 ( v3)
Server Hello Done
Komunikat bez pól – ale niezbędny
Składowe protokołu Handshake
ClientKeyExchange
Do przekazania pre_master_secret
⌧ 48 bajtów ( w tym 2 wersja protokołu)
Składnia
⌧ Rodzaj algorytmu ( RSA, DH)
⌧ Zakodowana wartość pre_master_secret ( dla RSA)
•
Kluczem publicznym servera ( z łańcucha certyfikatów)
⌧ Wartość publiczna algorytmu Diffie-Hellmana ( dla DH)
Finished
Pierwszy zaszyfrowany komunikat
MD5 (16 bajtów) i SHA_hash (20) (dla SSLv3) wszystkich dotychczasowych
komunikatów + wartość master_secret
Dane potwierdzające dla TLSv1
⌧ Też skróty MD5 i SHA-1 – konkatenowane i obcięte do 12 bajtów
ChangeCipherSpec
Komunikat protokołu CipherSpec
Wysyłany przez Klienta i server
⌧ Po jego przesłaniu dane są szyfrowane kluczami wygenerowanymi w oparciu o master_secret i
liczby losowe
Handshake Protocol Action
Protokół Alert
Status błędu
Jednobajtowe pole
⌧1 – ostrzeżenie
⌧2 – błąd krytyczny
Opis błędu
Identyfikator błędu – jednobajtowy
⌧W TLSv1 – 23 kody
•
•
•
•
•
0 – close_notify – żądanie zamknięcia połączenia - to nie błąd !!
10 – unexpected_message
20 – bad_record_mac
21 - decryption_failed
48 – unknown_ca
Wspierane algorytmy –
generowanie kluczy
Algorytmy symetryczne
DES (56bit), 3 DES(112b/168b), RC2, RC4
Algorytmy klucza asymetrycznego
RSA, Diffie-Hellman (DH) – 512-1024-2048 bitów
Funkcje skrótów –
MAC, HMAC (Hash-keyed Message Authentication Code)
MD-5 (128 bitów), SHA-1 (160bitów) (Secure Hash Algorithm)
Podpisy cyfrowe
RSA , DSA ( Digital Signature Algorithm)
Generowanie kluczy
Lista algorytmów, wartość losowa
Przesłanie pre_master_secret ( RSA lub DH)
Wytworzenie po obu stronach master_secret
Generowanie kluczy symetrycznych – na bazie master_secret i liczb losowych
4 rodzaje kluczy 2*HMAC, do szyfrowania
Poufność kluczy i składowych
W transmisji
Zmienność w czasie
⌧ Perfect Forward Secrecy
Przechowywanie w systemach
SSL
Inne zastosowania SSL
VPN
OpenSSL / OpenVPN
⌧Konkurencja dla IPsec
⌧User Space
⌧UDP port 5000
• Dlaczego UDP a nie TCP ?
⌧
Protokoły pośredniczące
Remote Access Services ( RAS)
Tunelowanie
PPTP – Point to Point Tunneling Protocol
L2F – Layer 2 Forwarding
Rozszerzenie PPP – szyfrowanie pakietów PPP i przenoszenie ich przez GRE
Produkt Cisco
L2TP – Layer 2 Tunnelig Protocol
Działa ponad IP z własnym nagłówkiem IP i UDP port 1701
Często szyfrowany przez IPsec ESP – łącznie 3 nagłówki IP
IP – ESP – IP – UDP – L2TP – IP – TCP – Dane ....
GRE – Generic Routing Encapsulation
Enkapsulacja IP w IP
Protokół numer 47
Różne wartości typów protokołu GRE
PPP x880B
Aplikacje :
Architektura klient – serwer
Pasywne otwarcie po stronie serwera –
Aktywne ze strony klienta
Porty poniżej i powyżej 1023
Obciążenia stron ( telnet, X11, http)
Demony (httpd , named, ftpd etc. )
Protokoły usług
Klienci zazwyczaj powyżej 1023
Serwery różnie –dobrze znane porty, przewaga portów poniżej
1023
Komendy
Format
Protokoły międzywarstwowe
SSL
Aplikacje:
Usługi nazewnicze i katalogowe:
DNS ( Domain Name System)
NIS ( Network Information Services)
Dawniej yp – yellow pages
NetBIOS Name Service z TCP, WINS
Tłumaczy nazwy netbiosowe na IP
WINS ( Windows Internet Name Service) , Serwer WINS
Przeglądarka Windows
Light Directory Access Protocol
Obsługa dostępu do baz katalogowych
Też wyszukiwanie informacji
Może wykorzystywać TLS , LDAPS – szyfrowanie połączeń
Active Directory
Obsługa listy w otoczeniu sieciwym
Bazuje na NetBT (porty UDP i TCP –137-139)
LDAP
Czyli NetBT Name Server - NBNS
Usługa katalogowa w Windows 2000, 2003
Korzysta i z DNS i LDAP
Stare aplikacje wyszukiwania informacji o użytkownikach
Finger, whois
DNS
System nazw –
Hierarchiczny – struktura drzewa
Domeny –
Przechowywanie i uzyskiwanie informacji
Rozproszona baza danych
Serwery nazw
Primary
Secondary
Caching
BIND – Berkeley Internet Name Domain
Resolver
Demon named
Rodzaje zapytań – rekurencyjne i iteracyjne
Pamięć podręczna
Generic ( com, net, gov, )
Krajowe ( us, pl, uk, dk ... )
Domeny typu 2.168.200.in-addr.arpa
Efektywność
Autoryzacja
Ipconfig /displaydns /flushdns
Rodzaje rekordów
A, NS, PTR, Cname, MX , Hinfo, SOA, TXT
Format komunikatu DNS
0
8
Identyfikacja
16
24
Parametr
Liczba pytań
Liczba odpowiedzi
Liczba autorytetów
Liczba dodatkowych
Pytania
.....................
Odpowiedzi
............................
Autorytety
.....................
Informacje dodatkowe
.......................
32
Parametry komunikatu DNS
Bity
0
1-4
Znaczenie
Operacja – 0 – pytanie ; 1 odpowiedź
Typ pytania – 0 – standardowe; 1 odwrotne
5
6
1 – jeśli odpowiedź autorytatywna
1 – przy skróconych komunikatach
7
1 – gdy żądana rekursja
8
1 – gdy rekursja dostępna
9-11
zarezerwowane
12-15
Typy odpowiedzi : 0 – poprawna; 1 – błąd
formatu pytania; 2 – awaria serwera; 3 – nie ma
takiej nazwy
Format pozycji pytania
0
8
16
NAZWA
24
.....................
TYP
KLASA
Klasa – Internet
Typ – np. A, MX etc.
Nazwa – dowolna liczba oktetów (też nazwy skrócone)
32
Format rekordu zasobu
0
8
16
Nazwa zasobu
24
.....................
Typ
Klasa
Czas życia
Długość danych
Dane
........................
..................
.....................
32
System nazw dziedzin DNS
Format skompresowanych nazw
Reprezentacja nazw – ciąg etykiet
⌧Pierwszy oktet – długość etykiety
⌧Pobranie etykiety
⌧....
⌧Oktet długości = 0 – koniec nazwy
Kompresja
⌧Wskaźniki do segmentów nazw
⌧Oktet długości –
• Jeśli dwa najstarsze bity 11 to – następne 14 bitów jest
wskaźnikiem
• Jeśli nie – to 6 bitów stanowi o długości segmentu nazwy
Skróty nazw dziedzin
Obszary dziedziny ( analogia obszaru telefonii)
Sufiksy dziedziny
Np.
⌧
⌧
⌧
⌧
zsk.p.lodz.pl
cc.p.lodz.pl
p.lodz.pl
lodz.pl
Przetwarzanie według kolejności – powinno być od
domen najniższego rzędu ( „najdłuższych” )
DNS
Odwzorowania odwrotne
Zapytania odwrotne ( inverse queries )
Do serwera wysyłana jest odpowiedź
⌧Serwer odsyła zapytanie jakie by wywołało
⌧Problem jednoznaczności
⌧Trudności po stronie serwera – praktycznie przeszukanie całej
przestrzeni nazw
⌧Zwykle nie używane
Pytania ze wskaźnikiem
Zapytanie ze wskaźnikiem – pointer query
Domeny typu
⌧ 2.168.200.in-addr.arpa
⌧ 130.2.168.200.in-addr.arpa
Odpowiedzialność za poddziedzinę
Strefy autorytetu
Pliki strefowe, transfer strefy
Pytania i odpowiedzi MX
Dodatkowo rekordy A dla nazw MX ( efektywność)
Zdalne użytkowanie systemów:
telnet
Dostęp terminalowy, port 23 TCP
Bezpieczeństwo – przesyłanie hasła otwartym tekstem
Windows 2000 – uwierzytelnianie NTLM (NT LanMan)
Rlogin ( remote)
Też zdalne wykonywanie polecenie (rsh,rcp,rdump etc. )
Bez przesyłania haseł, ale oparte na zaufaniu do adresu hosta (?!)
SSH – secure shell
Szyfrowanie połączeń, port 22 TCP
Kilka sposobów uwierzytelniania zarówno klienta jak i serwera SSH
Możliwości przekazywania portów – tunelowanie
Tworzenie szyfrowanych połączeń np. do kopiowania plików, dostępu do poczty etc.
Też obsługa połączeń X windows
X-windows - Zdalne interfejsy graficzne
Pliki rhosts
Odwrotna relacja Klient – Serwer ( serwer, to ekran, mysz,klawiatura)
Sposób uruchomienia ( startx)
Zdalne interfejsy graficzne dla systemów Microsoft Windows
ICA (Independent Computing Architecture) – CITRIX
Microsoft Terminal Server, RDP – Remote Desktop Protocol
Transmisja, współdzielenie plików,
drukowanie
FTP file transfer protocol
TFTP - trivial file transfer protocol
Sieciowy dostęp do plików na udostępnionych dyskach
Protokół bezstanowy – działanie niezależne od poprzednich transakcji
Podstawowy mechanizm współdzielenia plików w Uniksie
Prosty protokół RPC oparty zazwyczaj o UDP – najczęściej port 2049, lub wykorzystanie
portmappera
Korzysta z innych usług RPC ( montowanie plików, blokady, wznowienia etc.)
CIFS – Common Internet File System
Uproszczony protokół przesyłania plików
Oparty na UDP – serwery monitorują port 69, transmisja porty powyżej 1023
Brak uwierzytelniania
Prosty protokół startowy (maszyny bezdyskowe: terminale, routery)
NFS - Network File System
Standard transmisji plików w Internecie
Nad TCP/IP
SMB – Server Message Block
NetBEUI, i NetBT nad TCP/IP
Samba – Klient SMB dla Uniksa
FTP
Tryby aktywny (zwykły) i pasywny ( połączenia TCP)
Porty 21 i 20
Linia kontroli i komend (port 21)
Linia przesyłu danych (port 20)
Tryb pasv
Tryb aktywny
Po tej komendzie – serwer odpowiada OK i numer portu transferu
danych
Kanał danych otwiera klient
Klient używa portu źródłowego o 1 większy niż do linii komend i
przeznaczenia otrzymanego od serwera w linii komend
Trudności przy translacji adresów np. NAT
Kanał danych otwiera serwer z portu 20 do portu 1 większy od portu
źródłowego klienta linii komend ( wcześniej rezerwacja portu przez
klienta i przekazanie go poleceniem FTP PORT ..... )
Użytkownicy anonimowi
Anonimowy dostęp do serwerów ftp
Obecnie często skorelowany z serwerami www
Poczta elektroniczna - e-mail
Struktura usług:
MTA Mail Transfer Agent
MDA Mail Delivery Agent
Umieszcza pocztę we właściwej skrzynce na loklanym hoście
MUA Mail User Agent
Przyjmuje pocztę od zewnętrznych hostów lub ją tam wysyła
Agent użytkownika poczty – program pocztowy umożliwiający czytanie i redagowanie poczty
Wysyłanie poczty, działanie systemu
Protokoły
SMTP –Simple Mail Trasfer Protocol
System przechowaj i przekaż dalej (relay)
TCP port 25
MIME – Multimedia Internet Mail Extensions
Rozszerzenie podstwowego formatu o: zestawy znaków inny niż ASCII,dane nietekstowe, różne czcionki,
wiadomości różnych typów łącznie
S/MIME – obsługa szyfrowania i podpisów cyfrowych
ESMTP – extendend SMTP - komendy
Serwery SMTP : sendmail, smail, Qmail, Microsoft Exchange, Lotus Notes
POP Post Office Protocol
POP 3 – TCP 110
Protokół typu klient serwer do pobierania poczty z sewerów
Transfer haseł – APOP, POP przez SSL ( secure POP)
Poczta elektroniczna (2)
Protokoły cd.
IMAP Internet Message Access Protocol
Przechowywanie poczty na serwerach
/user/spool/mail/
Katalogi domowe programów lokalnych – pine, elm, mail etc.
Dostęp do skrzynek
POP-3, komendy
IMAP
Interfejs WWW
SPAM
Poczta niechciana
Wirusy, informacje handlowe i pseudohandlowe, łańcuszki św. Antoniego etc.
Relay , open relay
TCP port 143
Znacznie więcej możliwości niż POP
Wiadomości przechowywane na serwerach
Przekazywanie poczty pomiedzy serwerami
System news ( Usenet)
Protokół NNTP – Network News Transfer Protocol
Serwery i klienci, grupy dyskusyjne
Zarządzanie intersiecią
SNMP – Simple Network Managment Protocol
Monitory
Monitoring i konfiguracja urządzeń
Serwery pułapki ( trap)
Performance Monitor (MS)
Network Monitor ( MS)
Protokoły routingu
Pakiety ICMP
Protokoły startowe ( DHCP etc)
NTP – Network Time Protocol
UDP port 123
Sieć WWW – World Wide Web
Protokół http
Struktura hypertekstu
Przeglądarki ( browser)
Historia od 1993
HTTP – Hyper Text Transport Protocol
URL – Uniform Resource Locator – uniwersalne określanie zasobów
(połączeń)
Klienci protokołu http – też ftp, gophera, NNTP (news), SMTP
Współpraca z lokalnymi programami ( Adobe Reader, MS Office etc.)
Obsługa multimedialna
Pliki cookies ( ciasteczka)
Serwery
MS IIS, Apache
Demony httpd, serwery proxy, przyśpieszające i typu cache (np. squid)
Połączenia TCP bezstanowe, port 80
WWW cd.
Protokoły wymiany buforów cache
ICP – Internet Cache Protocol
CARP – Cache Array Routing Protocol
WCCP – Web Cache Coordination Protocol
Rozszerzenia WWW
Produkt Cisco
Dla routerów przechwytujących cały ruch http ( do portów 80)
Java script
VBscript
Java
CGI – Common Gateway Interface
ASP – Active Server Pages
ActiveX
Poufność i autentykacja
SSL, https ,
Certyfikaty serwerów
WWW cd.
Wyszukiwanie informacji
Technologie push
Technologie RealAudio i RealVideo
Zbieranie danych
Indeksowanie i katalogowanie
Uaktualnianie
Udostępnianie
RTP przez UDP
Zagadnienienia socjalne i biznesowe
Reklamy
Bannery
Serwery bannerów i ogłoszeń
Okna samootwierające się ( pop-up)