IPSecurity

1. Introducere

2. IP Security CerinŃe de securitate la nivelul IP AplicaŃii ale IP Security Caracteristici ale utilizării IP Security Servicii IP Security Arhitectura IP Security Moduri de utilizare a IP Security Protocolul AH: Authentication Header Protocolul ESP: Encapsulating Security Payload

1. Introducere În sens larg, securitatea informaŃiei presupune asigurarea calităŃii datelor. Următoarele trei cerinŃe sunt considerate fundamentale: ConfidenŃialitatea: siguranŃa că datele nu sunt cunoscute de entităŃi neautorizate Integritatea: siguranŃa ca datele sunt în forma originală Disponibilitatea: siguranŃa că datele sunt uşor accesibile. ComunicaŃia în reŃele deschise este foarte ieftină, însă prezintă posibilitatea interceptării, modificării, injectării de date de către un adversar. Datele stocate pe calculatoare legate în reŃea sunt supuse aceloraşi ameninŃări. Atunci când se consideră serviciile de securizare a informaŃiei asigurate de criptografie, confidenŃialitatea şi integritatea sunt divizate în cinci servicii: ConfidenŃialitatea datelor: certitudinea că datele sunt neinteligibile pentru o entitate neautorizată Autentificarea originii datelor: certitudinea că datele provin de la entitatea specificată ca origine Integritatea datelor: certitudinea că datele nu au fost modificate de o entitate neautorizată Autentificarea entităŃilor :certitudinea că o entitate este implicată într-o comunicare în timp real cu o anume entitate Non-repudiabilitatea: certitudinea că o entitate nu poate nega generarea datelor.

AplicaŃiile în reŃea au impus asigurarea autenticităŃii mesajelor şi identificarea corectă a utilizatorilor ca cerinŃe care depăşesc de multe ori ca importanŃă secretul comunicaŃiei. Trebuie remarcată diferenŃa dintre autentificarea originii datelor şi autentificarea entităŃilor: autentificarea entităŃilor include certitudinea asupra generării datelor în timp real şi exclude posibilitatea comunicării cu un adversar care repetă date generate de sursa autentificată.

2. IP Security CerinŃe de securitate la nivelul IP O modalitate curentă de a asigura securitatea aplicaŃiilor care folosesc stiva de protocoale TCP/IP o reprezintă dezvoltarea de mecanisme de securitate specifice pentru diferite domenii de aplicaŃie: e-mail (S/MIME, PGP), client/server(Kerberos), accesul la Web (SSL, TSL). Există însă anumite probleme de securitate care pot fi implementate în cadrul stivei de protocoale TCP/IP: interzicerea legăturilor cu site-urile potenŃial nesigure, criptarea pachetelor emise şi autentificarea pachetelor primite. Prin implementarea politicii de securitate la nivelul protocolului IP, se poate asigura securitatea comunicaŃiei şi pentru aplicaŃii care nu au mecanisme proprii de securitate. Securitatea la nivelul IP cuprinde trei zone funcŃionale:

2

-

autentificarea confidenŃialitatea managementul cheilor criptografice

