Разделите большой PCAP и извлеките один разговор без потери контекста устранения неполадок
Как разделить большие файлы PCAP, извлечь один диалог TCP или UDP и сохранить достаточный контекст для устранения неполадок протокола.
Большие файлы PCAP трудно открыть, ими сложно поделиться и просмотреть. Захват с загруженного сервера, шлюза камеры, лаборатории USB-over-IP или производственного инцидента может быстро вырасти до гигабайт. Очевидное решение — разделить файл или извлечь один разговор. Риск состоит в том, чтобы отрезать контекст, объясняющий неудачу.
Правильный вопрос заключается не только в том, «как мне уменьшить размер PCAP?» Вопрос в том, «какой контекст должен сохраниться, чтобы меньший захват по-прежнему был полезен?»
Почему большие захваты становятся трудными в использовании
Большие захваты создают практические проблемы:
- нехватка памяти анализатора пакетов
- медленная индексация
- сложная загрузка на порталы поддержки
- конфиденциальный несвязанный трафик
- слишком много разговоров
- длительные промежутки времени
- дублированный шум вокруг реального происшествия
Разделение по размеру может сделать файлы управляемыми. Извлечение разговора может сделать улики более целенаправленными. Но обе операции могут скрыть важные настройки, DNS, ARP, TLS или контекст повторной передачи.
Для извлечения диалога требуется более пяти кортежей
Диалог TCP или UDP часто идентифицируется по IP-адресу источника, IP-адресу назначения, портам и протоколу. Это хорошее начало. Но для устранения неполадок также может потребоваться:
- Поиск DNS перед подключением
- ARP или обнаружение соседей
- TCP-квитирование
- TLS-рукопожатие
- ICMP-ошибки
- повторные передачи до видимого сбоя
- соответствующий канал управления
- ответ сервера после повторной попытки клиента
Если вы извлекаете только пакеты после ошибки приложения, получатель может упустить настоящую причину.
Разделение по размеру и разделение по времени
Разделение по размеру файла полезно для обеспечения совместимости инструментов и ограничений на загрузку. Разделение по времени полезно для окон инцидентов. Разделение по диалогам полезно для целенаправленной отладки. У каждого есть компромиссы.
Просить:
- имеет ли принимающий инструмент ограничение на размер файла?
- имеет ли значение окно времени инцидента?
- представляет ли один поток весь случай?
- требуются ли несколько связанных потоков?
- метки времени должны оставаться оригинальными?
- следует ли сохранять или переназначать номера пакетов?
Выходные данные должны документировать, какая стратегия разделения была использована.
Сохраните исходные данные пакета
При создании файла меньшего размера сохраняйте исходный снимок нетронутым. Производный захват должен быть воспроизводимым. Если позже служба поддержки запросит пакеты до извлеченного окна, оригинал все равно должен существовать.
Полезные метаданные:
- исходное имя файла и хэш
- сплит-фильтр или экстракционный фильтр
- временное окно
- количество пакетов до и после
- разговоры включены
- пакеты отбрасываются намеренно
- хеш выходного файла
Это превращает операцию «Я вырезал файл» в оправданную операцию.
Где подходит операция PCAP
PCAP Surgery предназначен для анализа доказательств и контролируемого редактирования. Частью этого является обработка большого количества данных: сначала проверьте, затем выберите минимальный результат, затем задокументируйте операцию.
Для больших рабочих процессов PCAP PCAP Surgery должна помочь ответить:
- какие разговоры существуют?
- какой поток содержит сбой?
- сколько контекста окружает это?
- что извлекли?
- что было намеренно исключено?
- можно ли восстановить полученный захват?
Если ваш поисковый запрос — «разделить большой pcap» или «извлечь TCP-разговор из pcap», не оптимизируйте только размер файла. Оптимизируйте захват меньшего размера, который все равно объясняет неудачу.