TCPフロー
これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド tcpflow です。
プログラム:
NAME
tcpflow - TCP フローレコーダー
SYNOPSIS
TCPフロー [-abcCDhpsvVZ] [-b 最大バイト数] [-d デバッグレベル] [-[e] スキャナー] [-f max_fds]
[-F[ctTXMkmg]] [-i アイフェイス] [-L セムロック] [-m min_bytes] [-o 外向き] [-r ファイル1.pcap]
[-R ファイル0.pcap] [-S名前=値] [-T[ファイル名 レンプレート]] [-wfile] [-x スキャナー] [-X ファイル.xml]
[表現]
DESCRIPTION
TCPフロー TCP 接続 (フロー) の一部として送信されたデータをキャプチャするプログラムです。
プロトコル分析やデバッグに便利な方法でデータを保存します。
tcpflow はパケットごとの情報を表示するのではなく、実際のデータを再構築します。
後で分析できるように、各フローを個別のファイルにストリーミングして保存します。 tcpflow は理解しています
TCP シーケンス番号に関係なく、データ ストリームを正しく再構築します。
再送信または順序どおりでない配信。 tcpflow はファイル名の制御を提供します。
プロトコル、IP アドレス、または接続番号による接続の自動ビニング。
圧縮された HTTP 接続を解凍し、MIME を元に戻すための高度なプラグイン システム
エンコード、または後処理のためにユーザーが提供したプログラムを呼び出します。
デフォルトでは、tcpflow はキャプチャしたすべてのデータを次の形式の名前を持つファイルに保存します。
192.168.101.102.02345-010.011.012.013.45103
...上記のファイルの内容は、ホストから送信されたデータになります。
192.168.101.102 ポート 2345、ホスト 10.11.12.13 ポート 45103 へ。
数十万のパケットを単純に処理して、その内容を確認したい場合は、次のことを試してください。
この:
TCPフロー -a -o 外向き -FK -r パケット.pcap
これにより、tcpflow はすべての処理 (-a) を実行し、出力をディレクトリに保存します。
呼ばれます 異常な、 出力をそれぞれ 1000 接続のディレクトリに保存し、その入力を読み取ります
ファイルから パケット.pcap。 もちろん、より高度な処理も可能です。
OPTIONS
-a すべての処理を有効にします。 と同じ -e すべて。
-B コンソールに出力する場合でもバイナリ出力を強制します。 -C or -c。
-b 最大バイト数
キャプチャされたフローの最大サイズを指定します。 それを超えるバイト 最大バイト数
キャプチャされた最初のバイトは破棄されます。 デフォルトでは、無制限の数が保存されます
フローあたりのバイト数。 注意: 以前のバージョンの TCPフロー 最大でしか保存できませんでした
フローごとに 4GiB ですが、バージョン 1.4 以降では実際には無制限の量のデータを保存できます。
バイト。 最近のディスクが非常に大きいのは良いことですね。
-c コンソールの印刷。 パケットの内容を受信時に標準出力に出力します。
キャプチャしたデータをファイルに保存せずに (暗黙的に)
-C パケットの送信元と宛先の詳細が印刷されないコンソール印刷。
パケットの内容を受信時に何も保存せずに stdout に出力します。
キャプチャされたデータをファイルに保存 (暗黙的に -e コンソールに出力する場合、各フローは次のようになります。
異なる色で出力 (クライアントからサーバーへのフローは青、サーバーからサーバーへのフローは赤)
クライアント フロー、緑色は未決定のフロー)。 -s ).
-D コンソール出力は XNUMX 進数である必要があります。
-d デバッグレベル。 標準エラー出力に出力されるデバッグ メッセージのレベルを次のように設定します。 デバッグレベル.
数値が大きいほど、より多くのメッセージが生成されます。 -d 0 完全に静かな動作を実現します。 -d
1 デフォルトでは、最小限のステータス メッセージが生成されます。 -d 10 詳細な出力を生成します
に相当 -v . 10 を超える数値を指定すると、大量のデバッグが発生する可能性があります
開発者のみに役立つ情報。
-E 名
すべてのスキャナを無効にしてからスキャナを有効にします 名
-e 名
スキャナーを有効にする 名前。
-e を すべてのスキャナを有効にします。 と同じ -a
-e HTTP
HTTP の後処理 (「後」処理) を実行します。 出力ファイルが
208.111.153.175.00080-192.168.001.064.37314、
その後、後処理によってファイルが作成されます。
208.111.153.175.00080-192.168.001.064.37314-HTTP
208.111.153.175.00080-192.168.001.064.37314-HTTPBODY
HTTPBODY が GZIP で圧縮されている場合は、XNUMX 番目のファイルも取得される可能性があります。
208.111.153.175.00080-192.168.001.064.37314-HTTPBODY-GZIP
これらのストリームに関する追加情報 (MD5 ハッシュ値など) も提供されます。
DFXML ファイルに書き込まれます
-F[フォーマット]
出力ファイル名の形式を指定します。 形式指定子: c 接続を追加します
すべてのファイル名に対するカウンター。 t 各ファイル名の先頭に Unix タイムスタンプを付加します。 T
各ファイル名の先頭に ISO-8601 タイムスタンプを付加します。 X ファイルを出力しない
(以外の レポート.xml レポート ファイル)。
-FM DFXML 出力に各フローの MD5 を含めます。
-FX ファイル出力を完全に抑制します (DFXML ファイルは引き続き生成されます)。
-FK 1K ディレクトリ内の bin 出力
-FM 1M ディレクトリに bin 出力 (2 レベル)
-Fg 1G ディレクトリの bin 出力 (3 レベル) -T[フォーマット] 任意のテンプレートを指定します
ファイル名の場合。 %A 送信元 IP アドレスに展開されます。 %a ソース IP ポートに展開されます。 %B
宛先 IP アドレスに展開されます。 %a 宛先 IP ポートに展開されます。 %T 拡大する
ISO8601 形式でタイムスタンプを作成します。 %t Unix time_t 形式のタイムスタンプに展開されます。 %V
VLAN が存在する場合は「--」に展開されます。 %v VLAN が次の場合、VLAN 番号に展開されます。
プレゼント。 %C 接続数が 0 を超える場合は、「c」に展開されます。 %c に展開します
接続数 > 0 の場合は接続数。 %# 常に接続に拡張されます
カウント。 %% 「%」を出力します。
-fmax_fds
使用される最大ファイル記述子。 tcpflow によって使用されるファイル記述子の数を次のように制限します。
max_fds。 数値が大きいほど、より多くのシステム リソースが使用されますが、通常はパフォーマンスが向上します。 もしも
基礎となるオペレーティング システムがサポートしている setrlimit() システムコールにより、OS は
要求された制限を適用するように求められます。 デフォルトでは、tcpflow は
OS が許可するファイル記述子の最大数。 の -v オプションで報告します
tcpflow が使用しているファイル記述子の数。
-h ヘルプ。 使用情報を印刷して終了します。
-ああ もっと助けてください。 さらに使用方法に関する情報を出力して終了します。
-i アイフェイス
インターフェース名。 という名前のネットワーク インターフェイスからパケットをキャプチャします。 アイフェイス。 いいえの場合
インターフェースは次のように指定されます -i 、適切なデフォルトが libpcap によって使用されます。
自動的に。
-L semlock_name
それを指定します semlock_name 重複を防ぐために Unix セマフォとして使用する必要があります。
tcpflow の異なるコピーは XNUMX つの異なるプロセスで実行されますが、出力は
重ねて印刷することで同じ標準出力が得られます。 これはの応用です
Unix の名前付きセマフォ。 きっとあなたも見たことがないでしょう。
-l 次の引数を、仮定されたファイル名として扱います。 -r それぞれの前のコマンド
一。 これにより、シェル グロビングを使用して一度に多くのファイルを読み取ることができます。 ために
たとえば、現在のディレクトリ内のすべての pcap ファイルを処理するには、これを使用します。
TCPフロー -o でる -a -l *.pcap
-J フロー情報を複数色でコンソールに出力します。 注: この オプション ました
変更 from TCPフロー 1.3.
-m 最小サイズ
TCP セッションにスキップがある場合、新しい接続出力ファイルを強制的に作成します。
最小サイズ バイト以上。
-o 外向き
トランスクリプト ファイルが書き込まれる出力ディレクトリを指定します。
-P パージはありません。 通常、tcpflow は、
接続は FIN で閉じられます。 これによりメモリは節約されますが、追加の CPU が必要になります
時間。 このオプションを選択すると、std::tr1:unowned_map が拡張されずに拡張されます。
バージョン 1.1 より前の tcpflow と同様に、境界。 存在する場合、tcpflow の実行が高速になります。
接続数は 10 万未満ですが、メモリ不足エラーが発生する可能性があります。
-p 無差別モードはありません。 通常、tcpflow はネットワーク インターフェイスを
パケットをキャプチャする前の無差別モード。 の -p オプションは tcpflow に伝えます 置くために
インターフェイスをプロミスキャス モードにします。 すでに無差別状態になっている可能性があることに注意してください
何らかの理由でモードになります。
-q Quiet モード --- 警告を出力しません。 現時点で唯一の警告は、 TCPフロー プリント
10,000 を超えるファイルが作成された場合の警告です。ユーザーは次のことを確認する必要があります。
提供された -FK, -FMまたは -Fg オプション。 今後、別の警告が出される可能性があります。
-r ファイルから読み取ります。 からパケットを読み取ります fileを使用して作成されました。 -w のオプション
tcpdump(1)。 このオプションは何度でも繰り返すことができます。 標準入力は
使用される場合 file は "-"。 このオプションを有効にするには、tcpdump の -s オプション
snaplen をインターフェースの MTU (例: 1500) に設定するために使用する必要があります。
パケットをキャプチャしています。
-R ファイルから読み取りますが、TCP フローを完了するためだけに行われます。 このオプションは次の場合に使用されます。 TCPフロー
は、時間の経過とともにキャプチャされた一連のファイルを処理するために使用されます。 毎回
期間 n, file ファイルン.pcap で処理する必要があります R -r ファイルン.pcap, while
ファイル(n-1).pcap すべき be 処理されました R -R ファイル(n-1).pcap。
-S名=値
を設定します 名 等しいパラメータ 値 プラグインの場合。 使用 -ああ すべてを知るために
設定可能なパラメータの一覧です。
-s 印刷できないものを取り除きます。 すべての印刷不可能な文字を「.」に変換します。 キャラクター
パケットをコンソールに出力したり、ファイルに保存したりする前に。
-V バージョン番号を出力して終了します。
-v 冗長な操作。 tcpflow の動作を詳しく説明します。 に相当 -d 10.
-w ファイル名.pcap
処理されなかったパケットを書き込む ファイル名.pcap。 通常、これは UDP です。
パケット。
-X ファイル名.xml
DFXML レポート ファイルを書き込む ファイル名.xml。 ファイルにはすべての TCP のレコードが含まれています
接続、tcpflow プログラムのコンパイル方法、および tcpflow が実行されているコンピュータ
実行されました。
-Z gzip 圧縮されたストリームを解凍しないでください。
例
に到着または出発するすべてのパケットを記録するには 日没 すべてのHTTPを抽出します
添付ファイル:
TCPフロー -e scan_http -o 外向き host 日没
間のトラフィックを記録するには HELIOS そしてどちらか or エース 結果を 1000 個のファイルにビン化します
ディレクトリごとに、各フローの MD5 を計算します。
TCPフロー -X レポート.xml -e スキャン_md5 -o 外向き -FK host HELIOS \( or エース \)
onworks.net サービスを使用してオンラインで tcpflow を使用する
