Ekzekutoni tcpdump në ndërfaqen e jashtme të një porte IPsec Linux dhe shihni dy gjëra njëkohësisht: korniza ESP hyrëse dhe, menjëherë pas tyre, paketat e brendshme të dekriptuara. Në dalje shfaqet vetëm ESP. Përfundimi i natyrshëm është se përgjigjet nuk dërgohen ose se IPsec kripton një drejtim dhe harron tjetrin. Asnjëra nuk është e vërtetë.

Ajo që po shihni është një pikë kapjeje. Kernel-i i transformon paketat dalëse përpara se rruga e transmetimit të pajisjes t'i dorëzojë ato soketit të paketave, kështu që soketi nuk e sheh kurrë formën e brendshme në dalje. Në hyrje, paketa kapet fillimisht si ESP dhe kopja e dekapsuluar bëhet e dukshme kur ajo hyn përsëri në stivë. I njëjti trafik, dy dritare vëzhgimi të ndryshme.

Pika e kapjes vendos çfarë shihni

Në një ndërfaqe normale, një soket AF_PACKET qëndron pranë shtresës së pajisjes. Paketat që lënë hostin kalojnë fillimisht përmes përpunimit të daljes së IPsec, i cili e shndërron një segment TCP të brendshëm në një datagram ESP ose UDP-4500, dhe vetëm pas kësaj arrijnë në atë shtresë. Paketat që vijnë kopjohen në soket ndërsa dalin nga kablloja, ende të kriptuara, dhe rezultati i dekriptuar bëhet i dukshëm më vonë kur stiva e dorëzon lokalisht ose e përcjell më tej.

Ai rend e shpjegon plotësisht asimetrinë. Nuk është provë për drejtimin, politikën ose sjelljen e aplikacionit, dhe trajtimi i tij si i tillë i bën njerëzit të ndjekin një përgjigje që është dërguar saktë gjatë gjithë kohës. Ky është një nga enigmat e rralla të rrjetit ku instrumenti, jo rrjeti, krijon anomali.

Përputhni filtrin me shtresën që keni ndërmend

Një shprehje si tcp port 443 zgjedh një lidhje TCP të brendshme. Në dalje, ajo lidhje tashmë është bërë ESP në momentin që soketi pyetet, kështu që filtri nuk përputhet me asgjë. Nëse doni të numëroni trafikun e mbrojtur, filtroni sipas formës së jashtme: protokolli 50 për ESP të papërpunuar, ose porta UDP 4500 kur përdoret kalimi NAT. Të dy filtrat japin një numër paketash që mund të krahasohet midis dy palëve, që zakonisht është arsyeja e numërimit. Asnjëri nuk ju thotë nëse kërkesa e brendshme mori përgjigje.

Mos e trajtoni një numërim UDP 4500 si numërim paketash ESP. IKE përdor gjithashtu atë port për mesazhet e mirëmbajtjes NAT-T dhe për shkëmbimin e kapsuluar, kështu që numri përfshin trafik që nuk është të dhënat që donit të matnit. Shkëmbimi fillestar IKE në UDP 500 kërkon filtrin e vet nëse kjo është pyetja. Një numër që përzien trafikun e kontrollit me të dhënat e bën gjithashtu çdo vlerësim të gjerësisë së brezit të gabuar me një diferencë të panjohur. Numërimet e veçanta u përgjigjen pyetjeve të veçanta.

Shkruani filtrin pranë pyetjes së cilës i përgjigjet. «Sa ESP doli nga kutia» dhe «a doli kërkesa e uebit nga kutia» janë matje të ndryshme me filtra të ndryshëm, dhe një kapje nuk mund t'i zgjidhë të dyja. Pa atë shënim, dy persona do të krahasojnë numra që nuk numëronin kurrë të njëjtën gjë.

Vëzhgoni përpara transformimit, jo pas tij

Nëse ju duhet të shihni tekstin e hapur në dalje, zhvendoseni pikën e vëzhgimit më herët, përpara përpunimit të daljes së IPsec. NFLOG ju jep një grep të Netfilter ku një rregull mund të kopjojë paketa të zgjedhura në një soket në hapësirën e përdoruesit, të cilin tcpdump mund ta lexojë. Udhëzuesi i strongSwan për hedhjen e trafikut e dokumenton këtë qasje pikërisht për këtë arsye.

