Začnite záznamom, ktorý sa začína pred prvým paketom pokusu, inak budete čítať stred rozhovoru. Vyjednávanie, ktoré už beží, ukazuje šifrované výmeny a obnovy kľúčov a ani jedno nevyzerá ako začiatok. Začiatok je časť, ktorú možno dekódovať bez kľúčov, a preto tak dobre odpovedá na otázky dostupnosti. Štyri kontroly v poradí vás zavedú od čerstvého záznamu k obhájiteľnému tvrdeniu o tom, ktorá strana prestala hovoriť.

Najprv overte, že záznam začína na začiatku

Záznam spustený po nadviazaní tunela bude obsahovať zapuzdrený dátový tok a periodické keepalive a oboje je buď šifrované, alebo takmer prázdne. Reštartujte klienta a zaznamenajte samotný pokus, alebo počas záznamu zámerne vyvolajte nové spojenie. Ak nemôžete vytvoriť čerstvý pokus, napíšte to do poznámok, pretože žiadne dekódovanie nevráti začiatok, ktorý ste nikdy nezaznamenali.

Obmedzte záznam na dva koncové body a na UDP 500 a 4500, aby súbor zostal dosť malý na čítanie. Na vyťaženom hostiteľovi nefiltrovaný záznam zahrabáva vyjednávanie pod nesúvisiacu prevádzku.

tcpdump -i any -n -s 0 -w fresh-ike.pcap 'udp port 500 or udp port 4500'

Súbor si nechajte, keď je pokus zaujímavý, pretože ten istý záznam odpovedá na obe nasledujúce otázky: čo bola výmena a či sa niečo vrátilo. Označte ho časom začiatku a dvojicou koncových bodov, na ktorú ste filtrovali. Záznam bez týchto dvoch faktov je o týždeň zbytočný, keď sa adresy zmenili a nikto si nepamätá, ktorý pokus zachytil.

Po druhé, čítajte hlavičku skôr ako užitočné zaťaženie

Hlavička IKE nesie indexy bezpečnostných parametrov, typ výmeny a ID správy a pri novom vyjednávaní sú tieto hodnoty charakteristické. Iniciátor vymýšľa nenulové SPI, počiatočná požiadavka nesie nulové SPI odpovedajúcej strany, pretože odpoveď ešte nebola videná, typ výmeny je IKE_SA_INIT a ID správy je nula. Všetko ostatné patrí neskoršej fáze toho istého vyjednávania alebo úplne inému pokusu.

Návrh, výmena kľúčov a nonce v tejto prvej výmene sú čitateľné v otvorenej podobe. Čitateľnosť nie je overenie a v tomto bode žiadna strana nepreukázala svoju totožnosť.

Súkromná hodnota Diffie-Hellman nikdy neprekročí drôt, takže zo záznamu nemožno odvodiť relácie kľúčov. Overenie prebieha v nasledujúcej výmene, chránené tým, na čom sa prvá výmena dohodla. Keď sa niekto opýta, či je protistrana pravá, táto výmena na to nedokáže odpovedať. Môže len ukázať, že sa obe strany zhodli na návrhu a vytvorili spoločné tajomstvo, ktoré súbor neobsahuje.

Po tretie, spárujte požiadavku s jej odpoveďou

Párujte podľa dvojice SPI, typu výmeny a ID správy, potom skontrolujte príznak odpovede. Opakované odoslanie opakuje ID správy originálu a nie je druhým pokusom o prihlásenie. Počítanie paketov namiesto výmen je spôsob, akým sa zdravé vyjednávanie zmení na fantómovú slučku.

Odpoveď môže byť aj odmietnutie: požiadavka na cookie, oznámenie o neprijateľnej skupine alebo chyba týkajúca sa návrhu. To sú legitímne odpovede a znamenajú, že cesta funguje, zatiaľ čo politika nie. Dekódujte oznámenie, namiesto toho aby ste každú odpoveď považovali za úspech. Keď oznámenie pomenuje skupinu alebo návrh, oprava je na strane konfigurácie a nie na firewalle.

Smer je tiež dôležitý. Požiadavka bez odpovede a odpoveď, ktorá sa nikdy nedostane ku klientovi, sú rôzne poruchy a len druhá vyzerá ako časový limit na strane klienta.

Po štvrté, oddeľte IKE od všetkého ostatného na 4500

Port 4500 nesie tri veci, ktoré v súhrnnom pohľade vyzerajú rovnako: IKE za štvorbajtovým nulovým non-ESP markerom, zapuzdrené ESP, ktorého pozícia markeru drží nenulové SPI, a krátke keepalive. Práve marker oddeľuje IKE od zapuzdreného ESP, takže tie bajty prečítajte, skôr než prevádzku nazvete IKE. Štítok záznamu, ktorý číta 4500, je číslo portu, nie protokol.

Zapuzdrené ESP je šifrované užitočné zaťaženie, ktoré bez kľúčov nevyložíte, a jeho prítomnosť môže byť známkou fungujúceho tunela, nie poruchy.

Sledujte oba porty pre ten istý pokus, pretože IKE sa po detekcii NAT môže presunúť na 4500, aj keď sa otvoril na 500. Stopa filtrovaná len na 500 vyzerá ticho práve vtedy, keď vyjednávanie uspelo a presunulo sa. Rozšírte filter a znovu prečítajte to isté časové okno, skôr než z neprítomnosti vyvodíte akýkoľvek záver.

Čo znamená ticho v jednom pozorovacom bode

Žiadna odpoveď u klienta dokazuje len to, čo tento bod pozoroval. Filtrovanie, smerovanie, nesprávna vzdialená adresa, nebežiaca služba a nezhoda protokolu dávajú rovnakú prázdnu stopu.

Príslušná ICMP unreachable pridáva dôkaz, ale prečítajte citovaný paket vnútri nej a poznamenajte adresu zariadenia, ktoré ju odoslalo.

Odmietnutie routerom je iná udalosť než overená chyba vrátená protistranou a len druhá dokazuje, že služba žije. Spárujte ten istý pokus so serverovými záznamami alebo schváleným pozorovaním, aby ste zistili, či požiadavka dorazila a či odpoveď odišla. Držte záznamy obmedzené a súkromné, pretože čitateľné polia handshake nerobia zvyšok súboru neškodným. Výsledok, ktorý stojí za to, je jedna spárovaná dvojica požiadavky a odpovede alebo jedna zdokumentovaná medzera s pomenovaným pozorovacím bodom.

Súvisiace články