Dividi un PCAP di grandi dimensioni ed estrai una conversazione senza perdere il contesto della risoluzione dei problemi
Come dividere file PCAP di grandi dimensioni, estrarre una conversazione TCP o UDP e preservare un contesto sufficiente per la risoluzione dei problemi del protocollo.
I file PCAP di grandi dimensioni sono difficili da aprire, difficili da condividere e difficili da rivedere. Un'acquisizione da un server occupato, un gateway di telecamere, un laboratorio USB-over-IP o un incidente di produzione può raggiungere rapidamente i gigabyte. La soluzione ovvia è dividere il file o estrarre una conversazione. Il rischio è quello di eliminare il contesto che spiega il fallimento.
La domanda giusta non è solo "come posso ridurre le dimensioni del PCAP?" Si tratta di "quale contesto deve sopravvivere affinché la cattura più piccola sia ancora utile?"
Perché le acquisizioni di grandi dimensioni diventano difficili da utilizzare
Le grandi catture creano problemi pratici:
- pressione della memoria dell'analizzatore di pacchetti
- indicizzazione lenta
- caricamento difficile per supportare i portali
- traffico sensibile non correlato
- troppe conversazioni
- tempi lunghi
- rumore duplicato attorno all'incidente reale
La divisione per dimensione può rendere i file gestibili. Estrarre una conversazione può focalizzare le prove. Ma entrambe le operazioni possono nascondere importanti contesti di configurazione, DNS, ARP, TLS o ritrasmissione.
L'estrazione di una conversazione richiede più di cinque tuple
Una conversazione TCP o UDP viene spesso identificata dall'IP di origine, dall'IP di destinazione, dalle porte e dal protocollo. Questo è un buon inizio. Ma la risoluzione dei problemi potrebbe anche richiedere:
- Ricerca DNS prima della connessione
- ARP o scoperta dei vicini
- Stretta di mano TCP
- Stretta di mano TLS
- Errori dell'ICMP
- ritrasmissioni prima del fallimento visibile
- relativo canale di controllo
- risposta del server dopo un nuovo tentativo del client
Se si estraggono solo i pacchetti dopo l'errore dell'applicazione, il destinatario potrebbe non individuare la vera causa.
Divisione per dimensione rispetto a divisione per tempo
La divisione in base alla dimensione del file è utile per la compatibilità degli strumenti e i limiti di caricamento. La suddivisione in base al tempo è utile per le finestre degli incidenti. La divisione per conversazione è utile per il debug mirato. Ognuno ha dei compromessi.
Chiedere:
- lo strumento di ricezione ha un limite di dimensione del file?
- è importante la finestra temporale dell'incidente?
- un flusso rappresenta l'intero caso?
- sono necessari più flussi correlati?
- i timestamp devono rimanere originali?
- i numeri dei pacchetti dovrebbero essere conservati o rimappati?
L'output dovrebbe documentare quale strategia di divisione è stata utilizzata.
Conservare la prova del pacchetto originale
Quando generi un file più piccolo, mantieni intatta la cattura originale. Una cattura derivata dovrebbe essere riproducibile. Se un team di supporto successivamente richiede pacchetti prima della finestra estratta, l'originale deve ancora esistere.
Metadati utili:
- nome del file originale e hash
- filtro split o di estrazione
- finestra temporale
- conteggio dei pacchetti prima e dopo
- conversazioni incluse
- pacchetti eliminati in base alla progettazione
- hash del file di output
Ciò trasforma il "ritaglio del file" in un'operazione difendibile.
Dove si adatta la chirurgia PCAP
PCAP Surgery è progettato per la revisione delle prove e le modifiche controllate. La gestione di grandi acquisizioni fa parte di ciò: ispezionare prima, scegliere l'output minimo in secondo luogo, documentare l'operazione in terzo luogo.
Per flussi di lavoro PCAP di grandi dimensioni, PCAP Surgery dovrebbe aiutare a rispondere a:
- quali conversazioni esistono?
- quale flusso contiene l'errore?
- quanto contesto lo circonda?
- cosa è stato estratto?
- cosa è stato intenzionalmente escluso?
- è possibile rigenerare la cattura derivata?
Se la query di ricerca è "dividi pcap di grandi dimensioni" o "estrai conversazione tcp da pcap", non ottimizzare solo per la dimensione del file. Ottimizza per un'acquisizione più piccola che spieghi comunque l'errore.