Mecanismul de autentificare certifică transmiterea efectivă a unui pachet de către entitatea indicată ca sursă în header-ul pachetului şi, în plus, faptul ca pachetul nu a fost modificat în timpul tranzitului. FacilităŃile de criptare/decriptare a mesajelor în nodul sursă/destinaŃie asigură confidenŃialitatea comunicaŃiei, iar facilităŃile privind managementul cheilor criptografice asigură securitatea schimbului de chei. Raportul ”Securitatea in arhitectura Internetului” (IAB-Internet Architecture Board 1994) a stabilit necesitatea implementării unor mecanisme de securitate pentru Internet şi a indicat ca priorităŃi pentru noile mecanisme de securitate împiedicarea monitorizării şi controlului fără autorizare a traficului în reŃele şi securizarea traficului utilizator-utilizator prin implementarea de mecanisme de autentificare şi criptare. Rapoartele anuale ale CERT (Computer Emergency Response Team) indică ca principale tipuri de atac ”IP spoofing”, atac în care intrusul creează pachete IP cu adrese IP false şi exploatează utilizarea de către aplicaŃii a adreselor IP pentru autentificare, şi diferite forme de atacuri (”packet sniffing”) în care intrusul citeşte informaŃiile transmise. IAB a inclus autentificarea şi criptarea ca mecanisme obligatorii pentru următoarea variantă de protocol IPv6; implementarea facilităŃilor de securitate pentru IP, cunoscută ca IPSecurity s-a făcut astfel încât să fie compatibilă atât cu varianta actuală IPv4, cât şi cu varianta viitoare Ipv6. AplicaŃii al IP Security IPSec asigură posibilitate unei comunicaŃii sigure în reŃele locale (LAN), reŃele de arie largă (WAN), private sau publice, şi în Internet; exemple: VPN reŃea virtuală privată bazată pe Internet; se evită necesitatea realizării şi gestionarii unei reŃele private de arie largă. Acces la distanŃă prin Internet; un utilizator final al cărui sistem pe al cărui sistem este implementat protocolul IPSec poate apela la un furnizor de Internet (ISP) şi obŃine accesul securizat la o reŃea privată ÎmbunătăŃirea securităŃii aplicaŃiilor care au mecanisme de securitate incluse.

-

Principala caracteristică a IPSec care îi permite să asigure aceste aplicaŃii variate este faptul că întregul trafic, la nivel IP, poate utiliza mecanismele de criptare şi/sau autentificare. Astfel toate aplicaŃiile distribuite: client/server, e-mail, transfer de fişiere, acces Web, remote logon pot fi securizate. Modul tipic de utilizare a IPSec în cazul unei organizaŃii cu reŃele locale aflate în diferite locaŃii presupune că traficul intern reŃelelor locale nu este securizat în timp ce traficul între reŃelele locale utilizează IPSec pentru asigurarea securităŃii. Acest protocol este implementat în echipamentele de reŃea care conectează reŃele locale la reŃeaua de arie largă, de exemplu rutere sau firewall-uri. OperaŃiile de criptare/decriptare şi autentificare executate de echipamentele cu IPSec sunt transparente pentru staŃiile de lucru şi serverele din reŃelele locale. Utilizatorii individuali, conectaŃi direct la WAN, pot utiliza aceleaşi facilităŃi cu condiŃia implementării IPSec pe staŃia de lucru.

3

Caracteristici ale utilizării IP Security Dacă IPSec este implementat într-un firewall sau un ruter, asigură securizarea pentru toate staŃiile de lucru din reŃeaua locala, fără ca traficul local să fie afectat de mecanismele de securitate. IPSec implementat într-un firewall este eficient dacă tot traficul dinspre exterior utilizează IP şi firewall-ul este singurul punct de intrare dinspre Internet în reŃeaua locală IPSec este sub nivelul de transport (TCP, UDP) astfel încât este transparent pentru aplicaŃii; software-ul de aplicaŃie nu trebuie modificat, indiferent dacă IPSec este implementat în ruter/firewall sau în staŃia de lucru. IPSec este transparent pentru utilizatorii finali; nu este necesară cunoaşterea de către utilizatori a mecanismelor de securitate. IPSec poate asigura securitatea pentru utilizatori individuali care lucrează în afara sediului unei organizaŃii IPSec permite implementarea unei subreŃele virtuale securizate dedicată anumitor aplicaŃii în cadrul unei organizaŃii.

-

-

-

IPSec poate avea un rol vital în elaborarea unei arhitecturi de rutare necesară interconectării reŃelelor; exemple de utilizare: asigurarea că un mesaj de avertizare a prezenŃei unui nou ruter în reŃea provine de la un ruter autorizat. asigurarea că un mesaj de stabilire sau menŃinere a legăturii dintre două rutere provine de la un ruter autorizat. asigurarea că un mesaj redirecŃionat provine de la ruterul către care pachetul iniŃial a fost trimis. informaŃia de actualizarea a unui ruter este autentică.

Fară astfel de măsuri de securitate un adversar poate perturba traficul; protocoale de rutare trebuie rulate pe baza asociaŃiilor de securitate definite de IPSec.

