Я пытаюсь собирать HTTP-запросы и ответы с удаленного хоста, используя Wireshark используя SSH-туннель. Так что я Хост Windows с участием Wireshark на нем, и Linux принимать с tcpdump на нем и веб-сервер, прослушивающий порт 5000.
Я выполняю tcpdump на хосте Linux и пытаюсь получить вывод на хосте Windows. Я хорошо вижу поток пакетов, но я вижу НЕТ HTTP!
Когда я пытаюсь отправить какой-либо запрос на веб-хост, я вижу несколько входящих и исходящих пакетов tcp, но не HTTP. Следует отметить, что я вижу HTTP-запросы и ответы, когда выполняю ту же команду tcpdump на хосте Linunx.
C:\Users\mne\Desktop\plink.exe -ssh -pw XZY root@somehost.com "tcpdump -i any 'port 5000'" -w - | "C:\Program Files\Wireshark\Wireshark.exe" -k -i -
Вот как выглядит результат:
Может ли кто-нибудь помочь мне получить данные HTTP в Wireshark, чтобы иметь возможность их анализировать?
Я экспортирую вывод dumptcp в файл (где я могу четко видеть тело и заголовок HTTP-запроса). Я пытался открыть этот файл в Wireshark, но Wireshark был НЕСПОСОБНЫЙ для отображения HTTP.
Wireshark не обрабатывает это соединение автоматически как HTTP, потому что оно было на TCP-порту 5000, который не является обычно используемым портом для HTTP-трафика.
Чтобы Wireshark все равно интерпретировал его как HTTP-трафик, щелкните правой кнопкой мыши один из пакетов ответа и выберите Расшифровать как ... а затем выберите HTTP из списка.