Skip to content
KitploitKITPLOIT
ツールブログ
Log in
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
mitm-proxy — GoベースのMITM HTTP/HTTPSプロキシ。HTTP/2およびHTTP/1.1の傍受、ローカルCA/ホスト単位の証明書生成、CONNECT/WebSocketトンネリング、ディスクキャッシュ、管理ダッシュボード、トラフィックキャプチャ、ブロックポリシー、そして任意で利用可能なAI支援の脅威スキャン(編集、隔離、監査ログ付き)を備えています。 | Kitploit
ツール/GitHubGitHub/welfordian/mitm-proxy
ウェブプロキシと傍受APIセキュリティテストデバッガウェブセキュリティペネトレーションテスト脅威インテリジェンス学習と教育AIセキュリティ
GitHubwelfordian/mitm-proxy

mitm-proxy

GoベースのMITM HTTP/HTTPSプロキシ。HTTP/2およびHTTP/1.1の傍受、ローカルCA/ホスト単位の証明書生成、CONNECT/WebSocketトンネリング、ディスクキャッシュ、管理ダッシュボード、トラフィックキャプチャ、ブロックポリシー、そして任意で利用可能なAI支援の脅威スキャン(編集、隔離、監査ログ付き)を備えています。

リポジトリを見る
141633ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Go MITM Proxy

MITM Proxy Admin logo mark

Goで書かれた、軽量で開発者に優しい中間者(MITM)HTTP/HTTPSプロキシです。HTTP/1.1およびHTTP/2、CONNECTトンネリング、WebSocketトンネリング(ws/wss)、柔軟なフィルタを備えたディスク上のレスポンスキャッシュ、設定のライブリロードをサポートします。

バッジ

Go Platform PRs Welcome

管理ダッシュボードプレビュー

MITM Proxy Admin dashboard overview

概要

Go MITM Proxyは、デバッグ、テスト、学習、およびHTTP(S)トラフィックの制御された傍受を目的としたインターセプトプロキシです。MITMが有効な場合、ローカルCAによって署名されたホストごとのリーフ証明書を動的に生成し、プロキシがHTTPSトラフィックを復号化して検査できるようにします。また、MITMが無効な場合、または除外されたドメイン/ポートに対しては、透過的TCPトンネルとしても機能します。

通知および責任ある使用要件

重要: このアプリケーションは、HTTPSトラフィックを復号化するためのTLS証明書の生成と使用を含む、能動的なMan-in-the-Middle(中間者)傍受を実行します。お住まいの法域やネットワーク環境によっては、影響を受けるすべてのユーザーから明確な事前同意を得ずにトラフィックを傍受することは違法となる可能性があり、プライバシー、職場のポリシー、または規制要件に違反する恐れがあります。

このソフトウェアを、ご自身のローカルマシン以外の環境で使用する前に:

1. 明示的な同意を得る

このプロキシがトラフィックを傍受する可能性のあるネットワークのすべてのユーザーは、HTTP(S)の傍受と検査が行われることを明確に通知されなければなりません。同意は明示的であり、可能であれば文書化されるべきです。

2. 許可されたネットワークでのみ使用する

所有も管理もしておらず、テストまたは監視する明示的な許可を得ていないネットワーク上でこのソフトウェアを実行しないでください。

3. プライバシーおよびデータ保護法を尊重する

多くの地域では、ユーザーデータの傍受、ログ記録、保存を規制する厳格な法律(例:GDPR、CCPA、盗聴法)があります。使用が適用されるすべての規制に準拠していることを確認する責任はあなたにあります。

4. 生成されたCAキーを保護する

生成されたCA秘密鍵(通常は ca-key.pem)により、保持者は対応する証明書を信頼するユーザーに対してあらゆるドメインを偽装できます。

  • 安全に保管してください。
  • 共有しないでください。
  • 侵害された場合はローテーションまたは削除してください。