Servicii IP Security AH Controlul accesului Autentificarea originii datelor Rejectarea pachetelor duplicate ConfidenŃialitate ConfidenŃialitate limitată asupra traficului X X X ESP (criptare) X X X X ESP (criptare şi autentif.) X X X X X

IPSec permite selectarea protocoalelor de securitate şi a algoritmilor, precum şi stabilirea cheilor criptografice necesare asigurării serviciilor de securitate cerute la nivelul IP. Două protocoale sunt folosite pentru asigurarea securităŃii: un protocol de autentificare denumit după header-ul protocolului, AH –Authentication Header şi un protocol pentru

4

criptare/autentificare denumit după formatul pachetului pentru acest protocol ESP Encapsulating Security Payload. Arhitectura IP Security Documentele care definesc arhitectura IP Security sunt complexe, unele în faza de propuneri. In 1995 IETF a publicat primul set de propuneri de standard pentru IPSec: RFC1825-RC1829. Implementarea acestor RFC este obligatorie pentru IPv6 şi opŃională pentru IPv4. Documentele elaborate sau în curs de elaborare pentru IPSec se împart în următoarele grupuri: Arhitectură: concepte generale, cerinŃe de securitate, definiŃii. Encapsulating Security Payload (ESP): formatul pachetului şi probleme legate de utilizarea ESP pentru criptare şi, opŃional, pentru autentificare. Authentication Header (AH): formatul pachetului i probleme legate de autentificare. Algoritmi de criptare: modul de utilizare a diferiŃi algoritmi de criptare cu ESP. Algoritmi de autentificare: modul de utilizare a diferiŃi algoritmi de autentificare cu AH sau cu opŃiunea de autentificare ESP. Managementul cheilor: protocoalele de autentificare mutuală şi schimb de chei. Domeniul de interpretare: valori care permit corelarea documentelor, - de exemplu identificatori pentru algoritmii de autentificare şi criptare care pot fi folosiŃi, parametri operaŃionali – de exemplu durata de viaŃă a cheilor. Asocieri de securitate Un concept de bază, care apare în mecanismele IP pentru autentificare şi confidenŃialitate, este asocierea de securitate (SA-security association). SA este o relaŃie unidirecŃională între o sursă şi o destinaŃie care asigură servicii de securitate traficului efectuat pe baza ei; pentru un schimb securizat bidirecŃional sunt necesare două asocieri de securitate. Serviciile de securitate pot fi asigurate de o asociere de securitate fie pentru utilizarea protocolului AH, fie a protocolului ESP, dar nu pentru ambele. O asociere de securitate este definită în mod unic de trei parametri: Indexul parametrilor de securitate (SPI): un şir de biŃi asignat unei SA, cu semnificaŃie locală; este inclus în header-ele AH şi ESP pentru a permite sistemului de destinaŃie să selecteze SA pentru procesarea pachetului recepŃionat. Adresa de destinaŃie IP: nu sunt permise adrese multiple, este adresa punctului de destinaŃie final al SA, care poate fi un sistem gazdă sau un sistem al reŃelei – ruter sau firewall Identificatorul protocolului de securitate: indică dacă este o SA pentru protocolul AH sau pentru protocolul ESP.

-

-

Parametrii unei SA În orice implementare a IPSec trebuie să existe o bază de date a SA, care defineşte parametrii asociaŃi cu fiecare SA. O asociere de securitate este în mod tipic definită de următorii parametri: Sequence Number Counter: un numărătorul de 32 de biŃi pentru generarea numărului de secvenŃă utilizat în header-ul AH sau ESP . Sequence Counter Overflow: un flag care indică dacă a avut loc depăşirea numărătorului pentru numere de secvenŃă şi împiedică folosirea SA pentru transmiterea de noi pachete.

5

-

-

