Reparar um arquivo PCAP corrompido começa com evidências, não com conversão cega
Como os engenheiros de protocolo devem abordar arquivos PCAP truncados ou corrompidos antes de editá-los, convertê-los ou entregá-los a outra ferramenta.
Um arquivo PCAP corrompido pode interromper uma investigação no pior momento possível. A captura pode ser a única evidência de um local de cliente, de uma reprodução de laboratório ou de um incidente de produção. Quando uma ferramenta se recusa a abri-la, o impulso mais rápido é convertê-la, cortá-la ou executá-la em outro analisador.
Isso pode funcionar. Também pode destruir as pistas que explicam o que deu errado. O reparo deve começar com evidências.
Identifique o limite da falha
Antes de alterar o arquivo, determine onde ele falha:
- cabeçalho global não pode ser lido
- o tipo de link é inesperado
- o cabeçalho do pacote está incompleto
- o comprimento capturado excede o tamanho restante do arquivo
- o comprimento original e o comprimento capturado são inconsistentes
- campos de carimbo de data/hora parecem inválidos
- os dados do pacote são truncados
- os bytes finais permanecem após o último pacote válido
Cada falha implica uma estratégia de reparo diferente. Um cabeçalho global incorreto não é o mesmo que um último pacote truncado. Um tipo de link errado não é o mesmo que confusão de descarregamento de soma de verificação.
Preservar a captura original
Nunca substitua a captura original. Um fluxo de trabalho de reparo deve criar um novo arquivo e registrar o que foi alterado. Se o arquivo original for evidência em um caso de suporte, revisão jurídica ou escalonamento de fornecedor, os bytes originais serão importantes.
Um fluxo de trabalho disciplinado mantém:
- hash do arquivo original
- localização da falha do analisador
- contagem de pacotes válidos antes da falha
- bytes cortados ou reescritos
- índices de pacotes afetados
- hash do arquivo de saída
- notas explicando por que a edição era segura
Isto não é burocracia. É assim que os engenheiros evitam tornar a captura menos confiável.
Padrões Comuns de Corrupção
Muitos casos de PCAP corrompidos são simples:
- o processo de captura foi interrompido no meio da gravação
- o arquivo foi copiado antes do escritor fechá-lo
- o espaço em disco acabou
- uma ferramenta escreveu um comprimento de pacote inválido
- o tipo de arquivo errado foi renomeado como
.pcap - as expectativas da camada de link não correspondem à carga útil
O reparo deve corresponder ao padrão. Se apenas o pacote final estiver incompleto, cortar o registro parcial final poderá recuperar o prefixo útil. Se os comprimentos dos pacotes forem inconsistentes em todo o arquivo, a captura poderá precisar de uma validação mais profunda antes de qualquer reescrita.
Não trate o reparo como normalização
Reparar significa preservar o máximo possível de evidências válidas. Normalização significa reescrever os dados em um formato preferido. São trabalhos diferentes.
Por exemplo, alterar carimbos de data/hora, recalcular somas de verificação ou reescrever cabeçalhos da camada de enlace pode ser útil posteriormente, mas essas operações não devem ser misturadas na primeira etapa de recuperação. Primeiro recupere o que é confiável. Em seguida, decida se a cirurgia controlada é apropriada.
Onde a cirurgia PCAP se encaixa
A cirurgia PCAP foi desenvolvida para revisão cuidadosa de evidências de captura e fluxos de trabalho de reescrita controlada. Não está tentando se tornar um amplo player ou um substituto para todas as ferramentas de análise. Sua função é ajudar os engenheiros a inspecionar os metadados de captura, identificar onde um arquivo falha e aplicar edições somente quando as evidências apoiarem a operação.
Para um arquivo corrompido, a saída valiosa é:
- que parte do arquivo é válida
- onde a análise falha
- qual ação de reparo foi aplicada
- quais pacotes ou bytes foram afetados
- se o arquivo resultante pode ser aberto por ferramentas downstream
Essa é a diferença entre “executei um conversor” e “posso explicar o reparo”.