5. テストおよびデバッグ専用で使用する

このプロキシは開発、デバッグ、制御されたテスト、または教育目的のために設計されています。隠密な監視や不正な監視のためではありません。


このソフトウェアを使用することにより、お客様の使用が合法的かつ倫理的であり、影響を受けるすべてのユーザーに適切に伝えられていることを確認する完全な責任を認め、受け入れるものとします。

機能

  • 標準的なプロキシセマンティクスによるHTTP/HTTPSプロキシ
  • ホストごとの証明書によるHTTPSのMITM傍受
  • ALPNネゴシエーションによるHTTP/1.1およびHTTP/2のダウンストリーム処理
  • WebSocketトンネリング: ws:// および wss://
  • GETレスポンス用の柔軟なディスク上キャッシュ
    • ドメインおよびファイル拡張子による包含/除外
    • TTLベースの有効期限
    • レスポンス内のキャッシュヒットインジケータ(Viaヘッダーおよびカスタムの x--uid ヘッダー)
  • 設定のライブリロード: config.json のオプションのポーリングと変更のホット適用
  • ベアラートークン認証、読み取り専用トークンサポート、管理者ユーザーロールレコード、ヘルス/バージョン/監査エンドポイント、ライブトラフィックSSE、CAメタデータ/ダウンロードを備えたローカル管理API/ダッシュボード
  • ポート、ドメイン、IP/CIDR範囲に対するランタイムブロッキングポリシー
  • ヒューリスティックおよびAIベースの判定、編集、判定キャッシュ、隔離メタデータ、ダッシュボードエンドポイントを備えたオプションの脅威スキャナー
  • 詳細およびリクエストごとのログ制御
  • オプションのJSON設定による適切なデフォルト

インストール

前提条件:

  • Go 1.25 以降

クローンしてビルド: ```bash git clone https://github.com/Welfordian/mitm-proxy.git cd mitm-proxy go build ./

これにより、プロジェクトルートに mitm-proxy (Windows では mitm-proxy.exe) バイナリが生成されます。


## クイックスタート

1) デフォルト設定でプロキシを実行します (:8080 で待ち受けます): ```bash
./mitm-proxy

