DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing...

46
DNSとTLSの ビミョーな関係 佐原 具幸 株式会社インターネットイニシアティブ

Transcript of DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing...

Page 1: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

DNSとTLSの ビミョーな関係

佐原 具幸 株式会社インターネットイニシアティブ

Page 2: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

HTTPSクライアント

Page 3: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 4: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

作っていて困ったこと。

Page 5: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ドメイン名とTLSの関係

Page 6: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

TLS といえば HTTPS が代表格

Page 7: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

HTTPS は HTTP を安全にしたもの

Page 8: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

何をもって 「安全」

と言っているのか?

Page 9: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ブラウザが HTTP で 取ってきた内容

HTML/CSS/JavaScript

Page 10: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

Page 11: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ブラウザの上の方に表示されている

謎の文字列

Page 12: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 13: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

の 対応付け が、

Page 14: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

OS / ブラウザの開発元が認めた、 認証局によって保証されている、 証明書を使って検証されたこと、 をもって 安全 だとしている。

Page 15: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

EV証明書だと もうちょっと わかりやすい

Page 16: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 17: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ドメイン名

コンテンツ (HTML等)

Page 18: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

実はまだ ギャップ がある

Page 19: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ドメイン名

コンテンツ

サーバX.509 Certificate

TLS on TCP

ここが あやうい

Page 20: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

キモ(いの)は ワイルドカード証明書

Page 21: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

広く使われている技術

Page 22: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 23: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ワイルドカード文字 *(スター)

は任意の文字列にマッチ

Page 24: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

*.google.comnews.google.com

maps.google.com

images.google.com

video.google.com

plus.google.com

play.google.com

Page 25: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

なんて便利 ♥

Page 26: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ん? ひょっとして…

Page 27: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

最強の証明書

“*”

Page 28: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

x

Page 29: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

RFC2818 3.1.: Names may contain the wildcard character * which is considered to match any single domain name component or component fragment.

Page 30: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 31: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

では “*.jp” なら?

Page 32: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

o or x

Page 33: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

実装依存... orz

Page 34: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

”*.jp” というワイルドカード証明書を

受け入れる 受け入れないPython Ruby Safari

curl (Mac) wget

Chrome Firefox LibreSSL

curl (OpenSSL) ???

Page 35: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

“*.jp” なんて証明書を 信じるのは脆弱性だ! 直せばいいじゃないか

Page 36: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

では “*.google” なら...?

Page 37: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

o or x状況は “*.jp” と変わらない。

Page 38: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 39: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

えー、何も悪いこと してないのに。

Page 40: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .
Page 41: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

要するに単一の管理主体 の元に運営されていると

証明できれば良い?

Page 42: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

あ、これどこかで聞いた。

Page 43: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

Public Suffix List !

Page 44: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

と、いうわけで

Page 45: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

ワイルドカード証明書の検証にも

Public Suffix Listを使う時代が来てしまうかも…?

Page 46: DNSとTLSの ビミョーな関係 · 2015. 9. 30. · IDN Practices Repository Root Key Signing Key (DNSSEC) Reserved Domains NUMBERS PROTOCOLS ABOUT IANA Delegation Record for .

おしまい