Përputhja e politikës e kufizon rregullin në trafikun që është gati të hyjë në një tunel. -m policy --pol ipsec --dir out është ai që e bën rregullin specifik në vend që të regjistrojë çdo paketë që dërgon kutia. Më pas lexoni grupin e regjistrit me një kapje të kufizuar: një numër i vogël pamjesh dhe një kufi madhësie e pengojnë diagnostikimin të bëhet arkiv trafiku. Një kapje e kufizuar është gjithashtu më e lehtë për t'i dhënë një recensuesi pa tërhequr ngarkesë të panevojshme. Vendosni numrin përpara se të filloni, jo pasi të shihni sa mbërriti.

iptables -I OUTPUT 1 -d 10.83.0.44/32 -p tcp --dport 8443 -m policy --pol ipsec --dir out -j NFLOG --nflog-group 5
tcpdump -ni nflog:5 -s 128 -c 20 'host 10.83.0.44 and tcp port 8443'

Zgjidhni grepin që i përshtatet rrjedhës. OUTPUT mbulon trafikun që gjeneron vetë porta; transiti nga një klient LAN kalon përmes zinxhirit FORWARD, dhe një rregull në OUTPUT nuk do ta shohë kurrë atë. Adresa dhe porta më sipër janë zëvendësues për një destinacion testimi të miratuar.

Çfarë provon vëzhgimi

NFLOG është një objektiv regjistrimi, jo një vendim pranimi. Një paketë që shfaqet atje tregon se arriti grepin dhe përputhej me rregullin. Nuk tregon se një filtër i mëvonshëm e lejoi atë, se pajisja e transmetoi atë ose se pala tjetër mori diçka.

Një regjistër bosh është po aq i paqartë. Kontrolloni numëruesin e paketave të rregullit, konfirmoni drejtimin, konfirmoni se rrjedha përputhej vërtet me një politikë IPsec dhe konfirmoni destinacionin. Vetëm një numërues përputhës në të dyja palët e shndërron një vëzhgim në përfundim. Më pas krahasoni numëruesit e shoqatës së sigurisë në të dyja palët për të njëjtin përpjekje të kontrolluar, sepse numëruesit SA janë regjistri autoritar i asaj që u mbrojt dhe u dërgua.

Një kurth tjetër: «tekst i hapur» në këtë kontekst do të thotë jashtë shtresës së kriptimit të IPsec. Një sesion i brendshëm HTTPS ka ende TLS-in e vet. Kapja e paketës së dekapsuluar nuk e dekripton TLS-in e aplikacionit, dhe shfaqja e HTTP të lexueshëm atje do të thotë që aplikacioni nuk përdorte fare HTTPS.

Pastroni dhe krahasoni të dyja skajet

Hiqni saktësisht atë rregull që futët, sipas pronarit të tij, sapo të përfundojë vëzhgimi. Lënia e një rregulli regjistrimi në vend kushton CPU në çdo paketë përputhëse dhe krijon në heshtje një problem të mbajtjes së të dhënave. Fshijeni duke përsëritur rregullin me -D në vend që të zbrazni një zinxhir që nuk është i juaji.

iptables -D OUTPUT -d 10.83.0.44/32 -p tcp --dport 8443 -m policy --pol ipsec --dir out -j NFLOG --nflog-group 5

Nëse vendosja përdor IPsec në hapësirën e përdoruesit, një ndërfaqe XFRM ose shkarkim harduerik, pikat e vëzhgimit zhvendosen dhe ky recetë mund të mos zbatohet fare. Me libipsec, vendi i dokumentuar për të vëzhguar trafikun e brendshëm është pajisja TUN. Së pari identifikoni rrugën, pastaj zgjidhni pikën që i përgjigjet pyetjes, dhe prisni që dy drejtimet të duken ndryshe vetëm kur po shikoni anën e gabuar të transformimit.

Artikuj të ngjashëm