Transcript IPSec

IPSec
IPSec
• Internetprotokoll biztonsága
• Hálózati réteg internetprotokolljához kapcsolódik
(IPv4, IPv6)
• Tűzfal, router
• Célja:
– Hitelesség ( adateredet hitelesítése, adatintegritás
biztosítása )
– Titkosság
– Kulcsmenedzsment
Biztonsági protokollok I.
• Authentication Header (AH)
– Feladata a hitelesítés
• Encapsulation Security Payload (ESP)
– Feladata a hitelesítés és/vagy a titkosítás
Két eset: hitelesítéssel vagy hitelesítés nélkül
• Mind az AH, mind az ESP a hozzáférés
menedzsment eszköze, mely az alkalmazott
kulcscsere protokollokon alapszik
• Mind az AH, mind az ESP védettséget biztosít a
visszajátszásos támadással szemben
Biztonsági protokollok II.
• Security Associations (SA)
– biztosítja az AH és ESP működéséhez szükséges
paramétereket
– Internet Key Exchange (IKE), The Internet Security
Association and Key Management
Protocol (ISAKMP), Oakley protokoll
– egyirányú kapcsolat: küldő - > fogadó
– ha kétirányú kapcsolatra van igény, akkor két SA
szükséges
Működési módok
• Transport és Tunnel mód
• AH és ESP is támogatja mindkét módot
• Transport mód: end-to-end kommunikáció két
host között (pl. kliens-szerver, vagy két
munkaállomás)
• Tunnel mód: kommunikáció két network
között
Transport mód
Transport mód
• A kapcsolat résztvevői kizárólag a végpontok
• ESP esetén: Az IP payload kerül titkosításra és
talán hitelesítésre, az IP fejléc nem
• AH esetén: Az IP payload kerül hitelesítésre,
valamint az IP fejléc bizonyos részei
• Forgalomelemzés jellegű támadásokal
szemben érzékeny
• Néhány bájtot ad hozzá minden csomaghoz
Tunnel mód
Tunnel mód
• A két végpont egy IPSec átjáró (pl. tűzfal vagy
router)
• A tűzfal mögött levő munkaállomások nem
feltétlenül ismerik az IPSec
• A munkaállomások legenerálják a nyílt
csomagokat, majd az IPSec átjárók által
létrehozott tunnel-en keresztül biztonságosan
eljuttatják a fogadó félnek.
Tunnel mód
• Az egész IP csomag védelmét biztosítja
• AH vagy ESP mezők hozzáadódnak az IP
csomaghoz -> külső IP csomag IP payload
adatsora lesz, melyhez elkészül egy új, külső IP
fejléc
• A belső fejléc és payload rejtett a transzfer során
• A külső fejlécben teljesen más küldő és fogadó
cím szerepel
• Védett a forgalomelemzéssel szemben
Tunnel mód
• ESP esetén: titkosítja és talán hitelesíti az
egész IP csomagot, a fejlécet is beleértve
• AH esetén: hitelesíti az egész IP csomagot, és a
külső fejléc bizonyos részeit
Működési módok
Transport mód
Tunnel mód
AH
IP payload, IP fejléc és IPv6
Egész belső IP csomag, IP és
kiegészítő fejléc bizonyos részeinek IPv6 fejléc bizonyos részeinek
hitelesítése
hitelesítése
ESP
IP payload és az ESP fejlécet követő Egész belső csomag titkosításra
IPv6 kiegészítő fejléce kerül
kerül
titkosításra
ESP hitelesítéssel
IP payload és az ESP fejlécet követő Titkosítja és hitelesíti az egész
IPv6 kiegészítő fejléce kerül
belső IP csomagot
titkosításra , IP payload
hitelesítése, de az IP fejléc nincs
hitelesítve
Authentication Header
• Hitelesítés :
– Adatintegritás
– Felhasználó vagy alkalmazás hitelesítése
• Véd a megszemélyesítéses támadással
(spoofing attack) szemben
• Véd a visszajátszásos támadással (replay
attack) szemben
• A hitelesítés MAC-en alapul
Authentication Header
Authentication Header
Authentication Header
•
•
•
•
•
Next Header (8 bit): a következő fejléc típusa
Payload length (8 bit): AH hossza
Reserved (16 bit): későbbi felhasználásra
SPI (32 bit): SA azonosítója
Sequence Number (32 bit): monoton növekvő
sorozatszám (véd a visszajátszásos támadással
szemben)
• Authentication data (változó): csomaghoz tartozó
Integrity Check Value (ICV) vagy MAC
AH - Message Authentication Code
• HMAC (K,m) = H((K ⊕ opad) ∥ H((K ⊕ ipad)
∥ m))
• opad: outer padding (0x5c5c5c…5c5c
konstans)
• ipad: inner padding (0x363636…3636
konstans)
• Pl: HMAC-MD5-96, HMAC-SHA-1-96
• Az első 96 bitje szükséges a hash értékeknek
Encapsulation Security Payload
Encapsulation Security Payload
• Security Parameter Index (32 bit): SA azonosítója
• Sequence Number (32 bits): monoton növekvő
sorozatszám
• Payload Data (változó): titkosított adat
• Padding: kitöltés
• Pad length: a kitöltés hossza
• Next Header: a payload első fejléce
• Authentication Data (változó) : Integrity Check
Value az ESP csomagra vonatkozóan az
Authentication Data kivételével.
Encapsulation Security Payload –
Titkosítás, Hitelesítés
• Payload Data, Padding, Pad Length, Next Header mezők
kerülnek titkosításra
• Ha szükséges kezdeti vektor, akkor az vagy nyíltan a Payload
Data első néhány bitje, vagy része a titkosított üzenetnek.
• Titkosítási algoritmusok:
–
–
–
–
–
–
Three-key triple DES
RC5
IDEA
Three-key triple IDEA
CAST
Blowfish
• HMAC-MD5-96, HMAC-SHA-1-96
Kulcscsere protokollok
• Titkos kulcsok cseréje (4 kulcsra van szükség)
• Internet Key Exchange (IKE) két fő része:
– Oakley Key Determination Protocol
(Diffie-Hellman alapú)
– Internet Security Association and Key
Management Protocol (ISAKMP)
(keretrendszert biztosít, eljárások és csomagformátumok
definiálása)
Oakley protokoll
• Cookie-k használata (clogging attack ellen)
Clogging attack (Terheléses támadás): Támadó sok
kulcsot kér . Az áldozat a kulcsok legenerálásával
foglalkozik.
Véletlenek (cookie-k) kicserélése, mint első
üzenetek, a másik fél jóváhagyja. A kulcscsere elején
újra jóváhagyja. Így legfeljebb a cookie elfogadását
lehet kérni, nem a lassú Diffie-Hellman számítást.
Oakley protokoll
• Cookie-k generálása:
– A cookie függ a résztvevőktől.
– Cél: A támadó ne tudjon olyan cookie-t generálni,
melyet a másik elfogad. A küldő felhasznál egy
titkos értéket.
– Javasolt módszer: Küldő és fogadó fél IP címének,
UDP portok és lokális titkos értékek Hash értéke
• Nonce-k használata (replay attack ellen)
– Megjelennek a válaszüzenetekben titkosítva
Oakley protokoll
• Hitelesítés (Man-in-the middle ellen)
– Digitális aláírások: Nonce-k és azonosítók hash
értékének aláírása
– Szimmetrikus titkosítás: előre kicserélt titkos
kulccsal titkosítja a kicserélt paramétereket
Oakley protokoll példa