web-dev-qa-db-ja.com

tcpdumpまたは代替のポートのHTTPプロトコルをASCIIとしてスニッフィング/ダンプするにはどうすればよいですか?

アプリケーションがローカルホストで通信するhttpプロトコルを介してトラフィックを送受信している方法を確認する必要があります(.gzでコード化された埋め込みポートがあります)それは送受信するXMLであると確信していますが、スニッフィングしたいそれ、そしてそれを分析します

これはTcpdumpでどういうわけか可能ですか?そこでは、それが接続しているだけで実際の送受信が見えない

4
PartySoft

ngrepはこれに非常に役立ちます。と同じくらい簡単なもの

ngrep -W byline port 80

動作しますが、リクエストのコンテンツをフィルタリングすることもでき(したがって、名前のgrep部分)、パケットペイロードを出力します。

ngrep -W byline some_string port 80
5
Mark

Tcpdumpを使用したい場合は、このようなコマンドtcpdump -s 0 -A -qn filtersはあなたが望むものをあなたに与えるはずです。 -s 0はパケットサイズを設定し、-A asciiをダンプします。の代わりに -A あなたはおそらくそれも好きでしょう -Xこれは、16進ダンプスタイルの形式で出力を提供します。

また、wiresharkを使用することもできます。キャプチャが完了したら、パケットの1つを右クリックして、「フォローTCPストリーム」を選択します。

5
Zoredache

私はこれをwiresharkでかなり多く行いました。 tcpdumpで必要なトラフィックをスニッフィングし、Wiresharkを起動できる場所に送信してから、Wiresharkでトレースを表示します。 TCPセッションをトレースすると、ニースASCII形式でリクエストと回答が得られます。うまく機能します。

4
sysadmin1138