Bezpieczenstwo w zarzadzaniu siecia SNMP - mimuw.edu.plczarnik/zajecia/bezp10/W08-snmp.pdf ·...

33
Bezpiecze ´ nstwo w zarz ˛ adzaniu sieci ˛ a – SNMP Patryk Czarnik Wydzial Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski Bezpiecze ´ nstwo sieci komputerowych – MSUI 2010/11 Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 1 / 31

Transcript of Bezpieczenstwo w zarzadzaniu siecia SNMP - mimuw.edu.plczarnik/zajecia/bezp10/W08-snmp.pdf ·...

Bezpieczenstwo w zarzadzaniu siecia – SNMP

Patryk Czarnik

Wydział Matematyki, Informatyki i MechanikiUniwersytet Warszawski

Bezpieczenstwo sieci komputerowych – MSUI 2010/11

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 1 / 31

SNMP

Simple Network Management Protocol

Celmonitorowanie urzadzen i aplikacjikonfiguracja urzadzen

Statusstandard IETFwersja 1 – 1988, RFC: 1065–1067,zastapione przez RFC: 1155, 1213, 1157,wersja 2 – 1993, RFC: 1441–1452

SNMPv2c (community-based), RFC: 1901–1908SNMPv2u (user-based), RFC: 1909–1910

wersja 3 – 2004, RFC: 3411–3418

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 2 / 31

SNMP

Idea SNMP

Elementy architektury zarzadzania siecia

stacja zarzadzajaca (NMS),zarzadzane urzadzenie,agent,zarzadzany obiekt,baza informacji (MIB),protokół zarzadzania siecia.

Modele komunikacjiNMS →

← urzadzenieurzadzenie→ NMS (trap)NMS→ NMS (inform)

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 3 / 31

SNMP

Idea SNMP

Elementy architektury zarzadzania siecia

stacja zarzadzajaca (NMS),zarzadzane urzadzenie,agent,zarzadzany obiekt,baza informacji (MIB),protokół zarzadzania siecia.

Modele komunikacjiNMS →

← urzadzenieurzadzenie→ NMS (trap)NMS→ NMS (inform)

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 3 / 31

SNMP

Stacja zarzadzajaca – wymagania

Zestaw aplikacji słuzacych do analizy informacji, naprawianiabłedów itp.Interfejs słuzacy administratorowi do obserwacji i kontroli sieci.Mozliwosc przekładania wymagan administratora sieci nafaktyczna mozliwosc obserwacji i kontroli elementów sieci.Baza danych zawierajaca informacje z baz informacjiadministracyjnych (MIB) wszystkich jednostek w administrowanejsieci.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 4 / 31

SNMP

Polecenia SNMP

GetRequest – dla kazdego obiektu wymienionego w poleceniuzwróc wartosc tego obiektuGetNextRequest – dla kazdego obiektu wymienionegow poleceniu zwróc wartosc nastepnego obiektu (w porzadkuleksykograficznym danego MIBa)GetBulk (SNMPv2) – dla kazdego obiektu wymienionegow poleceniu zwróc wartosc nastepnych N obiektówSetRequest – dla kazdego obiektu wymienionego w poleceniuustaw wartosc na wymieniona w poleceniuTrap – przeslij informacje o zaistniałym zdarzeniu (agent domenedzera)Inform (SNMPv2) – przeslij informacje o zaistniałym zdarzeniu(menedzer do menedzera)GetResponse – odpowiedz na zadanie menedzera

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 5 / 31

Bezpieczenstwo w SNMP

Elementy bezpieczenstwa w SNMP

Kontrola dostepu – ograniczenie dostepu menedzera dokonkretnego fragmentu MIBa oraz okreslonego zbioru polecen.Uwierzytelnianie (SNMPv2) – procedura umozliwiajaca stronieodbierajacej sprawdzenie, ze komunikat pochodzi z danego zródłai ma własciwy czas. Realizuje sie ja przez dołaczenie dokomunikatu dodatkowej informacji.Prywatnosc (SNMPv2) – ochrona danych przed odczytaniemprzez nieupowaznionych odbiorców. Realizuje sie ja przezszyfrowanie danych.(SNMPv3) – złozony model kontroli dostepu

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 6 / 31

