Zergatik erakusten duen tcpdump-ek IPsec testu soila norabide bakarrean
Asimetria hori harrapatze-puntu artefaktu bat da, ez erantzun-bide hautsia. Hona hemen Linux IPsec atebide baten barneko eta kanpoko trafikoa non bilatu.
Linux IPsec atebide baten kanpo-interfazean tcpdump exekutatzen duzu eta bi gauza ikusten dituzu batera: sartzen diren ESP markoak eta, haien ondoren berehala, deskribatutako barne-paketeak. Irteeran ESP baino ez da agertzen. Ondorio naturala da erantzunak ez direla bidaltzen edo IPsec-ek norabide bat zifratu eta bestea ahazten duela. Bat ere ez da egia.
Ikusita duzuna harrapatze-puntu bat da. Kernelak irteerako paketeak eraldatzen ditu gailuaren transmisio-bideak pakete-socketari eman aurretik, beraz socketak ez du inoiz irteten ari den barne-forma ikusten. Sarreran, paketea ESP gisa harrapatzen da lehenengo eta deskapsulatutako kopia gerora ikusgai bihurtzen da pila berriro sartzen denean. Trafiko bera, bi behatze-leiho ezberdin.
Harrapatze-puntuak erabakitzen du zer ikusten duzun
Interfaze normal batean, AF_PACKET socket bat gailu-geruzatik gertu dago. Ostalaria uzten duten paketeek lehenengo IPsec irteerako prozesamendutik pasatzen dira, eta horrek barneko TCP segmentu bat ESP edo UDP-4500 datagrama bihurtzen du, eta geroago iristen dira geruza horretara. Iristen diren paketeak socketara kopiatzen dira kabletik datozen heinean, oraindik zifratuta, eta deskribatutako emaitza gerora ikusgai bihurtzen da pilak tokian bertan entregatzen duenean edo birbidaltzen duenean.
Ordain horrek asimetria erabat azaltzen du. Ez da norabidearen, politikaren edo aplikazioaren portaeraren froga, eta hala tratatzeak denbora osoan zuzen bidali zen erantzun baten atzetik jartzen ditu pertsonak. Sare-asmakizun gutxietako bat da, non tresnak, eta ez sareak, sortzen duen anomalia.
Egin iragazkia adierazi nahi duzun geruzarekin bat
tcp port 443 bezalako adierazpen batek barneko TCP konexio bat hautatzen du. Irteeran, konexio hori dagoeneko ESP bihurtu da socketari galdetzerakoan, beraz iragazkiak ez du ezer bat egiten. Babestutako trafikoa kontatu nahi baduzu, iragazi kanpoko formaren arabera: 50 protokoloa ESP gordinarentzat, edo UDP 4500 ataka NAT zeharkatzea badago. Bi iragazkiek bi pareen artean aldera daitekeen pakete-kopuru bat ematen dute, eta hori izaten da kontatzeko arrazoia. Bietako batek ere ez du esaten barne-eskaerak erantzunik jaso ote zuen.
Ez ezazu UDP 4500 kopurua ESP pakete-kopuru gisa hartu. IKE-k ataka hori NAT-T bizirik mantentzeetarako eta truke kapsulaturako ere erabiltzen du, beraz zenbakiak neurtu nahi zenituen datuak ez diren trafikoa barne hartzen du. UDP 500eko hasierako IKE trukeak bere iragazkia behar du, hori bada galdera. Kontrol-trafikoa datuekin nahasten duen zenbaki batek banda-zabaleraren estimazio guztiak ere oker bihurtzen ditu, marjina ezezagun batean. Kontakizun bereiziek galdera bereiziak erantzuten dituzte.
Idatzi iragazkia erantzuten duen galderaren ondoan. «Zenbat ESP irten zen kaxatik» eta «web-eskaera kaxatik irten zen» neurketa ezberdinak dira iragazki ezberdinekin, eta harrapatze bakar batek ezin ditu biak erabaki. Ohar hori gabe, bi pertsonak inoiz gauza bera kontatu ez zuten zenbakiak alderatuko dituzte.
Behatu eraldaketaren aurretik, ez ondoren
Irteerako testu soila ikusi behar baduzu, mugitu behatze-puntua lehenago, IPsec irteerako prozesamendua baino lehen. NFLOG-ek Netfilter kako bat ematen dizu, non erregela batek hautatutako paketeak erabiltzaile-espazioko socket batera kopiatu ditzakeen, tcpdump-ek irakur dezakeena. strongSwan-en trafiko-bolkaratze gidak hurbilketa hau dokumentatzen du arrazoi berberagatik.
Politika-bat etortzeak erregela tunel batera sartzear dagoen trafikora mugatzen du. -m policy --pol ipsec --dir out da erregela zehatza egiten duena, kaxak bidaltzen duen pakete bakoitza erregistratu beharrean. Gero irakurri erregistro-taldea harrapatze mugatuarekin: snapshot kopuru txiki batek eta tamaina-muga batek diagnostikoa trafiko-artxibo bihurtzea eragozten dute. Harrapatze mugatua errazagoa da berrikusle bati emateko, karga elkarreragilerik gabe. Erabaki kopurua hasi aurretik, eta ez zenbat iritsi den ikusi ondoren.
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'Aukeratu korrontearen araberako kakoa. OUTPUT atebideak berak sortzen duen trafikoa estaltzen du; LAN bezero baten iragaitea FORWARD katean zehar pasatzen da, eta OUTPUTeko erregela batek ez du inoiz ikusiko. Goiko helbidea eta ataka probako helmuga onartu baterako leku-markak dira.
Zer frogatzen du behatzeak
NFLOG erregistratze-helmuga bat da, ez onarpen-erabaki bat. Han agertzen den pakete batek kakoa iritsi eta erregelarekin bat egin zuela erakusten du. Ez du erakusten geroagoko iragazki batek onartu zuenik, gailuak bidali zuenik edo pareak ezer jaso zuenik.
Erregistro huts bat bezain anbiguoa da. Egiaztatu erregelaren pakete-kontagailua, berretsi norabidea, berretsi korronteak IPsec politika batekin bat egin zuela, eta berretsi helmuga. Pare bietan bat datorren kontagailuak bakarrik bihurtzen du behatze bat ondorio. Gero alderatu segurtasun-elkartzearen kontagailuak pare bietan saiakera kontrolatu bererako, SA kontagailuak baitira babestu eta bidali zenaren erregistro autoritarioa.
Tranpa bat gehiago: «testu soil» honek IPsec zifratze-geruzatik kanpo esan nahi du. Barneko HTTPS saio batek bere TLS propioa dauka oraindik. Deskapsulatutako paketea harrapatzeak ez du aplikazioaren TLS deskribatzen, eta han HTTP irakurgarria ikusteak aplikazioak inoiz HTTPS erabili ez zuela esan nahi du.
Garbitu eta alderatu bi muturrak
Kendu txertatu zenuen erregela zehatza, bere jabearen arabera, behatzea amaitu bezain laster. Erregistratze-erregela bat bertan uzteak CPU kostua dakar bat datorren pakete bakoitzean eta isilka datuak atxikitzeko arazo bat sortzen du. Ezabatu erregela -D-ekin errepikatuz, ez duzun kate bat garbitu beharrean.
iptables -D OUTPUT -d 10.83.0.44/32 -p tcp --dport 8443 -m policy --pol ipsec --dir out -j NFLOG --nflog-group 5Inplementazioak erabiltzaile-espazioko IPsec, XFRM interfazea edo hardware bidezko deskarga erabiltzen badu, behatze-puntuak mugitzen dira eta errezeta hau agian ez da batere aplikagarria. libipsec-ekin, barne-trafikoa behatzeko dokumentatutako tokia TUN gailua da. Identifikatu bidea lehenengo, gero aukeratu galderari erantzuten dion puntua, eta espero itzazu bi norabideak ezberdin ikus daitezen eraldaketaren alde okerrean begiratzen duzunean soilik.