初回起動時に、ローカル CA が作成され、ca-cert.pem と ca-key.pem に保存されます。

  1. ブラウザまたは curl が http://localhost:8080 のプロキシを使用するように設定してください。

  2. HTTPS インターセプトを許可するには、生成された CA 証明書 (ca-cert.pem) を OS/ブラウザで信頼してください。Trusting the Local CA を参照してください。

  3. プロキシ経由で HTTPS サイトにアクセスし、ログを確認してください。より詳細な情報を得るには、verbose モードを使用してください: ```bash ./mitm-proxy --verbose

## 使い方

### コマンドラインフラグ

- --config string: config.json ファイルへのパス
- --listen string: リッスンアドレス(設定を上書き)
- --ca-cert string: 既存の CA 証明書へのパス(設定を上書き)
- --ca-key string: 既存の CA キーへのパス(設定を上書き)
- --mitm bool: MITM インターセプトを有効にする(デフォルト: true。false に設定するとトンネリングを強制)
- --verbose bool: 詳細ログを有効にする
- --watch-config bool: config.json の変更を監視して自動適用する(デフォルト: true)
- --admin-enabled bool: ローカル管理 API/ダッシュボードを有効にする(デフォルト: true)
- --admin-addr string: 管理 API/ダッシュボードのリッスンアドレス(デフォルト: 127.0.0.1:9090)
- --admin-token string: 管理用ベアラートークン(省略時は起動時に生成)
- --admin-read-token string: GET/HEAD/OPTIONS の管理アクセス用読み取り専用ベアラートークン
- --admin-ui bool: 組み込み管理 UI を配信する(デフォルト: true)
- --admin-store string: 管理 SQLite ストアのパス(デフォルト: dashboard.db)

CLI フラグは、注記がある場合に設定ファイルの値を上書きします。


### 設定(config.json)

リポジトリには config.json の例が含まれています: ```json
{
 "listen_addr": ":8080",
 "proxy_name": "MITM-Proxy",
 "ca_cert_path": null,
 "ca_key_path": null,
 "ca_cert_output_path": "ca-cert.pem",
 "ca_key_output_path": "ca-key.pem",
 "enable_mitm": true,
 "admin_enabled": true,
 "admin_addr": "127.0.0.1:9090",
 "admin_token": "",
 "admin_read_token": "",
 "admin_ui": true,
 "admin_store": "dashboard.db",
 "excluded_domains": [],
 "blocked_ports": [25, 445, 3389],
 "blocked_domains": [],
 "blocked_ips": [],
 "block_action": "deny",
 "block_response_status": 403,
 "traffic_capture": {
   "store_bodies": false,
   "max_body_bytes": 32768,
   "redact_bodies": true,
   "store_headers": true,
   "redacted_headers": ["Authorization", "Cookie", "Proxy-Authorization", "Set-Cookie", "X-Api-Key"],
   "store_cookies": true,
   "redacted_cookies": []
 },
 "proxy_auth": {
   "enabled": false,
   "realm": "MITM Proxy",
   "require_auth_for_loopback": false,
   "default_action": "allow"
 },
 "verbose_logging": true,
 "log_requests": true,
 "max_idle_conns": 200,
 "idle_conn_timeout_seconds": 90,
 "tls_handshake_timeout_seconds": 10,
 "min_tls_version": "1.2",
 "tls_next_protos": ["h2", "http/1.1"],
 "cache": {
   "enabled": true,
   "directory": "/var/cache/mitm-proxy",
   "include_domains": [],
   "exclude_domains": [],
   "include_extensions": ["jpg", "png", "webp", "css", "js"],
   "exclude_extensions": [],
   "ttl": 3600
 }
}

注記:

  • ca_cert_path/ca_key_path が指定されない場合、プロキシは生成した CA を ca-cert.pem / ca-key.pem に書き込みます。
  • excluded_domains はワイルドカードをサポートします(internal/config の IsDomainExcluded を参照)。
  • admin_addr のデフォルトは localhost です。admin_token が空の場合、実行ごとのトークンが生成され、起動時に出力されます。
  • admin_read_token は読み取り専用のダッシュボード/API クライアント向けに設定できます。
  • traffic_capture.store_bodies はデフォルトで無効です。有効にすると、ボディサンプルはサイズ制限され、デフォルトでマスクされます。
  • traffic_capture.store_headers および traffic_capture.store_cookies は、キャプチャしたメタデータを永続化するかどうかを制御します。redacted_headers はヘッダー値全体をマスクし、redacted_cookies は保存前に一致する個々の Cookie および Set-Cookie 名をマスクします。
  • proxy_auth は、SQLite で管理されるユーザーと順序付けられた ACL ルールに基づくプロキシクライアントの Basic 認証を有効にします。
  • blocked_domains は完全一致の名前と *.example.com のようなワイルドカードパターンをサポートします。blocked_ips は単一の IP と CIDR 範囲をサポートします。
  • cache.include_domains および cache.exclude_domains は相互排他的です。include_extensions と exclude_extensions も同様です。
  • ウォッチャーは --config で指定されたファイルまたはデフォルトの ./config.json のみを監視し、Proxy.SetConfig を介して変更をホット適用します。

管理ダッシュボード

管理サーバーはデフォルトで http://127.0.0.1:9090/admin/ にダッシュボードを提供します。API ルートには Authorization: Bearer <token> が必要です。ローカルブラウザで使用する場合、/admin/?token=<token> はトークンをブラウザのローカルストレージに保存します。

初期のダッシュボード/API の対象範囲は以下のとおりです。

ツールをダウンロード