estratto di carico utile da uscita tcpflow
-
30-09-2019 - |
Domanda
tcpflow emette un gruppo di file, molti dei quali sono HTTP risposte da un server web. All'interno, essi contengono le intestazioni HTTP, tra cui Content-type:, e di altri importanti. Sto cercando di scrivere uno script che può estrarre solo carico utile di dati (ad esempio image / jpeg; text / html; et al.) E salvarlo in un file. [Opzionale: con un nome appropriato e l'estensione di file]
I caratteri EOL sono \ r \ n (CRLF) e quindi questo rende difficile da utilizzare in distro GNU (nelle mie esperienze).
ho cercato qualcosa sulla falsariga di:
sed /HTTP/,/^$/d
Per eliminare tutto il testo dal principio di HTTP (incluso) fino alla fine del \ r \ n \ r \ n (incl), ma non ho trovato alcuna fortuna. Sto cercando aiuto da chiunque con una buona esperienza in sed
e / o awk
. Io ho zero esperienza con Perl, si prega di preferirei usare comuni utilità della riga di comando di GNU per questo
Trova un file di output di esempio tcpflow qui. (cattivo collegamento)
Grazie,
Felipe
Soluzione
Questo articolo consiglia di eseguire foremost
in uscita da tcpflow
per estrarre le immagini. E 'disponibile in quel link e nei repository di (almeno) di Debian, Fedora e Ubuntu.
ho provato su file di esempio si è collegato al e sembrava funzionare bene.
foremost -i tcpflow.out
Ha creato una directory chiamata "uscita" con le sottodirectory chiamate "gif" e "JPEG" con i file in ciascuna. I nomi dei file non corrispondono i nomi dei file nelle intestazioni, però.
Per modificare la fine riga dei file fanno:
dos2unix filename
o in un tubo:
dos2unix < filename | nextcommand
Altri link di interesse:
- httpflow - analizza tcpflow uscita ??li>
- tcpxtract - un altro file estrattore
- strumenti forensi per Unix - una lista di strumenti open source