web-dev-qa-db-ja.com

ブラウザーまたはオペレーティングシステムにデフォルトのDNSSEC検証がないのはなぜですか?

多くのリゾルバー(TLDやルートTLDを含む)はDNSSECをサポートしており、GoogleのOpenDNSサーバーもサポートしています。

ただし、デフォルトではクライアント側でチェックされません。どうしてこれなの?

15
whatever489

Chromiumのセキュリティチームは次のように述べています。

DNSSECとDANE(タイプ2/3)は、代替案と比較してセキュリティの基準を測定可能な程度に引き上げておらず、セキュリティにマイナスになる可能性があります。 DNSSEC + DANE(タイプ0/1)は、HTTP公開鍵ピン留めを介して同じ効果を達成でき、はるかに信頼性が高く、一貫した配信メカニズムを備えています。

https://bugs.chromium.org/p/chromium/issues/detail?id=50874#c22 を参照)

彼らはHPKPのサポートにかなりの時間と労力を費やしてきました。Firefoxは、彼らが作成した多くのツール(組み込みの固定リストなど)を利用しています。したがって、彼らは彼らがより良いと思うものを持っているとき、おそらく彼らは別の方法をサポートすることに多くの意味を見ないでしょう。マイクロソフトも調査を行っていますが、特にDNSSECを調査しているようには見えませんが、特定の立場を示していません。それが、代替に傾倒している現在のブラウザー市場の主要なプレーヤーです。

ただし、HPKPはHTTP上に構築されています。これは純粋にWeb用に設計されています。 DNSSECにはその制限がないため、他のアプリケーションに使用できます。 DNSレコードが実際にドメイン所有者からのものであることを確認できます。これはメールサーバーや小規模なDNSリゾルバーに役立ち、トラフィックを変更できる悪意のあるアクターが検出できない方法でレコードを改ざんできないようにします。このため、展開することは依然として重要であると見なされています。DNSは、Webページだけでなく、さらに多くの目的で使用されています。

8
Matthew

ここ から:

DNSSECの短所

  • DNSSECはDNSサーバーにかなりの負荷を追加する可能性があり、コストが増加し、現在のDNSシステムの効率が低下します。 TLDレジストリオペレーター、ドメイン名レジストラー、ISP、およびホスティングプロバイダー側​​のリソースに多大な投資が必要です。
  • 「ブートストラップの問題」–すべてのユーザーがコストよりも大きなメリットを受ける前に、最小レベルの展開が必要です。
  • DNSSECの展開には、サーバー側とクライアント側の両方にソフトウェアが必要です。特に、DNSSECの複雑さが増すと、頻繁にルックアップエラーが発生したり、パフォーマンスが低下したりする場合に、エンドユーザーからDNSSECをサポートするオペレーティングシステムとブラウザーアドオンを利用するにはどうすればよいでしょうか。 、エンドユーザーのインターネットエクスペリエンス全体に悪影響を及ぼしていますか?
  • DNSSECは不必要に複雑であり、経験豊富なDNS管理者でも実装するのは面倒です– DNSSECは、本質的に単純なシステムに複雑さを追加します。一部の非DNSSECシステムとの下位互換性がない可能性があり、これも問題を引き起こします。
  • DNSSECをサポートするトップレベルドメインはほとんどなく、一部の政府はDNSSECが支援する暗号化キーの配布を禁止しようとする可能性もあります。国はインターネットの米国による制御を懸念しており、一元化されたキーイングを拒否する場合があります。署名付きルートがない場合にDNSSECを導入すると、DNSキャッシュポイズニングや同様の攻撃に対する保護が弱まります。

したがって、ブラウザcouldはデフォルトでDNSSECをサポートしているように見えますが、ブラウザのパフォーマンスが犠牲になります。

DNSSECを取り上げたことで、執筆時点では価値がないようです。存在しないDNSSECルックアップは通常のDNSにフォールバックする必要があり、レイテンシが増加します。

また、ここにはユーザーエクスペリエンスの問題があります-DNSSECを介してドメインが検索されたという事実をブラウザーはどのように伝えますか?多くのユーザーは、この追加のフラグが南京錠と組み合わせてどのように機能するかを理解しません。正しく署名されていないDNSSEC応答をブロックし、そこへの移動を拒否する可能性がありますが、証明書は、正しいサーバーに到達したことを確認するためのものです。 [〜#〜] hpkp [〜#〜] を使用すると、不正な認証局によって発行された証明書がないことを確認できます。

編集:これでHPKPは死んでしまいました。これを実現するために、証明書の透明性のようなものに注目します。

3
SilverlightFox