Bezpieczenstwo w SNMP SNMPv1

Społecznosci w SNMPv1

Namiastka uwierzytelnienia w SNMPv1 (i SNMPv2c).Identyfikowana napisem unikalnym dla agenta (czesto dla całejsieci).W zamysle grupa menedzerów majaca okreslone uprawnienia dookreslonych obiektów.Stacja zarzadzajaca dołacza do polecenia nazwe społecznosci(jawnym tekstem!).Agent moze obsługiwac wiele społecznosci, menedzer mozenalezec do wielu społecznosci.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 7 / 31

Bezpieczenstwo w SNMP SNMPv1

Polityka ograniczen dostepu w SNMPv1

Kazdej społecznosci SNMP odpowiada profil społecznosci okreslajacypolityke dostepu do obiektów MIB. Profil taki ma dwa aspekty:

widok MIB – to zbiór obiektów MIB do których dostep ma danaspołecznosctryb dostepu – okresla polecenia które mozliwe sa do wykonaniana danym obiekcie. Tryb dostepu w SNMPv1 to jeden z:{READ-ONLY, READ-WRITE}

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 8 / 31

Bezpieczenstwo w SNMP SNMPv2

Bezpieczenstwo w SNMPv2

Zagrozenia wystepujace w SNMPv1, przed którymi chronia srodkizapewniania bezpieczenstwa w SNMPv2:

ujawanianie – przeciwnik moze sledzic informacje wymienianeprzez menedzera i agenta i w ten sposób poznac wartosczarzadzanych obiektów oraz uzyskac informacje o wydarzeniach,maskarada – przeciwnik moze starac sie podszyc pod członkaspołecznosci w celu wykonania niedozwolonej dla siebie operacji,modyfikacja tresci komunikatu – przeciwnik moze zmienicwygenerowany przez członka społecznosci komunikat w trakcieprzesyłania w taki sposób aby doprowadzic do wykonanianiedozwolonej operacji zarzadzania,modyfikacja kolejnosci i czasu komunikatów – w celudoprowadzenia do wykonania niedozwolonych operacji przeciwnikmoze zmieniac kolejnosc, opózniac lub powtarzac komunikaty.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 9 / 31

Bezpieczenstwo w SNMP SNMPv2

(Nie)Bezpieczenstwo w SNMPv2

SNMPv2 nie chroni natomiast przed nastepujacymi zagrozeniami:uniemozliwienie działania – przeciwnik moze zablokowacwymiane informacji miedzy agentem a menedzerem,analiza ruchu – przeciwnik moze sledzic schemat ruchupomiedzy menedzerem i agentami.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 10 / 31

Bezpieczenstwo w SNMP SNMPv2

Strony w SNMPv2

StronaAbstrakcja uzytkownika/urzadzenia i roli w jakiej wystepujew danym kontekscie.Kazdy agent/menedzer moze posiadac wiele stron.Wieksza elastycznosc w nadawaniu uprawnien i kontroli dostepu.

Baza danych jednostki o znanych stronachStrony lokalne – zbiór stron na których działania wykonujelokalna jednostka SNMPv2 czyli zbiór ról tej jednostki,Strony reprezentowane – zbiór stron jednostekreprezentowanych przez dana jednostke SNMPv2,Strony odległe – zbiór stron, których działania realizuja innejednostki SNMPv2 z którymi dana jednostka moze wchodzic winterakcje.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 11 / 31

Bezpieczenstwo w SNMP SNMPv2

Strony w SNMPv2

StronaAbstrakcja uzytkownika/urzadzenia i roli w jakiej wystepujew danym kontekscie.Kazdy agent/menedzer moze posiadac wiele stron.Wieksza elastycznosc w nadawaniu uprawnien i kontroli dostepu.

