1. ホーム
  2. Web プログラミング
  3. セキュリティ関連

Macでmitmproxyを使ってHTTPSのデータを取得する方法

2022-01-05 19:41:37

Macで最もよく使われているパケットグラビングソフトウェアはCharlesで、Charlesについてはインターネット上に多くのチュートリアルがありますが、ここでは別のパケットグラビングツールmitmproxyを紹介します。mitmproxyはインタラクティブなコマンドラインのパケットグラビングツールで、http/httpsリクエストを見るためにパケットを取得できます。)

インストール方法

mitmproxyのサイトでは、以下のコマンドでインストールするように記述されています。

pip install mitmproxy

実際のインストール作業では、いくつかの落とし穴に遭遇しました。まず、OSXElCapitan以上では、ここで説明したように、インストール時に6つのモジュールの依存性エラーが発生することです。もうひとつは、インストール時にパーミッションエラーが発生し、root権限で実行する必要があることです。最終的には、以下のコマンドでインストールが成功しましたが、インストールがうまくいかない場合は壁が必要です。

pip install mitmproxy --ignore-installed six

を開始します。

まず、ネットワーク環境を設定する必要があり、携帯電話とパソコンを同じ無線LAN環境に接続し、携帯電話の設定-無線LANを入力し、現在接続中の無線LANをクリックして設定ページの詳細を入力し、httpプロキシ欄に、現在接続中のipアドレス、ポートフィル8080を入力、このIPアドレスはパソコンのシステム設定-ネットワークで確認でき、設定は以下のように完了する。

ネットワーク環境の設定が完了したら、実際にパケットキャプチャを開始します。お使いのコンピュータでターミナル(コマンドラインウィンドウ)を開き、mitmproxy-p8080と入力してください。

次に、携帯電話でいくつかのアプリを開くと、驚くことではありませんが、いくつかのhttpリクエストのリストが表示されます。この時点では、まだ https のパケットをキャッチすることができないので、いくつかの追加設定を行う必要があります。

以下の動作はiPhoneの場合であり、他のデバイスの場合も同様です。iPhoneのSafariブラウザを開き、mitt.itと入力すると、以下のようなページが表示されます。

対応するプラットフォームを選択し、証明書をインストールします。インストールが完了したら、httpsのパケットを取得することができます。

注意:ブラウザで開くときは、パケットキャプチャモードにする必要があります。

[...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...] [...]