Как разбить файл pcap на набор меньших
У меня есть огромный файл pcap (сгенерированный tcpdump). Когда я пытаюсь открыть его в wireshark, программа просто перестает отвечать на запросы. Есть ли способ разделить файл на несколько меньших, чтобы открыть их один за другим? Трафик, захваченный в файле, генерируется двумя программами на двух серверах, поэтому я не могу разделить файл с помощью фильтров tcpdump 'host' или 'port'. Я также попробовал команду linux 'split':-), но безуспешно. Wireshark не распознает формат.
6 ответов
Вы можете использовать сам tcpdump с опциями -C, -r и -w
tcpdump -r old_file -w new_files -C 10
Опция "-C" указывает размер файла для разбивки. Например: в приведенном выше случае размер новых файлов составит 10 миллионов байт каждый.
Использовать editcap
Утилита, которая распространяется вместе с Wireshark.
Я знаю, что этот ответ немного запоздал, но он может послужить и другим людям. Я нашел отличный инструмент для разделения файлов pcap: PcapSplitter. Она является частью библиотеки PcapPlusPlus, что означает ее кроссплатформенность (Win32, Linux и Mac OS), и она может разбивать файлы pcap на основе различных критериев, таких как размер файла (что вам нужно), но также и соединение, клиент / сервер IP, порт сервера (аналогично протоколу), количество пакетов и т. Д. Я нашел это очень полезным. Ссылка выше для исходного кода, но если вы не хотите / не знаете, как скомпилировать, я создал скомпилированные двоичные файлы для нескольких платформ, с которыми я использовал этот инструмент. Я очень рекомендую этот инструмент
РЕДАКТИРОВАТЬ: очевидно, новая версия PcapPlusPlus была выпущена, и она содержит двоичные файлы PcapSplitter для довольно многих платформ (Windows, Ubuntu 12.04/14.04, Mac OSX Mavericks/Yosemite/El Captian). Я думаю, что лучше использовать эти двоичные файлы, чем ссылку, которую я ранее предоставил. Вы можете найти это здесь
Лучший и самый быстрый способ - использовать SplitCap, который может разбивать большие файлы дампа пакетов, например, на основе сеансов. Таким образом, вы получите каждый сеанс TCP в отдельном файле PCAP. SplitCap также может разделять пакеты в файлы pcap на основе IP-адресов.
Вы можете узнать больше о SplitCap в блоге Netresec: http://www.netresec.com/?page=Blog&month=2011-05&post=Split-or-filter-your-PCAP-files-with-SplitCap
Загрузите SplitCap отсюда: http://www.netresec.com/?page=SplitCap
Удачи!
Если вы не уверены, что на самом деле содержит ваш файл PCAP, вы можете визуализировать его с помощью Squey, изолировать представляющие интерес пакеты или сеансы, используя произвольные сложные критерии, а затем экспортировать его в файлы PCAP меньшего размера.
См. https://squey.org/domains/cybersecurity/filter_pcaps_using_complex_criteriums/ .
tcpdump -w trace.pcap -W 48 -G 300 -C 100 -i any port 41110
-G 300
он будет вращаться через 5 минут-W 48
количество файлов-C 100
размер файла 100 МБport
Вы можете указать порт на основе приложения