Baza danych jednostki o znanych stronachStrony lokalne – zbiór stron na których działania wykonujelokalna jednostka SNMPv2 czyli zbiór ról tej jednostki,Strony reprezentowane – zbiór stron jednostekreprezentowanych przez dana jednostke SNMPv2,Strony odległe – zbiór stron, których działania realizuja innejednostki SNMPv2 z którymi dana jednostka moze wchodzic winterakcje.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 11 / 31

Bezpieczenstwo w SNMP SNMPv2

Pola bazy danych (o stronach)

Dla kazdej znanej strony:identyfikator,domena, adres,zegar(!),max. czas zycia komunikatu,uwierzytelnienie:

algorytm,publiczne dane uwierzytelniajace,np. klucz publiczny w algorytmie asymetrycznym,prywatne dane uwierzytelniajace,np. klucz prywatny w algorytmie asymetrycznym,

szyfrowanie:algorytm,dane publiczne,dane prywatne (jak wyzej).

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 12 / 31

Bezpieczenstwo w SNMP SNMPv2

Format komunikatu SNMPv2uPostac ogólna

version INTEGERmodel INTEGERqoS 8 bitówagentID 12 oktetówagentBoots 32 bityagentTime 32 bitymaxSize 16 bitówuserLen 1 oktetuserName 1..16 oktetówauthLen 1 oktetauthDigest 0..255 oktetówcontextSelector 0..40 oktetówPDU, PDU, ... Protocol Data Unit – właswiwa tresc SNMP

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 13 / 31

Bezpieczenstwo w SNMP SNMPv2

Format komunikatu SNMPv2uBrak zabezpieczen

version = 2model = 1qoS = ......00agentIDagentBootsagentTimemaxSizeuserLenuserNameauthLen = 0authDigest pustecontextSelectorPDU, PDU, ...

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 14 / 31

Bezpieczenstwo w SNMP SNMPv2

Format komunikatu SNMPv2uUwierzytelnienie bez szyfrowania

version = 2model = 1qoS = ......01agentIDagentBootsagentTimemaxSizeuserLenuserNameauthLen > 0authDigest = hash(wiadomosc · klucz)contextSelectorPDU, PDU, ...

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 15 / 31

Bezpieczenstwo w SNMP SNMPv2

Format komunikatu SNMPv2uSzyfrowanie i uwierzytelnienie

version = 2model = 1qoS = ......11agentIDagentBootsagentTimemaxSizeuserLenuserNameauthLen > 0authDigest = hash(wiadomosc · klucz)contextSelectorPDU, PDU, ... szyfrowanie (tylko tu)

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 16 / 31

Bezpieczenstwo w SNMP SNMPv2

Prywatnosc

W oryginalnym SNMPv2:szyfrowanie z uzyciem algorytmu DES,wymaga aby obie strony dzieliły wspólny klucz szyfrujacy.

Struktura bazy danych umozliwia jednak zastosowanie innychalgorytmów szyfrujacych (symetrycznych badz asymetrycznych).

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 17 / 31

Bezpieczenstwo w SNMP SNMPv2

Uwierzytelnianie

1 Sprawdzenie, czy strona znana.2 Sprawdzenie czy znane nam zegary stron zgadzaja sie z

podanymi we wiadomosci z dokładnoscia do czasu zycia pakietu(granularnosc: 1 sekunda).

3 Weryfikacja podpisu wiadomosci.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 18 / 31

Bezpieczenstwo w SNMP SNMPv2

Kontrola dostepu

Na polityke kontroli dostepu składaja sie cztery elementy:

strona przeznaczenia – strona SNMP wykonujaca operacjezarzadzania na zadanie strony zródłowejstrona zródłowa – strona SNMP zadajaca wykonania operacji nazadanie stron przeznaczeniazasoby – informacje zarzadzania, na których moznaprzeprowadzac zadane operacje zarzadzania w postaci lokalnegowidoku MIB lub relacji pełnomocnictwa, nazywane takzekontekstemprzywileje – operacje dozwolone, zdefiniowane jako dozwolonePDU przynalezace do danego kontekstu i do których wykonania wimieniu podmiotu jest uprawniony odbiorca

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 19 / 31