Anti-Replay Window: permite detectarea repetării pachetelor. AH information: algoritmi de autentificare, chei criptografice, timp de viaŃă pentru chei, parametri legaŃi de utilizarea AH ESP Information: Algoritmi de criptare şi autentificare, chei criptografice, valori de iniŃializare, parametri legaŃi de utilizarea ESP Lifetime of this Security Association: indică timpul după care SA trebuie înlocuită cu o nouă SA (şi un nou SPI) sau desfiinŃată şi care din aceste acŃiuni trebuie să aibă loc. IPSec Protocol Mode: indică modul tunel sau transport Path MTU-Maximum Transmission UNIT- :dimensiunea maximă a pachetului care poate fi transmis fără fragmentare.

Selectori SA Politica de securitate prin care traficul IP este corelat cu anumite SA (sau cu nici o SA în cazul traficului care nu este controlat de IPSec) este implementată prin Security Policy Database (SPD). Fiecare intrare în SPD este definită printr-un set de valori definite de câmpuri ale formatului IP şi ale formatului protocolului de nivel superior protocolului IP, numite selectori şi conŃine o SA pentru tipul respectiv de trafic. Exemple de selectori: adresele IP pentru sursă şi destinaŃie, denumirea protocolului de transport, a protocolului IPSec (AH/ESP), adresele porturilor sursă sau destinaŃie. Aceşti selectori sunt folosiŃi pentru a filtra traficul, astfel încât fiecare pachet să fie procesat de o SA corespunzător politicii de securitate implementate.

Moduri de utilizare a IP Security Protocoalele AH şi ESP permit două moduri de utilizare: Modul transport asigură protecŃie pentru protocoalele de nivel superior IP, de exemplu pachete TCP, UDP, ICMP, care lucrează imediat deasupra nivelului IP în stiva de protocoale; este folosit în mod tipic pentru comunicaŃie între două calculatoare gazdă. Modul tunel asigură protecŃie pentru întregul pachet IP; este utilizat atunci când sursa şi/sau destinaŃia pachetului sunt rutere securizate sau firewall-uri.

6

Tabelul de mai jos prezintă principalele caracteristici ale celor două moduri: Mod transport Mod tunel AH Autentifică unitatea de date IP şi, Autentifică întregul pachet selectiv, parŃi ale header-ului IP şi original IP plus, selectiv, parŃi ale extensiile header-ului IPv6. noului header şi extensiile noului header IPv6. ESP Criptează unitatea de date IP şi toate Criptează pachetul IP original extensiile header-ului IPv6 care urmează după header-ul ESP. ESP cu Criptează unitatea de date IP şi toate Criptează pachetul IP original; autentificare extensiile header-ului IPv6 care autentifică pachetul IP original. urmează după header-ul ESP; autentifică unitatea de date IP.

Protocolul Authentication Header Header-ul AH asigură mecanismul pentru controlul integrităŃii şi autenticităŃii pachetului IP. Controlul integrităŃii elimină posibilitatea modificării pachetelor în tranzit, fără ca modificările să fie detectate. Controlul autenticităŃii permite unui calculator gazdă sau unui echipament de reŃea să autentifice utilizatorii şi aplicaŃiile şi să filtreze traficul corespunzător; previne de asemenea atacurile bazate pe adrese (address spoofing attack) şi atacurile prin repetarea pachetelor (replay attack). Authentication Header este format din următoarele câmpuri: Next Header: identifică tipul header-ului imediat următor AH. Payload length: lungimea lui AH, în cuvinte de 32 biŃi, minus 2. Reserved Security Parameters Index: identifică asocierea de securitate. Sequence Number: un număr utilizat pentru eliminarea duplicatelor. Authentication Data: conŃine ICV – Integrity Check Value sau MAC – Message Authentication Code pentru pachet.

Authentication Header pentru IPSec

Mecanismul anti-replay

7

La stabilirea unei noi asocieri de securitate SA, sursa iniŃializează un numărător de pachete cu valoarea zero; acesta va fi incrementat cu fiecare pachet emis şi valoarea lui va fi scrisă în câmpul Sequence Number din AH. La atingerea valorii 232– 1 sursa trebuie să termine SA curentă şi să negocieze o nouă SA, cu o nouă cheie.

