Hálózati mélymerülés - MTU vs. IPsec

0 0
2020.08.27. 15:33

Hálózati mélymerülés című sorozatunk legfrissebb epizódjához érkeztünk. A legutóbbi részben kielemeztük, hogy milyen összefüggés van a VPN tunnelek és az Maximum Transmission Unit (MTU) értékek között. A mai videóban megtudhatjátok, hogy az IPsec titkosítási metódusa milyen hatással van az MTU-ra.

 

Az IPsec-ről nagyvonalakban elmondhatjuk, hogy napjaink internetes adatátvitelének egyik legelterjedtebb titkosítási protokollja mely a 90-es évek óta létezik. Az IPsec titkosítási csomagba több protokollszámú megoldás is megtalálható. Ezek közül az első az 51-es protokollszámot viselő Authentication Header azaz AH, amely integritás ellenőrzést biztosít. Segítségével az A pontból B pontba küldött csomagok esetében mindig tudni fogjuk, hogy az eredeti csomag honnan érkezett, valamint azt is, hogy a csomag tartalma nem változott meg. Fontos, hogy ez önmagába nem tartalmaz titkosítást csupán arról bizonyoshatunk meg, hogy nem történt semmilyen változás a küldés során az adott csomagban. Az 50-es protokollszámon jegyzett Encapsulating Security Payload esetén már két funkció közreműködésével valósul meg a tényleges titkosítás. Garantálja többek közt azt, hogy a küldött adatok harmadik fél számára olvasatlanok maradnak, valamint emellett az integritást is biztosítja számunkra. A titkosítás folyamata maga rendkívül egyszerű hiszen egy kulcs segítségével tesszük harmadik fél által értelmezhetetlenné az adott adatfolyamot, amelyet a másik oldalon e kulcsnak szintén birtokában lévő eszköz sikeresen dekódol és visszaalakítja értelmezhető értékekre. Az integritás ellenőrzésre azért van mindenképpen szükség mivel a kulcsok birtokában akkor is visszaalakítható az adott csomag, ha annak a tartalma módosult viszont ez esetben már egy teljesen más információ érkezik meg a másik pontra, mint amit elindítottunk. Ezzel az ellenőrzéssel ezt a hibalehetőséget és sebezhetőséget igyekszünk nullára csökkenteni. ESP-nél ugyan kikapcsolható az integritás ellenőrzése, de az ezzel megspórolt néhány bit nem éri meg a kockázatot.

Az IPsec adatok fragmentálására lehetőségünk van, de amennyiben nem feltétele annak, hogy a kommunikáció megvalósítható legyen úgy jobb, ha kerüljük hiszen biztosági kockázatot rejt magában. Ennek oka, hogy a fragmentálás során az átfedő fragmentek közé beékelhetőek más csomagok is melyek kárt tehetnek a hálózatban. E helyett a variáció helyett inkább úgy kell optimalizálnunk a forgalmunkat, hogy az IPsec ESP eljárás által rákerülő különféle overheadek és trailerek gond nélkül beleférjenek az MTU értékbe.

Zárójelben meg kell jegyeznünk, hogy a fent említett fragmentálás IPv6 esetén nem is megvalósítható!

Az IPsec transport és tunnel módja közti legszignifikánsabb különbség, hogy a transport mód azért felel, hogy a kommunikációban résztvevő két állomás között a forgalom titkosítva legyen. Semmilyen változtatás nem történik a hálózati réteg részein. Mivel plusz IP információ nem kerül bele ezért kevesebb overhead-et tartalmaz így hatékonyabban tudjuk a rendelkezésünkre álló adatmennyiséget használni. Hátránya pedig, hogy lehetetlen általa olyan forgalmat átküldeni a hálózaton, ami nem routeolható.

A tunnel módban a fentivel ellentétben már a fejléc is titkosításra kerül mivel az egész IP csomagot betesszük egy ESP payloadba és körbecsomagoljuk egy másik IP csomaggal. Ez természetesen plusz adatmennyiséggel jár mert legalább egy 20 bájtos IP fejléc kerül a meglévő adatmennyiség mellé.

A klasszikus értelemben vett NAT megoldás azonban itt nem használható stabilan. Szerencsére az IPsec tartalmaz egy beépített NAT Traversal kiegészítőt. Ezt úgy használhatjuk, hogy az egész ESP csomagot tovább csomagoljuk egy UDP-be, amely így a portjai révén NAT-olhatóvá válik.

Felmerülhet a kérdés, hogy ha UDP-t használhatunk akkor a biztonságos adatátvitelnek számító TCP protokoll miért nem alkalmas erre a célra? A válasz nem hisz hálózati forgalom titkosítása esetén nagy valószínűséggel „belül” is hasonló flow-kal találkozhatunk (UDP, TCP) ezáltal TCP over TCP vagy más néven Meltdown jöhet létre.

IPsec alkalmazásakor a fent már említett fragmentálási problémák miatt minden egyes bájtot számon kell tartanunk. Ebben egy rendkívül hasznos alkalmazás lehet a segítségünkre. Ez nem más, mint a Cisco által jegyzett IPsec overhead kalkulátor. A tool használata regisztrációhoz kötött azonban egy email címen és egy jelszón kívül mást nem szükséges megadnunk, hogy használhassuk ezt a rendkívül hasznos kiegészítőt.

Fontos megjegyeznünk, hogy az IPsec transport módját más mechanizmussal közösen használva akár Layer2-es forgalom is átvihető titkosított biztonságos módon.

Hozzászólás írása

Hozzászólások

Ez a blogbejegyzés csak belépve kommentelhető!

Még nincs egy hozzászólás sem.