Bezpieczenstwo w SNMP SNMPv2

Kontrola dostepu cd.

Kontrole dostepu okreslaja informacje zawarte w MIB stron. Baza taskłada sie z czterech tablic:

tablicy stron – zawiera po jednej pozycji na kazda strone znanalokalnemu agentowi. Kazda pozycja zawiera parametryuwierzytelniania i prywatnosci. Raz na sekunde lokalny menedzermusi zwiekszyc wartosc zegara dla kazdej pozycji tablicytablica kontekstów – moze zawierac pozycje zwiazane zinfromacjami lokalnymi oraz relacjami pełnomocnictwatablica kontroli dostepu – jest indeksowana strona zródłowa,strona przeznaczenia i kontekstem.Kazda pozycja zawiera zbiór PDU akceptowanych przez odbiorcetablica widoków MIB – składa sie ze zbioru widoków

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 20 / 31

Bezpieczenstwo w SNMP SNMPv3

Architektura jednostki SNMPv3

Koegzystencja starego i nowego.Elementy

Jadro SNMPdokładnie jedno dla kazdej jednostki,identyfikowane przez snmpEngineID.

Aplikacje.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 21 / 31

Bezpieczenstwo w SNMP SNMPv3

Architektura jednostki SNMP – jadro

+-------------------------------------------------------------+| jadro SNMP (ident. przez snmpEngineID) || || +------------+ +------------+ +-----------+ +-----------+ || | | | | | | | | || | Rozdzielnik| | Podystem | | Podsystem | | Podsystem | || | | | Przetwarz. | | Bezpiecz- | | Kontroli | || | | | Komunikatów| | enstwa | | Dostepu | || | | | | | | | | || +------------+ +------------+ +-----------+ +-----------+ || |+-------------------------------------------------------------+

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 22 / 31

Bezpieczenstwo w SNMP SNMPv3

Architektura jednostki SNMP – aplikacje

+-------------------------------------------------------------+| Aplikacje || || +-------------+ +--------------+ +--------------+ || | Generator | | Odbiornik | | Przekaznik | || | Polecen | | Powiadomien | | Posredniczacy| || +-------------+ +--------------+ +--------------+ || || +-------------+ +--------------+ +--------------+ || | Przetwornik | | Nadajnik | | Inne | || | Polecen | | Powiadomien | | | || +-------------+ +--------------+ +--------------+ || |+-------------------------------------------------------------+

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 23 / 31

Bezpieczenstwo w SNMP SNMPv3

Schemat działania jednostki SNMP

+-------------------------------------------------------------------+| +--------------+ +--------------+ +--------------+ jedn. SNMP || | NADAJNIK | | ODBIORNIK | | GENERATOR | || | POWIADOMIEN | | POWIADOMIEN | | POLECEN | || | aplikacje | | aplikacje | | aplikacje | || +--------------+ +--------------+ +--------------+ || ^ ^ ^ || | | | || v v v || +-------+--------+-----------------+ || ^ +---------------------+ +----------------+ || | | Podsystem przetw. | | Podsystem | || Rozdzielnik v | Komunikatów | | Bezpieczenstwa | || +-------------------+ | +------------+ | | | || | Rozdzielnik PDU | | +->| v1MP * |<--->| +------------+ | || | | | | +------------+ | | | Inny model | | || | | | | +------------+ | | | Bezpiecz- | | || | | | +->| v2cMP * |<--->| | enstwa | | || | Rozdzielnik | | | +------------+ | | +------------+ | || | Komunikatów <--------->+ | | | || | | | | +------------+ | | +------------+ | || | | | +->| v3MP * |<--->| | Model bez- | | || | Odwzorowanie | | | +------------+ | | | pieczenstwa| | || | na transport | | | +------------+ | | | op. na uz. | | || | (np. wg RFC1906) | | +->| otherMP * |<--->| +------------+ | || +-------------------+ | +------------+ | | | || ^ +---------------------+ +----------------+ || | || v do sieci |+-------------------------------------------------------------------+

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 24 / 31