Fereastra de recepŃie anti-replay Deoarece IP asigură un serviciu fără conexiune, IPSec recomandă ca destinatarul să implementeze o fereastra de recepŃie W cu valoarea implicită W=64. Limita superioară a ferestrei este reprezentată de N numărul de secvenŃă cel mai mare recepŃionat pentru un pachet valid, iar limita inferioară este N – W + 1. Numărul de secvenŃă al pachetelor recepŃionate este folosit astfel: 1. Dacă pachetul este nou şi numărul lui de secvenŃă este în cadrul ferestrei, se verifică ICV. Dacă pachetul este autentificat, poziŃia corespunzătoare din fereastră este marcată. Dacă pachetul este nou şi numărul de secvenŃă este mai mare decât limita superioară a ferestrei, se verifică ICV. Dacă pachetul este autentificat, se deplasează fereastra la noul număr se secvenŃă şi poziŃia corespunzătoare pachetului este marcată. Dacă pachetul are numărul de secvenŃă mai mic decât limita inferioară a ferestrei sau dacă autentificarea eşuează, pachetul este eliminat.

2.

3.

ICV- Integrity Check Value Câmpul Authentication Data din AH conŃine o valoare denumită ICV; este un cod de autentificare a mesajului -MAC- sau o versiune trunchiată a unui cod produs cu un algoritm MAC. Implementările IPSec trebuie să fie compatibile cu: HMAC-MD5-96 HMAC-SHA-1-96

Ambele tipuri de MAC folosesc algoritmul HMAC, primul cu codul hash MD5, al doilea cu codul hash SHA-1. În ambele cazuri valoarea HMAC rezultată din calcul este trunchiată prin utilizarea primilor 96 biŃi, lungimea câmpului Authentication Data din AH. MAC este calculat asupra următoarelor câmpuri: câmpurile din header-ul IP care nu se modifică în tranzit sau care au la destinaŃie valori cunoscute; câmpurile care se pot schimba în tranzit şi a căror valoare la

8

-

destinaŃie nu poate fi prevăzută sunt considerate de valoare zero pentru calcul, atât la sursă cât şi la destinaŃie. header-ul AH cu excepŃia câmpului Authentication Data care este considerat de valoare zero, atât la sursă cât şi la destinaŃie. unitatea de date a protocolului de nivel superior.

Adresele sursei şi destinaŃiei sunt protejate, astfel încât se previne un atac de tipul „address spoofing”

Formatele AH în mod transport şi în mod tunel Pentru protocolul AH în mod transport utilizând standardul IPv4, AH este inserat după header-ul IP original; autentificarea acoperă întregul pachet, cu excepŃia câmpurilor variabile din header-ul IP care sunt setate zero pentru calcularea MAC. În contextul IPv6, header-ul AH nu este examinat sau procesat de rutere intermediare, ca urmare AH este inserat după header-ul IP original şi extensiile lui; autentificarea acoperă întregul pachet, cu excepŃia câmpurilor variabile care sunt setate zero pentru calcularea MAC. Pentru protocolul AH în mod tunel, întregul pachet IP original este autentificat şi AH este inserat între noul header şi header-ul original. Header-ul intern va conŃine adresa destinaŃiei finale, iar header-ul extern poate conŃine adresa unui firewall sau a unui ruter securizat. Autentificarea acoperă întregul pachet original; noul header, cu extensiile lui în cazul IPv6, este autentificat pentru câmpurile fixe.

9

Protocolul ESP Encapsulating Security Payload asigură confidenŃialitatea conŃinutului mesajelor şi, parŃial, confidenŃialitatea traficului. OpŃional, poate asigura şi serviciile de autentificare ale protocolului AH. Formatul unui pachet ESP are următoarele câmpuri: Security Parameters Index: identifică asocierea de securitate. Sequence Number: număr utilizat pentru eliminarea duplicatelor. Payload Data: pachet al nivelului de transport (în mod transport) sau pachet IP (în mod tunel) care este protejat prin criptare. Padding Pad Length: indică numărul de octeŃi ai câmpului imediat precedent Next Header: identifică tipul de date conŃinute în câmpul Payload prin indicarea primului header din acest câmp, Authentication Data: conŃine ICV – Integrity Check Value calculată asupra pachetului ESP minus câmpul Authentication Data.

Formatul ESP pentru IPSec

