文字列が一致する場合にのみtsharkダンプ

文字列が一致する場合にのみtsharkダンプ

ネットワークキャプチャスクリプトを開発しており、HTML本文またはURLに.txtファイルで定義された文字列が含まれている場合にのみトラフィックをダンプしたいと思います。

これは私のtsharkコマンドで、ダンプsrc ip dest url(HTTPホスト)と魅力のように動作します。

tshark -i eth1 'port 80' -R 'http.request' -T fields \
   -e frame.number -e frame.time -e ip.src  -e http.host \
   -e http.request.uri -E header=y -E separator=, \
   -E quote=d -E occurrence=f 

今私は詰まっています。ユーザーがhidemyassを閲覧したり、HTML本文にポルノなどのキーワードが含まれている場合にのみこのダンプをトリガーするにはどうすればよいですか?

ベストアンサー1

ngrepを使用できます。

pcap フィルタとパケットの正規表現一致をサポートします。例:

ngrep -tqW byline 'somethingbad|banana' port 80

ポート80を介して、要求または応答の本文で「somethingbad」または「banana」を含むパケットを見つけます。

指示:

  • キーワードが複数のパケットに分散している場合、一致しません。
  • キーワードに一致するパケットのみがキャプチャされます。したがって、トランザクションに関連する複数のパケットにわたって要求/応答本文全体を拡張したい場合は、より複雑になります。

おすすめ記事