Извлечение GET URI или их ответов из захвата Wireshark в отдельный файл (ы)

Issue

Я использую Wireshark для захвата видеопотока HTTP и использую следующий фильтр для фильтрации соответствующих запросов GET.

http.request.uri contains "identifier" && http.request.method == "GET" && ip.addr == xxx.xxx.xxx.xxx
Questions

Is it possible to extract all get GET URLs to separate a .txt file?

Or is possible to extract the raw response packets (without the header) which match the filter above to separate files so that I have a bunch of individual video files eventually?

Надеюсь, я прояснил себя достаточно ;-)

Спасибо

Ответы на вопрос(2)

Решение вопроса 1: -

Используйте утилиту tshark. Простота установки, просто & quot;sudo apt-get install tshark& Quot;

Команда, которую я использую для того же:

tshark  -R 'tcp.port==80 && (http.request.method == "GET" || http.request.method=="HEAD" || http.request.method=="POST" )'  -r eth2uplink_00001    -Tfields -e ip.dst -e http.request.method -e http.request.full_uri > requests_eth2_00001

См. Все фильтры отображения Wireshark здесь: - https://www.wireshark.org/docs/dfref/

Это намного лучший подход, чем использование Bro, потому что Bro очень сложно установить, так как он имеет определенные зависимости и их вряд ли можно встретить.

В настоящее время у меня нет решения для вопроса 2, но я полагаю, что оно может быть построено по аналогичной схеме. Следующие параметры могут быть полезны для того, что вы пытаетесь.

-O Only show packet details of these protocols, comma separated

-x add output of hex and ASCII dump (Packet Bytes) Вы можете обратиться к tshark --help для получения дополнительной информации.

Надеюсь это поможет. Благодарю.

Хотя это может быть выполнимо с Wireshark, это на несколько порядков проще сBro.

Extracting URIs

Просто запустите его с вашим файлом трассировки:

bro -r <trace>

Этот вызов генерирует кучу файлов журнала в текущем каталоге. Тот, который вас интересует,http.log, Вы можете отфильтровать вывод, чтобы получить только запросы GET:

bro-cut id.orig_h id.resp_h method host uri < http.log | awk '$3 == "GET"'

Пример вывода:

192.168.1.104   212.96.161.238  GET update.avg.com  /softw/90/update/avg9infowin.ctf
192.168.1.104   77.67.44.206    GET backup.avg.cz   /softw/90/update/u7avi1777u1705ff.bin
192.168.1.104   198.189.255.75  GET aa.avg.com  /softw/90/update/u7iavi2511u2510ff.bin
192.168.1.104   77.67.44.206    GET backup.avg.cz   /softw/90/update/x8xplsb2_118c8.bin

Как видите, последние два столбца составляют полный URL. Чтобы удалить пробел между ними, вы можете использовать awk для объединения двух последних полей.

Extracting Files

Примечание: в следующем выпуске Bro 2.1 будут значительно улучшены возможности извлечения файлов. До этого вы можете извлечь все файлы из потока HTTP, указав тип MIME для файлов, которые нужно сохранить:

bro -r <trace> 'HTTP::extract_file_type = /video\/avi/'

Бро нюхает MIME-тип HTTP-тела и, если оно соответствует регулярному выражению/video\/avi/создает файл с префиксомhttp-item, Вы можете изменить имя префикса, переопределивHTTP::extraction_prefix переменная.

 29 нояб. 2015 г., 12:50
Ах, вы имеете в виду, что файл трассировки - это просто файл pcap? Это сбивает с толку, если вы этого не знаете. ;-)
 30 нояб. 2015 г., 18:06
Ты понял. Сообщество часто использует слова взаимозаменяемо, причем де-факто PCAP является стандартом для трассировки сетевого трафика.
 27 нояб. 2015 г., 21:57
Wireshark также использует libpcap для получения пакетов либо из трассировки, либо из живого интерфейса. Для воспроизводимости обычно создается файл трассировки, а не сниффинг от интерфейса. Это не зависит от Bro / Wireshark. В системах UNIX просто используйтеtcpdump, В Windows вы также можете использовать Wireshark для сохранения пакетов из интерфейса в файл, тогда у вас есть трассировка. Кстати, Bro также может читать трафик с живого интерфейса при его прохождении.bro -i <iface>.
 26 нояб. 2015 г., 15:00
Я новичок в брате. Как мне создать файл трассировки? Быстрый просмотр документации не дает мне ответа. Вопрос в области захвата Wireshark (PCAP), поэтому было бы полезно указать, как создать файл трассировки bro из PCAP.

Ваш ответ на вопрос