Bezpieczenstwo w SNMP SNMPv3

Wysokopoziomowe parametry bezpieczenstwa

securityModel – zastosowany model bezpieczenstwa:oparty na społecznosciach,oparty na uzytkownikach.

securityName – nazwa osoby, organizacji itp. wykonujacejczynnosci zarzadzania,securityLevel – wymagany poziom bezpieczenstwa.

bez autentyfikacji i poufnosci(noAuthNoPriv),z autentyfikacja, ale bez poufnosci(authNoPriv),z autentyfikacja i poufnoscia (authPriv).

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 25 / 31

Bezpieczenstwo w SNMP SNMPv3

Podział na moduły

Moduł uwierzytelnieniaintegralnosc danych,uwierzytelnienie pochodzenia danych.

Moduł czasowyochrona przed powtórzeniami,ochrona przed opóznieniami.

Moduł ochrony prywatnoscizapewnienie poufnosci danych.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 26 / 31

Bezpieczenstwo w SNMP SNMPv3

Stosowane mechanizmy bezpieczenstwa

HMAC-MD5-96,HMAC-SHA-96,CBC-DES,czas sprawdzany tylko przy sprawdzaniu integralnosci danych:

autentyfikacja synchronizacji czasu,snmpEngineBoots – liczba uruchomien agenta,snmpEngineTime – czas na maszynie agenta.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 27 / 31

Bezpieczenstwo w SNMP SNMPv3

Atrybuty uzytkownika

userName – nazwa,securityName – nazwa niezalezna od modelu bezpieczenstwa,authProtocol – czy komunikaty maja byc uwierzytelniane i jakiprotokół ma byc uzywany,authKey – klucz (prywatny) do powyzszego uwierzytelniania(rózny dla róznych jader SNMP),authKeyChange i authOwnKeyChange – sposób zmiany kluczauwierzytelnienia,privProtocol – czy komunikaty maja byc szyfrowane i jaki protokółobsługi szyfrowania ma byc uzyty,privKey – klucz (prywatny) do powyzszego szyfrowania (rózny dlaróznych jader SNMP),privKeyChange i privOwnKeyChange – sposób zmiany kluczaszyfrowania.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 28 / 31

Bezpieczenstwo w SNMP SNMPv3

Klucze

LokalizacjaHasło jest konwertowane na klucz Ku za pomoca MD5 lub SHA,Z wartosci Ku·snmpEngineID·Ku za pomoca przypisanejuzytkownikowi metody generowania hasza generowany jest wyciag– to jest klucz lokalny.

Renegocjacjaspecjalne komunikaty,oparta na tajnosci starego klucza i losowosci.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 29 / 31

Bezpieczenstwo w SNMP SNMPv3

Model kontroli dostepu oparty na perspektywach(VACM)

Pamiec lokalnej konfiguracji (Local Configuration Datastore –LCD) zawiera informacje o prawach dostepu.Zdefiniowane jest pojecie grupy (zbiór par securityModel,securityName).Prawa sa definiowane z uwzglednieniem securityLevel.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 30 / 31

Bezpieczenstwo w SNMP SNMPv3

Perspektywy

Dla kazdego kontekstu (adresu w MIB) moze byc ustalonaperspektywa: okresla sie typy (i opcjonalnie instancje typów), doktórych jest dostep.Perspektywy sa definiowane przez

poddrzewa perspektywy,rodziny drzew perspektywy (maski bitowe).

Kazda grupa ma perspektywyodczytu,zapisu,powiadamiania.

Patryk Czarnik (MIMUW) 08 – SNMP BSK 2010/11 31 / 31