Wireshark имеет возможность дешифровать IKEv2, если вы выполняете настройки, выбираете ISAKMP, он предлагает таблицу дешифрования IKEv2, в которой требуются SPI инициатора и ответчика, ключи шифрования и аутентификации (SK_ei, SK_er, SK_ai, SK_ar), а также алгоритмы шифрования и аутентификации. . Доступны все отладочные журналы с использованием функции Strongswan Charon.
У меня есть рабочий IKEv2 SA, и я могу передавать трафик ESP.
Тем не менее, каждый раз, когда я пытаюсь расшифровать с помощью Wireshark, он дает некогерентные результаты расшифровки, например, длина поля 65000 в пакете, который имеет 166 байт, и сообщает о неверно сформированных пакетах.
Я также не могу расшифровать пакеты ESP. Поисковые запросы Google говорят, что это возможно, просто используя информацию из «ip xfrm state», но Wireshark либо ничего не расшифровывает, либо снова дает неверные результаты.
Ясно, что я что-то упускаю, кто-нибудь это делал?
Я использую Wireshark 1.8.3, StrongSwan 5.0.1 в Ubuntu 12.04.
Спасибо, RichK
У меня была точно такая же проблема, но, наконец, мне удалось ее решить. Мое основное предположение заключалось в том, что Wireshark может декодировать сообщения IKEv2 (см.: http://www.wireshark.org/lists/wireshark-bugs/200904/msg00114.html). Не уверен, поддерживаются ли все методы целостности и шифрования.
Моя установка была клиентом Windows 7 и сервером Strongswan. Если вы настроили Strongswan на самый надежный уровень журнала, все необходимые ключи будут содержаться в файле syslog. Выполните поиск по ключевым словам "Sk_ei", "Sk_er", Sk_ai "и" Sk_ar "(в файле есть несколько экземпляров, я взял последнее вхождение в файл журнала). Вы знаете, что нужно захватить трафик с помощью Wireshark, получить Файл журнала Strongswan того времени и введите правильные значения в таблицу decrpytion Wireshark IKEv2. Чрезвычайно важно, чтобы вы вводили значения правильной длины и правильного формата, например, исключите пробелы или двоеточие (:), если вы копируете значения из syslog или трассировку wirehark.
Вот руководство по значениям, которые будут использоваться в таблице дешифрования:
SPI инициаторов = файл cookie инициатора (обнаружен в сообщении WireShark - не закодирован) SPI респондента = cookie ответчика (обнаружен в сообщении WireShark - не закодирован)
алгоритм шифрования: можно найти в ответе Wireshark IKE SA Init, если вы не уверены, что я использовал AES-CBC-256, т.е. SK-ei и SK_er должны иметь 64 шестнадцатеричных цифры
алгоритм целостности: можно найти в ответе Wireshark IKE SA Init, если вы не уверены, что я использовал HMAC-SHA1-96, т.е. SK-ai и SK_ar должны иметь 40 шестнадцатеричных цифр
Значения Sk_ei, SK_er, SK_ar и SK_ai должны быть скопированы и вставлены без пробелов из файла журнала Strongswan в таблицу дешифрования. В моем примере 64-значный ключ (SK_ei, SK_er) был распределен по 2 строкам в файле журнала.
Если все сделано правильно, Wireshark должен отображать декодированные сообщения.
Надеюсь это поможет!
возможно, вы вводите неправильные ключи.
AFAIK, их 2:
Я всегда использовал ключи от ip xfrm state
ключи для расшифровки трафика ESP в Wireshark.