HTTPS復号(中間者攻撃、MitM)

ChuteはMitMによってHTTPSトラフィックを復号できます。詳細についてはWikipediaの記事を参照してください。

証明書ジェネレーターは、デバッグ用の新しいCA証明書を生成し、その証明書をシステムに信頼させるのに役立ちます。Chute MacおよびChute iOSのChute Editorで利用可能です。この証明書はローカルで生成され、プロファイルファイルとシステムキーチェーンにのみ保存されます。新しい証明書の鍵はOpenSSLを使用してランダムに生成されます。

既存のCA証明書も使用できます。証明書をパスフレーズ付きのPKCS#12形式(.p12)でエクスポートしてください。システムの制限により、パスフレーズは空にできませんので注意してください。"base64"コマンドを使用してbase64文字列にエンコードし、以下の設定を設定ファイルに追加してください。

[MITM]
enable = true
ca-p12 = MIIJtQ.........
ca-passphrase = password
hostname = *google.com

Chuteはここで宣言されたホストへのトラフィックのみを復号します。

ワイルドカード文字と?がサポートされています。なお、?はルールに`も含まれる場合にのみワイルドカードとして機能します。?`のみを含むルールはリテラルとして比較されます。

  • プレフィックス-を使用してホスト名を除外します。
  • デフォルトでは、ポート443へのリクエストのみが復号されます。
    • サフィックス:portを使用して他のポートを許可します。
    • サフィックス:0を使用して全てのポートを許可します。

例:

  • -*.apple.com: *.apple.comへのポート443での全てのリクエストを除外します。
  • www.google.com: www.google.comへのポート443でのMitMを許可します。
  • www.google.com:8080: www.google.comへのポート8080でのMitMを許可します。
  • www.google.com:0: www.google.comへの全ポートでのMitMを許可します。
  • *: ポート443での全てのホスト名に対するMitMを許可します。(非推奨
  • *:0: 全ポートでの全てのホスト名に対するMitMを許可します。(非推奨

ホスト名エントリには、最初の/の後にパスパターンを含めることもできます。まずホスト部分がマッチングされ、接続を復号するかどうかが決定されます。その後、パスパターンによって、どのリクエストが復号・処理されるかがフィルタリングされます。

  • example.com/api/*: ポート443でのexample.comに対するMitMを、パスが/api/*にマッチするリクエストに限定して許可します。

一般的な設定は次のようになります:

hostname = -*.apple.com, -*.icloud.com, *

Chuteは全てのMitMリクエストに、URLリライト、ヘッダーリライト、ボディリライト、モック(Map Local)の各ルールとスクリプトを適用します。

MitMはHTTP/2をサポートします: ChuteはALPNを介してクライアントにh2http/1.1の両方を提示します。Surgeの[MITM]キーh2tcp-connectionは設定ファイル内で受け付けられますが、無視されます。

一部のアプリケーションは、固定証明書やCAを使用する厳格なセキュリティポリシーを持っています。これらのホストへの復号を有効にすると問題が発生する可能性があります。

CA証明書のインストールと信頼

CAの生成(またはインポート)はセットアップの半分にすぎません — オペレーティングシステムがそれを信頼する必要もあります。両方のステップが完了するまで、復号される全てのサイトは証明書の警告で失敗します。アプリ内の証明書ページには現在の状態(「信頼済みCA証明書」/「未信頼CA証明書」)が表示されます。

Chute iOS — 設定エディターでMITM → CAを設定を開きます:

  1. 新しいCA証明書を生成(既存の証明書を使う場合はP12証明書をインポート)。
  2. CA証明書をシステムにインストールをタップします。Safariページが開くので、Install Certificateをタップしてダウンロードを許可し、設定 → 一般 → VPNとデバイス管理でダウンロードしたプロファイルをインストールします。
  3. 信頼させます: 設定 → 一般 → 情報 → 証明書信頼設定で、ChuteのCAに対する完全な信頼を有効にします。このステップが最も見落とされがちです — これを行わないと証明書はインストールされただけで信頼されておらず、復号は失敗し続けます。

Chute Mac — 設定ウィンドウでMitMを開きます:

  1. 新しい証明書を生成(またはPKCS#12ファイルから証明書をインポート)。
  2. 証明書をシステムにインストールをクリックします。macOSが管理者パスワードを要求し、証明書を信頼されたルートとしてシステムキーチェーンに追加します — 「キーチェーンアクセス」での手動操作は不要です。
  3. 証明書をエクスポートを使うと、他のデバイスにインストールするための.pemのコピーを保存できます。

証明書が信頼されているのに特定のアプリが失敗し続ける場合、そのアプリはおそらく独自の証明書をピン留めしています — 対抗するのではなく、-プレフィックスでそのホストをhostnameから除外してください。

オプション

skip-server-cert-verify

skip-server-cert-verify = true

MitM実行中にリモートホストの証明書を検証しません。有効にすると、Chuteは自己署名証明書や無効な証明書を含む、アップストリームサーバーから提示されたあらゆる証明書を受け入れます。開発環境では便利ですが、セキュリティは低下します。

[MITM]
enable = true
ca-p12 = MIIJtQ.........
ca-passphrase = password
skip-server-cert-verify = true
hostname = *google.com

セキュリティ注意: skip-server-cert-verifyを有効にすると、Chuteとアップストリームサーバー間のMitM接続が中間者攻撃に対して脆弱になります。信頼できるネットワークまたは開発目的でのみ有効にしてください。

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-08-18 12:06:42

本ページは英語版からの翻訳です。内容に相違がある場合は、英語版が優先されます。

results matching ""

    No results matching ""