Если вы являетесь сетевым администратором, который участвует в тестировании системы обнаружения вторжений или политики контроля доступа к сети, вы часто можете полагаться на автономный анализ с использованием собранных дампов пакетов.
Когда дело доходит до хранения дампов пакетов, формат дампов пакетов libpcap (формат pcap) является наиболее широко используемым во многих программах с открытым исходным кодом для отслеживания и захвата пакетов.
Если файлы pcap используются как часть тестирования на проникновение или какого-либо автономного анализа, часто необходимо манипулировать файлами pcap перед их внедрением в сеть.
В этом уроке я собираюсь представить полезные инструменты манипуляции с pcap и показать их варианты использования.
Editcap и Mergecap
Wireshark, самый популярный анализатор пакетов на основе графического интерфейса, на самом деле поставляется с набором очень полезных инструментов командной строки.
Среди них есть editcap и mergecap.
Первый – это универсальный редактор pcap, который может фильтровать или разбивать файл pcap различными способами.
Последний позволяет объединить несколько файлов pcap в один.
Этот учебник основан на этих инструментах CLI Wireshark.
Если у вас уже установлен Wireshark, эти инструменты уже доступны.
Если нет, то установите инструменты командной строки Wireshark на Linux.
Обратите внимание, что в дистрибутивах на основе Debian вы можете устанавливать инструменты командной строки Wireshark без установки графического интерфейса Wireshark, а в дистрибутивах на основе Red Hat вам необходимо установить весь пакет Wireshark.
Debian, Ubunu или Linux Mint
$ sudo apt-get install wireshark-common
Fedora, CentOS или RHEL
$ sudo yum install wireshark
Фильтровать файл Pcap
editcap позволяет вам фильтровать входной файл pcap различными способами и сохранять результат в новом файле pcap.
Прежде всего, вы можете отфильтровать входной файл pcap по времени начала и / или времени окончания.
Опции -A <start-time> и «-B <end-time> используются для захвата только тех пакетов, время прибытия которых попадает в определенный временной диапазон (например, между 14:30 и 14:35).
Используемый формат времени: «ГГГГ-ММ-ДД ЧЧ: ММ: СС».
$ editcap -A '2014-12-10 10:11:01' -B '2014-12-10 10:21:01' input.pcap output.pcap
$ editcap input.pcap output.pcap 401-500
$ editcap -D 10 input.pcap output.pcap
37568 packets seen, 1 packets skipped with duplicate window of 10 packets.
$ editcap -w 0.5 input.pcap output.pcap
50000 packets seen, 0 packets skipped with duplicate time window equal to or less than 0.500000000 seconds.
Разделить файл Pcap
editcap также может быть полезен, если вы хотите разбить большой файл pcap на несколько меньших файлов pcap.
Чтобы разделить файл pcap на несколько файлов с одинаковым количеством пакетов:
$ editcap -c <packets-per-file> <input-pcap-file> <output-prefix>
Каждый выходной файл pcap будет иметь одинаковое количество пакетов и иметь имя <output-prefix> -NNNN.
Чтобы разделить файл pcap на несколько файлов pcap с одинаковым интервалом времени:
$ editcap -i <seconds-per-file> <input-pcap-file> <output-prefix>
Объединить файлы Pcap
Если вы хотите объединить несколько файлов pcap в один, используйте mergecap.
При объединении файлов pcap mergecap по умолчанию полагается на информацию о временных отметках для каждого пакета в файлах pcap для сортировки пакетов в хронологическом порядке.
$ mergecap -w output.pcap input.pcap input2.pcap [input3.pcap . . .]
Например, следующая команда запишет все пакеты из input.pcap в output.pcap, а затем все пакеты в input2.pcap.
$ mergecap -a -w output.pcap input.pcap input2.pcap
Заключение
В этом руководстве я представил несколько примеров использования манипуляций с файлами pcap с использованием editcap и mergecap.
Помимо них, существуют другие инструменты, связанные с pcap, например, reordercap для переупорядочения пакетов, text2pcap для преобразования текста в pcap), pcap-diff для файлов diff pcap и т. д.
Некоторые из этих инструментов pcap могут быть очень полезны вместе с пакетами инструменты внедрения для тестирования проникновения в сеть и различных целей устранения неполадок в сети, поэтому лучше знать, что они существуют!
Вы используете какой-либо инструмент pcap?
Если да, то каков ваш вариант использования?