1

Tcpflow は一連のファイルを出力しますが、その多くは Web サーバーからの HTTP 応答です。内部には、 Content-type: を含む HTTP ヘッダーと、その他の重要なものが含まれています。ペイロード データ (つまり、image/jpeg; text/html; など) だけを抽出してファイルに保存できるスクリプトを作成しようとしています [オプション: 適切な名前とファイル拡張子を付けて]。

EOL 文字は \r\n (CRLF) であるため、GNU ディストリビューションでの使用が困難になります (私の経験では)。

私は次の行に沿って何かを試してきました:

sed /HTTP/,/^$/d  

HTTP (incl) の先頭から \r\n\r\n (incl) の末尾までのすべてのテキストを削除するには、うまくいきませんでした。sedおよび/またはの経験が豊富な方からの助けを求めていますawk。私は Perl の経験がありません。これには一般的な GNU コマンド ライン ユーティリティを使用したいと思います。

サンプルの tcpflow 出力ファイルはこちらにあります。(悪いリンク)

ありがとう、
フェリペ

4

1 に答える 1

2

この記事foremostでは、からの出力で実行しtcpflowて画像を抽出することをお勧めします。そのリンクと、(少なくとも) Debian、Fedora、および Ubuntu のリポジトリで入手できます。

リンク先のサンプルファイルで試してみたところ、うまくいくようでした。

foremost -i tcpflow.out

「output」というディレクトリが作成され、「gif」と「jpeg」というサブディレクトリがあり、それぞれにファイルが含まれていました。ただし、ファイルの名前はヘッダーのファイル名と一致しません。

ファイルの行末を変更するには、次のようにします。

dos2unix filename

またはパイプで:

dos2unix < filename | nextcommand

興味のある他のリンク:

于 2010-05-20T04:06:46.447 に答える