Algoritmi de criptare şi autentificare Câmpurile: Payload Data, Padding, Pad Length şi Next Header sunt criptate de ESP. SpecificaŃiile curente pentru IPSec impun compatibilitatea cu algoritmul DES în modul înlănŃuit; documentele elaborate de IP Security Protocol Working Group al IETF stabilesc identificatori pentru următori algoritmi: Three-key triple DES RC5 IDEA şi three-key triple IDEA CAST.

10

La fel ca protocolul AH, protocolul ESP permite utilizarea unui MAC cu lungimea de 96 biŃi iar specificaŃiile curente impun compatibilitatea cu: HMAC-MD5-96 HMAC-SHA-1-96

Formatele ESP în mod transport şi în mod tunel Pentru protocolul ESP în mod transport utilizând standardul IPv4, header-ul ESP este inserat după header-ul IP original şi un trailer-ul ESP (câmpurile: Padding, Pad Length, Next Header) este plasat după pachetul IP ; dacă se optează pentru autentificare, câmpul ESP Authentication Data este adăugat după trailer-ul ESP. Întregul segment al nivelului de transport şi trailer-ul ESP sunt criptate. Autentificarea acoperă tot textul cifrat, plus header-ul ESP. Etapele de operare în mod transport sunt următoarele: La sursă blocul format din segmentul nivelului de transport plus trailer-ul ESP sunt criptate şi textul clar este înlocuit cu textul criptat pentru a forma pachetul IP de transmis; se adaugă şi informaŃia de autentificare, dacă s-a selectat această opŃiune. Pachetul este rutat către destinaŃie. Fiecare ruter intermediar examinează şi procesează header-ul IP şi extensiile sale necriptate, dar nu examinează textul criptat. Nodul de destinaŃie examinează şi procesează header-ul IP şi extensiile sale necriptate. Apoi, pe baza SPI – Indexul Parametrilor de Securitate din header-ul ESP, nodul de destinaŃie decriptează restul pachetului pentru a reconstitui ca text clar segmentul nivelului de transport. -

11

Utilizarea modului de transport asigură confidenŃialitate pentru orice aplicaŃie care utilizează acest mod, evitând necesitatea ca fiecare aplicaŃie să trateze această problemă în mod individual. Acest mod de operare este eficient, lungimea pachetului IP mărindu-se nesemnificativ; nu împiedică analiza traficului. Pentru protocolul ESP în mod tunel, header-ul ESP este adăugat la începutul pachetului original, apoi pachetul plus trailer-ul ESP sunt criptate şi încapsulate într-un nou pachet IP, noul header va permite rutarea, dar va limita posibilitatea de analiză a traficului. Modul tunel este util pentru configuraŃii care includ firewall-uri sau alte tipuri de porŃi securizate care protejează reŃele locale. Problemele de securitate sunt preluate de firewall, eliminându-se necesitatea implementării facilităŃilor de securitate în fiecare staŃie de lucru a reŃelei locale. Etapele de operare în mod tunel, în cazul în care o staŃie de lucru exterioară unei reŃele locale protejate cu firewall comunică cu o staŃie din reŃea, în staŃia exterioară şi în firewall fiind implementat protocolul ESP, sunt următoarele: StaŃia de lucru exterioară reŃelei locale pregăteşte un pachet IP având ca adresă finală staŃia din reŃeaua locală. Acest pachet este procesat pentru a se obŃine formatul pentru ESP în mod tunel; adresa IP din noul header va fi adresa firewall-ului Pachetul este rutat către firewall-ul de destinaŃie. Fiecare ruter intermediar examinează şi procesează header-ul IP exterior şi extensiile sale necriptate, dar nu examinează pachetul textul criptat. Firewall-ul de destinaŃie examinează şi procesează header-ul IP exterior şi extensiile sale necriptate. Apoi, pe baza SPI – Indexul Parametrilor de Securitate din header-ul ESP, nodul de destinaŃie decriptează restul pachetului pentru a reconstitui ca text clar pachetul IP încapsulat. Pachetul IP reconstituit este rutat în reŃeaua locală către staŃia de destinaŃie.

12

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.