Восстановление поврежденного файла PCAP начинается с доказательств, а не слепого преобразования

Как инженеры протоколов должны обращаться с усеченными или поврежденными файлами PCAP перед редактированием, преобразованием или передачей их другому инструменту.

PCAP, ремонт, захват пакетов, устранение неполадок

Поврежденный файл PCAP может остановить расследование в самый неподходящий момент. Захват может быть единственным доказательством, полученным на объекте клиента, лабораторной репродукцией или производственным инцидентом. Когда инструмент отказывается его открыть, самый быстрый импульс — преобразовать его, обрезать или пропустить через другой парсер.

Это может сработать. Это также может разрушить улики, объясняющие, что пошло не так. Ремонт следует начинать с доказательств.

Определите границу отказа

Прежде чем менять файл, определите, где происходит сбой:

  • глобальный заголовок не может быть прочитан
  • тип ссылки неожиданный
  • заголовок пакета неполный
  • захваченная длина превышает оставшийся размер файла
  • исходная длина и захваченная длина несовместимы
  • Поля меток времени выглядят недействительными
  • пакетные данные обрезаются
  • конечные байты остаются после последнего допустимого пакета

Каждый сбой подразумевает различную стратегию ремонта. Плохой глобальный заголовок — это не то же самое, что усеченный последний пакет. Неправильный тип ссылки — это не то же самое, что путаница с разгрузкой контрольной суммы.

Сохраните исходный снимок

Никогда не перезаписывайте исходный снимок. Рабочий процесс восстановления должен создать новый файл и записать изменения. Если исходный файл является доказательством в обращении в службу поддержки, юридической проверке или обращении к поставщику, исходные байты имеют значение.

Дисциплинированный рабочий процесс позволяет:

  • исходный хеш файла
  • место сбоя парсера
  • количество действительных пакетов до сбоя
  • байты обрезаны или перезаписаны
  • затронуты индексы пакетов
  • хеш выходного файла
  • примечания, объясняющие, почему редактирование было безопасным

Это не бюрократия. Именно так инженеры не делают захват менее надежным.

Распространенные модели коррупции

Многие случаи повреждения PCAP просты:

  • процесс захвата был прерван во время записи
  • файл был скопирован до того, как автор закрыл его
  • место на диске закончилось
  • инструмент написал неверную длину пакета
  • неправильный тип файла был переименован в .pcap
  • ожидания канального уровня не соответствуют полезной нагрузке

Ремонт должен соответствовать шаблону. Если только последний пакет является неполным, обрезка последней частичной записи может восстановить полезный префикс. Если длины пакетов в файле неодинаковы, перед перезаписью может потребоваться более глубокая проверка.

Не рассматривайте восстановление как нормализацию

Ремонт означает сохранение как можно большего количества действительных доказательств. Нормализация означает перезапись данных в предпочтительную форму. Это разные работы.

Например, изменение временных меток, пересчет контрольных сумм или перезапись заголовков канального уровня могут быть полезны позже, но эти операции не следует смешивать с первым этапом восстановления. Сначала восстановите то, чему можно доверять. Затем решите, целесообразно ли контролируемое хирургическое вмешательство.

Где подходит операция PCAP

PCAP Surgery создан для тщательного сбора доказательств и контролируемых рабочих процессов перезаписи. Он не пытается стать широкомасштабным игроком или заменой любого инструмента анализа. Его роль — помочь инженерам проверять метаданные захвата, определять места сбоя файла и применять изменения только тогда, когда доказательства подтверждают операцию.

Для поврежденного файла ценный результат:

  • какая часть файла действительна
  • где синтаксический анализ не удался
  • какое ремонтное действие было применено
  • какие пакеты или байты были затронуты
  • может ли полученный файл быть открыт последующими инструментами

В этом разница между «Я запустил преобразователь» и «Я могу объяснить ремонт».