web-dev-qa-db-ja.com

HTTP公開鍵のピン留めをプリロードするメカニズムはありますか

ために HTTP Strict Transport SecurityHSTS)、プリロードリストがあり、サイトの所有者は、ブラウザーベンダーがブラウザーに同梱するドメイン名のリストにサイトを送信できます。

HSTSプリロードに似たメカニズムはありますか。サイトの所有者は使用する公開キーの署名を "announce"できるので、ブラウザはその前に受け入れる公開キーを知っています。そのサイトへの最初の訪問?

公開ファイルを含む巨大なファイルを送付することは現実的ではないことを理解していますが、サイトの所有者が安全にそれらを発表できる、悪意のあるユーザーを許可せずに、最終またはドラフト機能があるかどうかを教えていただければ幸いです。実際のキーではない公開キーを受け入れるようにクライアントをだましますか?

2
Ayesh K

はい、主要なブラウザはHPKPプリロードリストを使用しますが、現在、独自のピンを送信するメカニズムはありません( HSTSリスト とは異なります)。

現在、大手ベンダーは、プリロードされた公開鍵ピンを自社のプロパティといくつかの注目度の高いサイト(Google、Facebook、Twitterなど)に制限しています。 公開鍵ピンニング拡張機能のRFC は、プリロードリストを使用できることも明示的に言及しています。

2.7.  Interactions with Preloaded Pin Lists

   UAs MAY choose to implement additional sources of pinning
   information, such as through built-in lists of pinning information.
   Such UAs should allow users to override such additional sources,
   including disabling them from consideration.

   The effective policy for a Known Pinned Host that has both built-in
   Pins and Pins from previously observed PKP header response fields is
   implementation-defined.

たとえば、Mozilla FirefoxにはHPKPプリロードリストが PreloadedHPKPins.json 。それらは 組み込みピンを含めるためのポリシー を次のように説明します。

私達はします:

  • クロムのピンセットをインポートして、Chromeがすでに実行しているすべてのサイト(Google、Twitter))を固定します。
  • 監査してクリーンアップした後、自分のサイトを固定します。
  • すでに良好な状態にあるFacebookのような他の人気サイトをピン留めします(もちろん、彼らの協力を得て)

おそらく、ベンダーは誰もが自分のピンを提出できるようにあまり熱心ではありません。これは、絶え間ない変更と削除のリクエストにより、多くの追加メンテナンスが必要になるためです。

2
Arminius