Koliko kontrolnih vsot ima paket VPN? Odvisno
Število je odvisno od različic IP, prenašanega protokola in oblike zaščite. Kontrolne vsote glave, zgornjega sloja in oznake celovitosti se razlikujejo.
Trditev, da paket VPN nosi natanko dve kontrolni vsoti, zveni urejeno in je dovolj pogosto napačna, da si zasluži razčlenitev. Število je odvisno od tega, katere različice IP se pojavijo, kateri transportni protokol se prenaša in katero obliko zaščite uporablja tunel. Kontrolna vsota glave, kontrolna vsota zgornjega sloja in kriptografska oznaka celovitosti so trije mehanizmi s tremi obsegi. Njihovo štetje se začne z označitvijo, kaj vsak od njih pokriva.
Preverite, katere različice IP so v resnici na žici
Glave IPv4 nosijo 16-bitno kontrolno vsoto glave, glave IPv6 pa ne nosijo ničesar takega. To eno dejstvo spremeni število za vsak tunel, ker pakiranje IPv4 v IPv6 in IPv6 v IPv4 ustvari različne dokumente. Tunel lahko nosi obe družini hkrati, takrat pa lahko ena smer vsebuje polje, ki ga druga nima. Ugotovite različice, preden kar koli preštejete.
Zapišite postavitev kot seznam glav, ne kot sliko. Vrstni red je pri branju zajema pomemben in prisotnost ali odsotnost polja kontrolne vsote je prva stvar, ki jo je treba označiti.
outer IPv6 | ESP | inner IPv6 | UDP | application data
outer IPv4 | ESP | inner IPv4 | TCP | application data
Prva vrstica nima nikjer v svojih glavah IP kontrolne vsote glave IP, druga pa ima dve, ko sta obe glavi IPv4. Ista tehnologija tunela, drugačno število in nobena vrstica ni popolna oblika žice.
Preverite, kaj pokriva vsaka kontrolna vsota
Pokritost je del, ki ga ljudje preskočijo, in prav ona daje številu smisel. Kontrolna vsota glave IPv4 ščiti glavo in nič drugega, zato ne pove ničesar o tovoru za njo. Kontrolna vsota UDP prek IPv6 pokriva psevdoglavo ter glavo in tovor UDP, kar pomeni, da seže v prenašani paket, ko je datagram tuneliran. TCP ima svojo kontrolno vsoto s podobno odvisnostjo od psevdoglave. To so trije različni obsegi, čeprav se vse tri imenujejo kontrolne vsote.
RFC 791 določa preverjanje glave IPv4 in njeno ponovno izračunavanje na vsakem skoku, RFC 8200 pa določa obravnavo zgornjega sloja prek IPv6, vključno s psevdoglavo. Noben dokument ne pravi, da ima paket VPN fiksno število kontrolnih vsot, ker noben ne opisuje tunela.
tshark -r capture.pcap -Y "ip.proto == 50" -V | grep -i checksum
Zaščito celovitosti preverite ločeno
Celovitost ESP je kriptografska zaščita z lastno pokritostjo in predstavitvijo, odvisno od algoritma. Ni kontrolna vsota IP ali UDP pod drugim imenom in njena dolžina se spreminja z izbrano zgradbo. Preverjanje celovitosti pokriva določen del paketa, ki lahko glede na način vključuje glavo ESP in del tovora. Šteti jo kot polje kontrolne vsote znane širine je mesto, kjer se večina teh razlag sesuje.
Preberite izbrano zgradbo, preden preštejete bajte, in rezultat opišite kot zaščito celovitosti, ne kot kontrolno vsoto z drugo oznako. Dekoder vam bo polje poimenoval, če ga vprašate.
tshark -r capture.pcap -Y esp -V | grep -iE "integrity|icv"
Pred štetjem preverite točko opazovanja
Zajem na notranjem vmesniku in zajem na žici lahko pokažeta povsem različne plasti. Na notranjem vmesniku je tunel že odstranjen, zato vidite prenašani paket in nobene od zunanjih glav. Na žici vidite zunanje glave in šifriran tovor, ki ga ne morete prebrati. Noben pogled ni napačen in to nista pogleda na isti objekt. Navedite, kje je bil zajem narejen, preden navedete kakršno koli število.
sudo tcpdump -ni eth0 -vv -c 5 esp
sudo tcpdump -ni tun0 -vv -c 5
Prvi ukaz prikaže zunanji paket z njegovim priklopom celovitosti, drugi pa prikaže prenašani paket z lastno transportno kontrolno vsoto. Seštevanje števil iz obeh zajemov ničesar ne šteje dvakrat, a isti paket razloži dvakrat.
Primerjajte število z resničnim zajemom
Dekodirajte en paket v celoti in označite vsako polje, ki ga dekoder imenuje kontrolna vsota ali vrednost celovitosti. Nato primerjajte vsako oznako s postavitvijo, ki ste jo zapisali, in izbrišite tiste, ki pripadajo plasti, ki je v resnici ne štejete. Število, ki to vajo preživi, je zagovorljivo, število, citirano po spominu, pa ne.
Ponovite za smer odgovora, ker se tunel, ki nosi obe družini, lahko razlikuje po smeri in po toku. Nato navedite število skupaj z njegovim obsegom, na primer tri kontrolne vsote za ta notranji paket na tej točki opazovanja, in ne kot lastnost paketov VPN nasploh.
tshark -r capture.pcap -T fields -e ip.checksum -e udp.checksum -e tcp.checksum