tshark: HTTP POST リクエストで、きれいな出力でフォーム データを取得するにはどうすればよいでしょうか?

tshark: HTTP POST リクエストで、きれいな出力でフォーム データを取得するにはどうすればよいでしょうか?

私は教師で、生徒と一緒にMITM攻撃をシミュレートしたいと思っています。目標は、httpsプロトコルを常に使用する必要があります。

Debian に tshark をインストールしました。すべて正常に動作し、ホットスポット モードを実行して tshark を実行すると、HTTP パケットを取得でき、少し調べてみると、フォーム データがプレーン テキストで表示されます。

ここに画像の説明を入力してください

まず、コンピュータ 10.42.0.21 のブラウザから、サーバーの URL (単純な GET リクエスト) を入力すると、tshark は GET リクエストを 2 回表示します。理由がわかりません。重複を削除する方法や理由を見つける方法はありますか? (サーバー ログには 2 つの GET リクエストが表示されます)

次に、サーバーにPOSTリクエストを送信すると(単純なHTMLフォーム経由)、フォームのデータがプレーンテキストで表示されます(サーバーがHTTPプロトコルを使用しており、HTTPではないため、これは論理的です)。

現在の出力は次のとおりです:Timestamp,POST / HTTP/1.1\r\n,\r\n,Form item : "fname" = "John"

tshark を使用して、フォームの項目 (フィールド) 値のみを含む、より見栄えの良い出力を取得することは可能ですか? 次のようにします。"fname" = "John"

ご協力いただければ幸いです:)

編集: 重複については、これはファビコンのリクエストによるもので、問題は tshark ではなく、私の Python サーバーから発生しています。

答え1

コマンドを使用しgrepてフォーム項目を含む行を検索し、 コマンドを使用して必要な関連データを分割しますcut

あなたの例では、次のようなものがtshark | grep "Form item" | cut -d":" -f2おそらくあなたが望むことを実現するでしょう。

関連情報