httpsを使用してWebサービスと通信するandroid(4.2)アプリがあります。出て行くすべてのhttpsをデバッグ/ログに記録したい。それらをデバッグするためのフィドラーとwiresharkがありますが、すべてが暗号化されているように見えます。httpurlとそのパラメータをデコードして表示するためにエミュレータとfiddler/wiresharkを使用してman-in-middle攻撃を設定できますか?
4 に答える
Burpなどの MITM プロキシを使用できます。デバイス/エミュレーターで CA 証明書を信頼済みとしてインストールすると、SSL トラフィックを復号化できるようになります。
また、サーバーの秘密鍵 (つまり、自分のサーバー) を持っている場合、低レベルの情報が本当に必要な場合は、Wireshark で傍受されたトラフィックを復号化できます。
私が見つけた最も簡単なオプションは、mitmproxy を使用することです。簡単な手順は次のとおりです。
私はかつてそれとまったく同じニーズを持っていました。
良い説明はここにあります: https://security.stackexchange.com/questions/8145/does-https-prevent-man-in-the-middle-attacks-by-proxy-server
一部の企業は、特にモバイル ブラウザー (Opera、Nokia) の場合にそうしていることが判明しました。帯域幅を節約するために、自社のプロキシ サーバーを介してすべてのトラフィックを通過させ、圧縮しています。興味深いのは、HTTPS 対応のサイトでも機能することです。彼らは(やや偽の)証明書をローカルの信頼できるストアにインストールし、プロキシは、ブラウザが潜在的な攻撃に対して文句を言わないように、その偽の証明書で署名された圧縮された応答を返します。
このようなプロキシの作成に役立つツールが見つからなかったので、最終的に (Web サービスとそれが実行されているサーバーを制御していたため)、開発中に純粋な HTTP を有効にしました。これにより、おそらく何時間もの作業時間を節約できました ;)