Ncat の HTTP プロキシモードと固定 TCP リレーの比較
固定バイトリレーは HTTP 処理を既存のプロキシに任せます。Ncat の HTTP 待ち受けモードは、プロトコルを理解する別のサービスです。
client → local TCP relay → existing forward proxy → destinationこの構成では、リレーは固定の上流を 1 つだけ持ちます。クライアントの要求を変更せずに既存のフォワードプロキシへ渡します。そのプロキシが絶対 URL または CONNECT の宛先を読み、ポリシーを適用して宛先への接続を開きます。
リレーをウェブサイトへ直接向けると契約が変わります。フォワードプロキシは宛先を選択し、HTTP のフレーミングと接続の振る舞いを扱う必要があります。最初の行からホスト名を取り出すだけでは足りません。
Nmap の Ncat は別途 HTTP を理解する待ち受けモードを提供します。
ncat --listen 127.0.0.1 3128 --proxy-type httpこの loopback の例は Ncat のプロキシ実装を使うもので、すべての nc に共通する機能ではありません。待ち受け側のプロキシが HTTP メソッドと CONNECT を扱います。クライアント側の SOCKS オプションは待ち受けモードで SOCKS サーバーを立てません。常設の共有サービスには、意図的な接続処理、アクセス制御、ログ記録も必要です。
観察では暗号化の境界を特定します。平文の HTTP プロキシ接続上のリレーは、プロキシの要求と応答を見られます。CONNECT の後、宛先の HTTPS は TLS のバイト列であり、読めるページ内容ではありません。プロキシまでの TLS は、そのリンク上の最初のプロキシ交換さえ隠します。解釈されたトランザクションにはクライアントとプロキシの診断を使い、資格情報や機密 URL を含みうるログを保護してください。