web-dev-qa-db-ja.com

TLSには、SSL-SSLプロキシまたはBlueCoatスタイルのアプライアンスでURIのみを公開する方法がありますか?

私は実験的な認証プロトコルを作成していて、HTTPコールの暗号化されていないURIを確認する必要がありますが、データを確認できないことを証明したいと思います。

自分しか見ることができないHTTPSCallを受信できるようにする標準または機能はありますか?

  • 私の認証文字列
  • アクセスされているURI
  • (特に何もない)

REST全体の観点から見ると、これはドアを検査できるが中身は見えない警備員のように感じます。

これらのプロパティを表示できるようにするトンネリングまたはクリアテキスト「共有変数」は存在しますか(Wiresharkと同様ですが、TCPソケット)があります)。

2
TLDR

HTTP [〜#〜] s [〜#〜]接続がネットワークデータに暗号化されていないURLを表示するかどうかを尋ねている場合、答えは部分的にYESになります。 =。

以前に受け入れられた回答とは異なり、URLは他のデータと同様にnotで暗号化されます。

ベースURL(ex。Amazon.com)は、サーバー名表示拡張(SNI)nencryptedデータとして表示されます。 base URLのみ。 Amazon.com/booksはSNIでAmazon.comのみを表示し、/ books以降は表示しません。

SNIは、仮想ホストサーバー、同じIPアドレスでホストされる複数のWebサイトを処理するために存在します。

これはラインキャプチャで確認できます。 Wireshark(またはその他)を起動し、Webサイトにアクセスして、「Client Hello」を確認します。

enter image description here

2
user10216038

いいえ、そのようなことはどのTLS標準にも存在しません。名前のとおり、TLSはトランスポート層で機能し、内部プロトコルを認識していません。 URLは、他のデータと同様に暗号化されます。

HTTPでは、データがURLの一部になる可能性があることに注意してください。これは「URLパラメータ」または「GETパラメータ」と呼ばれます。

MITMプロキシを検討するか、クライアントまたはサーバーのいずれかを制御している場合はそれらのいずれかで検証を実行することをお勧めします。

1
Jenessa