Жаңа IKE_SA_INIT алмасуын түсірілімнен қалай оқуға болады
Жаңа IKEv2 келіссөзін кілттер пайда болмай тұрып оқуға болады. Талпынысты жазып алыңыз, тақырыпшаны оқыңыз, жауапты сәйкестендіріңіз және 4500 портында IKE-ні ESP-ден ажыратыңыз.
Талпыныстың бірінші пакетінен бұрын басталатын түсірілімнен бастаңыз, әйтпесе әңгіменің ортасын оқисыз. Әлдеқашан жүріп жатқан келіссөз шифрланған алмасуларды және кілт жаңартуларын көрсетеді, олардың ешқайсысы ашылуға ұқсамайды. Ашылу — кілтсіз декодтауға болатын бөлік, сондықтан ол қолжетімділік сұрақтарына соншалықты жақсы жауап береді. Кезекпен жасалған төрт тексеру сізді жаңа түсірілімнен қай тарап сөйлеуді тоқтатқаны туралы қорғауға болатын тұжырымға апарады.
Біріншіден, түсірілімнің басынан басталатынын растаңыз
Туннель көтерілгеннен кейін басталған түсірілім қапталған деректер ағынын және мерзімді keepalive хабарламаларын қамтиды, екеуі де не шифрланған, не дерлік бос. Клиентті қайта іске қосып, талпыныстың өзін жазып алыңыз, немесе түсірілім жүріп жатқанда әдейі жаңа қосылым тудырыңыз. Жаңа талпыныс жасай алмасаңыз, оны жазбаларыңызға жазыңыз, өйткені ешқандай декодтау ешқашан жазбаған ашылуыңызды қайтара алмайды.
Түсірілімді екі соңғы нүктемен және UDP 500 мен 4500-мен шектеңіз, файл оқуға жарамды шағын болып қалсын. Жүктелген хостта сүзгісіз түсірілім келіссөзді байланыссыз трафиктің астына көмеді.
tcpdump -i any -n -s 0 -w fresh-ike.pcap 'udp port 500 or udp port 4500'Талпыныс қызықты болса, файлды сақтаңыз, өйткені сол түсірілім келесі екі сұраққа жауап береді: алмасу не болды және бірдеңе қайтты ма. Оны басталу уақытымен және сүзген соңғы нүктелер жұбымен таңбалаңыз. Осы екі дерек жоқ түсірілім бір аптадан кейін пайдасыз, мекенжайлар өзгеріп, қай талпыныс жазылғанын ешкім есіне алмағанда.
Екіншіден, пайдалы жүктемелерден бұрын тақырыпшаны оқыңыз
IKE тақырыпшасы қауіпсіздік параметрінің индекстерін, алмасу түрін және хабарлама ID-ін алып жүреді, жаңа келіссөзде бұл мәндер ерекше. Бастаушы нөлге тең емес SPI ойлап табады, бастапқы сұраныс жауап берушінің нөлдік SPI-ін алып жүреді, өйткені әлі жауап көрінбеді, алмасу түрі IKE_SA_INIT, ал хабарлама ID-і нөл. Қалғанының бәрі сол келіссөздің кейінгі кезеңіне немесе мүлде басқа талпынысқа жатады.
Осы бірінші алмасудағы ұсыныс, кілт алмасу және nonce жүктемелері ашық түрде оқылады. Оқылу авторизация емес, және бұл кезеңде ешбір тарап өз жеке басын дәлелдеген жоқ.
Жеке Diffie-Hellman мәні ешқашан сымнан өтпейді, сондықтан түсірілім сеанс кілттерін шығаруға мүмкіндік бермейді. Аутентификация келесі алмасуда болады, ол біріншісі келіскен нәрсемен қорғалған. Егер біреу тараптың шынайылығын сұраса, бұл алмасу ол сұраққа жауап бере алмайды. Ол тек екі жақ ұсынысқа келісіп, файлда жоқ ортақ құпия жасағанын көрсете алады.
Үшіншіден, сұранысты оның жауабымен сәйкестендіріңіз
SPI жұбы, алмасу түрі және хабарлама ID-і бойынша сәйкестендіріңіз, содан кейін жауап жалаушасын тексеріңіз. Қайта жіберу түпнұсқаның хабарлама ID-ін қайталайды және екінші кіру талпынысы емес. Алмасулардың орнына пакеттерді санау — сау келіссөздің елес циклге айналатын жолы.
Жауап бас тарту да болуы мүмкін: cookie сұранысы, қабылданбайтын топ туралы хабарлама немесе ұсыныс туралы қате. Бұлар заңды жауаптар және жол жұмыс істеп жатқанын, ал саясат жұмыс істемейтінін білдіреді. Әрбір жауапты сәттілік деп санаудың орнына хабарламаны декодтаңыз. Хабарлама топты немесе ұсынысты атағанда, түзету файрволда емес, конфигурация жағында.
Бағыт та маңызды. Жауапсыз сұраныс пен клиентке ешқашан жетпейтін жауап — әртүрлі ақаулар, және тек екіншісі клиент жағындағы уақыт бітуіне ұқсайды.
Төртіншіден, 4500-де IKE-ні қалған барлық нәрседен бөліңіз
4500 порты қорытынды көріністе бірдей көрінетін үш нәрсені алып жүреді: төрт байттық нөлдік non-ESP маркерінің артындағы IKE, маркер орнында нөлге тең емес SPI бар қапталған ESP және қысқа keepalive хабарламалары. IKE-ні қапталған ESP-ден ажырататын дәл осы маркер, сондықтан трафикті IKE деп атамас бұрын сол байттарды оқыңыз. 4500 деп оқылатын түсірілім таңбасы — порт нөмірі, протокол емес.
Қапталған ESP — кілтсіз түсіндіруге болмайтын шифрланған жүктеме, және оның болуы ақау емес, жұмыс істеп тұрған туннельдің белгісі болуы мүмкін.
Сол талпыныс үшін екі портты да қадағалаңыз, өйткені IKE 500-де ашылса да NAT анықталғаннан кейін 4500-ге көшуі мүмкін. Тек 500-ге сүзілген із келіссөз сәтті өтіп, орнын ауыстырған кезде ғана тыныш көрінеді. Сүзгіні кеңейтіп, болмауынан қандай да бір қорытынды жасамас бұрын сол уақыт терезесін қайта оқыңыз.
Бір бақылау нүктесіндегі тыныштық нені білдіреді
Клиентте жауаптың болмауы тек сол нүкте байқағанды дәлелдейді. Сүзу, маршруттау, қате қашықтағы мекенжай, тоқтаған қызмет және протокол сәйкессіздігі — барлығы бірдей бос із береді.
Тиісті ICMP unreachable дәлел қосады, бірақ оның ішіндегі дәйектелген пакетті оқып, оны жіберген құрылғының мекенжайын жазып алыңыз.
Маршрутизатордың бас тартуы — тарап қайтарған аутентификацияланған қатеден өзге оқиға, және қызметтің тірі екенін тек екіншісі дәлелдейді. Сол талпынысты сервер журналдарымен немесе мақұлданған бақылаумен байланыстырып, сұраныстың келгенін және жауаптың шыққанын біліңіз. Түсірілімдерді шектеулі және жеке ұстаңыз, өйткені оқылатын қол алысу өрістері файлдың қалғанын зиянсыз етпейді. Құнды нәтиже — бір сәйкестендірілген сұраныс пен жауап немесе аталған бақылау нүктесі бар бір құжатталған олқылық.