■「DNSSEC導入とトラブル事例」(SANNET 其田さん) ・まとめ - 今のところキャッシュDNSが原因でトラブルが報告された事例はない - 権威 DNS の対応は慎重に qmail に問題がある MX レコードがあるノードを署名する際には、qmail にパッチ適用が必要 ・経緯 - 2010/4 テスト系DNSサーバにてテスト開始 - 2011/2/7からsannet.ne.jp署名 qmailのサイトから届かなくなった - 2011/3 IPv6対応 →パケットサイズが大きくなってしまうため、minimum response 有効化 ・署名・鍵管理システム - 本当は OpenDNSSEC を利用したかった HSM を買うお金がなかった SoftHSM が重くて使えなかった DB の冗長性が×(当時MySQLへの対応が途上だった) →署名・鍵管理システムを自前で作った ゾーンの状態遷移を監視するデーモンを設置 (自分の作ったプログラムは信用しない前提) ・トランスファーアウト時のトラブル DNSホスティングを他社に移管した顧客が、そのドメイン名のWebページを見られ なくなった 移行元には署名されたゾーンファイルがあったが、移行先は署名されていない ゾーンにも関わらずDSが登録されていた - 対処法1 ユーザに、移管先の会社に依頼してDSを消して検証を無効にする 移管先がDSの削除に対応していることが必要 - 対処法2: 署名の検証ができるようにする。SANNETの権威DNSサーバでは 契約期間内には署名したゾーンが残っている。 Q: 事前に削除してからDSを消すこともできるのではないか A: 今回はそのように対応していなかった Q: DSを書かないでメールの申請を書くとどうなる? A: トランスファーは指定事業者のポインタのつけかえ、レコードは変わらない いままで通りの申請をすると、DSがないので、DSは消える Q: トランザクションのところでDSのキーが消えないのではないか A: (JPRSに)個別にご相談ください ・メール送受信のトラブル 送受信先のメールサーバが512byteを越えるDNSを扱えないqmail 問い合わせが数十件発生 送受信先のメールサーバ管理者にパッチを当ててもらうように依頼 SANNETのDNSSECページにqmail関係の注意を掲載 http://www.sannet.ne.jp/security/dnssec/ JPRSのページに掲載 qmailの問題はDNSSECに限らず起こる問題 Q: 顧客のゾーンのデフォルトでDNSSECを署名する設定が話題になっているが、 社内での議論はあったのか A: 安全安心を優先した。顧客は中小企業が多い。qmailの問題が大きいのは 予想外だった Q: .JP直下の場合にはよいが、他のドメインのサブドメインを預かる場合はあるか? A: いまのところないが、例えば sannet.ne.jp の配下にサブドメインを作れば できる C: 当社もDNSSEC対応サービスを作ったが、サブドメインを扱っている場合には、 このドメインを上位ゾーンにDSを登録してください、あるいは解約時に先に DSを削除してください、などの課題があるため、今後の課題としている。 C: ユーザにDSをアップロードすることを依頼する必要がある C: 絶対にトラブルが発生する Q: DNSSECをいれるとリソースを食う、保存する情報量が増えるなどの話があると 思うが、実運用したときに気づいた点があれば教えてほしい A: キャッシュに関してはそこまで変化がなかった。CPUに関してもあがって いない、メモリ使用量も変わっていない。 ■「Simplified DNS Query under IPv4/IPv6 Mixed Environment」 北村さん (NEC/電通大) ・背景 draft-kitamura-ipv6-simpple-dns-query-01.txt というIDを DNSEXT WG で 議論中 http://tools.ietf.org/html/draft-kitamura-ipv6-simple-dns-query-01 IETF 79 (Beijing) で発表したが、プラハではチェアにひっかかってしまった ・課題 一つの通信ノードにIPv4とIPv6の二つの名前を付けることになっている IPv4の場合には複数のAが帰ってくる IPv4だけのDNS名前解決処理に影響を与えないこと AとAAAAの問い合わせと応答は別にだしている 現状の2対のメッセージ方式によるDNS名前解決処理方式の課題 -> 複雑である、非効率である シリアルの場合には、Aを取ってからAAAAを取るとペナルティになる 2ペアメッセージのやり方をやめて1ペアのクエリー、レスポンスを行う 方法を3つ考えた。トラフィックも少なくなる ・Two Existing Records Combined 型 ワンペアでごっそり取りたい。クエリに複数書く。 構造的にはできる 2つまとめたクエリを出すのは例がない クライアント改修が必要 1クエリには1つのタイプしか指定しないのが暗黙の了解 ・One New Special Record型 新しいレコード(例えばA+AAAA: ペンタA) 新しいレコードを用意する必要がある クライアント改修が必要 ・One Existing Record w/Mapped Trans 型 全てのレコードはAAAAだと思う、答えもAAAA IPv4 は Mapped アドレスを利用。 いまあるものをそのまま使える kernel で mapped address が有効であれば OK トリッキーだが認めてしまえば問題無い 皆さんのご意見を Q: 権威サーバでやる必要は無い、キャッシュサーバでやる A: One New Specialはない。IPv6の次のプロトコルがあったら対応できない C: その方法は提案として2回か3回でてきている C: Query Section を増やしていくのはある。1個である必要は無い C: まだ動くと思う。いろいろなものを実装しなければいけない Question Sectionを一つだと思う実装が多そう C: Mapped address はRFC3484がいまだにStandard Track。obsoleteではない。 (RFC3484は)アドレスの選択順序がよくない。フラットならよい。 C: 1,2はDNSEXT WGでは無理で、3はBEHAVE WGならありうる C: Linux系はほとんどのMapped Addressは有効になっている。FreeBSDでは 機能としてはインプリメントされているが、itojunさんによりデフォルト設定は rcで無効になっている。クロスしてしまうから問題という考え。 Q: ちゃんとプロキシを実装していれば大丈夫ではないか C: DNSEXTは理想を求めているが、今回の目的は既にIPv6を使っている 長期というよりは短期を考えるならone pair C: DNSSECをがんばらないといけない C: ANYがきた場合もがんばらなければいけない。決めの問題だが。 C: ContentsサーバにAAAAのMapped Addressを書けば答えるのではないか A: WindowsにIPv4アドレスをつけなければIPv4で問い合わせないのではないか あとはトランスレータで対応する。DNS64の考え方に近い やるのはシンプルにしたいがゴール Q: クライアント側はキャッシュサーバがそのcapabilityを持っているかわからない A: BIND9などが対応していれば、サーバ側がメンテナンスされていれば 対応できるのではないか C: クライアント側がAAAAだけを聞けばいい状態にできないかもしれない C: アプリを改修するぐらいなら、2回問い合わせをするのが気にならなくなる ほうが先ではないか C: 将来を考えるといつまでAを引くのか C: 将来新しいプロトコルが出てきた場合の対応も考える必要がある A: IPv6 Mapped Address が出てくるのではないか(笑) Q: ホームゲートウェイが鍵。そのあたりをうまく乗り切れるのならBEHAVEを使う ・会場の意見を。 いまのままがいいという方は0、1,2,3という選択肢で挙手 0: 多数 1: 10数名程度 2: 0名?(確認出来ず) 3: 5名程度 いつこれをやりたいか、どこまでいじれるか Q: Aを聞いたとき、AAAAを答える方法もあるのでは。 びっくりして多分捨てられる 入れるとしたらAnswerではなくAuthoritiveかAdditional C: EDNS0で出来るのではないか C: EDNS1の定義が必要かもしれない ■AAAA Filter (IIJ 松崎さん) ・めでたい話 APNIC IPv4通常在庫が枯渇 /127がRFC6164 (Standard Track) に 結婚しました! ・どよーんとした話 IPv6->IPv4フォールバックがうまくいかない 日本だとホスト名にAAAAをつけただけでは5-8%のユーザが見れなくなる AAAAをつけているIIJや総務省のホームページ ほとんどの場合、IPv6接続性があれば問題無い NTT東西のFlets光Next,西の光プレミアム,B-Fletsの自治体ファイバを 使っている版などで問題 RAでIPv6アドレスがついてくるが、IPv6インターネットにはでれない ・キャッシュDNSサーバ 最後の砦; ユーザが必要のないフォールバックを避ける IPv6閉域網に接続したユーザ向けキャッシュDNSサーバ ・BINDでのAAAA filter設定 ./configureのときに邪悪なオプション(--enable-filter-aaaa)が必要 これをしないと設定時に怒られます filter-aaaa-on-v4 yes; ・BINDでのAAAA filterの挙動 ホスト名:AとAAAA→AAAAを応答しない ホスト名:AAAAのみ→AAAAを応答する BrokenなIPv6ユーザにfallbackするための技術、 AAAAのみが設定されている場合、応答した方がまだ繋がる可能性がある と考えたらしい →NTT NGNのサービスについてはAAAAのみがついているので影響はない CacheからAuthoritativeにちょっとだけ問い合わせが増える ・対応の利点 コンテンツ事業者が安心してIPv6対応できる アクセスできないという悪影響がなくなる IPv6閉域網に接続したユーザで発生していた不要なIPv6->IPv4 フォールバックがなくなる NTT NGN からRSTがかえってくると1秒でフォールバック Windowsでは30秒ぐらい、200秒ぐらいのOSも ・対応の懸念点 IPv6閉域網に接続したユーザがインターネット側のAAAA レコードを検索できなくなる ISPが運用するキャッシュDNSが増える AAAAを応答しないサーバ 応答するサーバ Q: これを設定したISPはいつまでやっているの? A: 状況が改善するまで。NGNがIPv6接続サービスを提供するか、IPv6サービスを 提供すればいい。 Q: DNSSEC で署名されている場合には AAAA を返す IPv4アドレスベースでACLで表現できる このプレフィックスのAAAAだけ答える、というオプションを作ることも可能だが、 ISC では開発費用が必要 Q: フィルタをするのではなく、応答する順番を変えるのではだめか A: だめ。今時の端末は RFC 3484 で IPv6 を優先する。端末がAとAAAAを独立に クエリを出す。パケットを出す順番とgetaddrinfoが返す順番は同じではない。 C: World IPv6 dayだけやるという話もあるが、その日うまくいけば、そのまま ずっとやるという話もある A: そのうちポリシーテーブルを修正するなどの対策案が公表される予定 Q: 副作用は? A: ユーザがAAAAが見えなくなるだけ Q: パフォーマンスペナルティは? A: ペナルティはあまりない Q: ACLは? A: 行数による ■「重複をお許しください」ができるまで (JPRS 森下さん) - 「重複をお許しください」とは 技術コミュニティ系のメーリングリストにマルチポスト 2週間に1通出している計算 DNSSEC関連のアナウンス(15通), BIND9の脆弱性(5通) なぜいつも同じ書き出しなのか:過去メールの再利用 - 「重複をお許しください」ができるまで BIND 9 の脆弱性 qmail/netqmailの512バイト問題 ISC からの "Advance Security Notification" (ASN) セキュリティアドバイザリを先行して通知 ISC サポートサービスとして提供 一般よりは1週間ぐらい早い 2009年7月のDynamic Updateの脆弱性はすぐ出た - ASN を分析 危険度(Severality, Exploitable) 対象: Versions Affected すでにExploitがあるかどうかActive Exploits - 詳細を分析 実装がわるいのか、プログラムが悪いのか、プログラムの構造が悪い 出来てしまうことはなにか BINDを落とせる、毒入れされる、DNSSEC検証をパスする - 文章の素案を作成 タイトル(緊急をいれるか)、推奨度など 構成を決める(概要、詳細など) ・中身の作成とレビュー ・動作の確認、追試(レビュー) ・アナウンス ISCのWebを定期的にチェック CVEやCERTのWebについてもチェック ・アフターフォロー 情報の広まり具合や対応状況のチェック Twitter, セキュリティホールmemo 検索エンジン、ブログ、メディア ・作るに当たり気をつけていること 長いと読んでもらえないこともある 「概要」を読むだけで以下のことがわかるようにする 対象、何の不具合か、どういうことができてしまうのか、情報源、 危険性、どうする必要があるのか 「対策」には必要な対策について簡潔に記述 「詳細」は興味をおった人が技術的詳細は実際にできることの 詳細を読む場所にする 情報源や必要なパッチ ・ケーススタディ: qmailの512byte問題 基本的にBIND 9を踏襲 開発元の公式発表を受けたものではないため、情報源がない 技術的に中立に記述 ・最後に 今後も必要に応じて出来るだけ迅速に「重複をお許しください」を 出す予定です 文章作成技術や広報技術に関するさまざまなノウハウを蓄積・共有 していければ qmailの件がなぜいまいちなのか ・送り側が何年も設定を変えていないのにおかしくなる →自分のせいだという認識が薄い ・受け側がDNSSECを入れた所だけがおかしくなく →やっぱり相手が設定を間違えたに違いないと思われる ・SMTPセッションが張られる前にこける →受け取り側でエラーが起こっていることがわからない ・エラーメッセージからは真の原因がわかりにくい →deferral: CNAME_lookup_failed ・デフォルトでは一週間後に初めてエラーメールが戻る →受け側でのDNSSEC導入後、しばらくしないと発覚しない (開発元からパッチが出ていない) Q: 実際仕事が増える人 A: 数名挙手 ■Number of DNSSEC validators seen at JP (JPRS藤原さ) DNSSECの普及率を調査 TTLが86400秒なので.JPを検証するDNSSEC KEYを1日に1回取りに来るはずだ 手法: packet capture と query log - packet capture 55hour -約183万のリゾルバ中、3315のIPアドレスが DNSSEC の validation - query log a.dns.jpとg.dns.jp Q: 地震以降にvalidatorが増えたというのは、自宅サーバがVPSに引っ越してい る影響か? C: 正月にも減っているの興味深い。 C: 大学も止る ■各ccTLDのDNSSECステータス地図をつくってみました (BBT 大本さん) 最初はTwitterやWebサイトの情報収集でccTLDの動向をチェック メールで定期digチェックした内容をアラート通知するスクリプトを作成 最初はGoogle Earthで作成。 kmlファイルの作成が大変 参考にしていたサイトで配布が停止 →Hello Worldでweb向け地図生成が出来るらしい 新しくできた国や地理関係がおかしい部分も修正 (マレーシアとシンガポールの位置が逆だった) 小さい島はDNSSEC対応が早い 小さい国はもともと記載されていない国もあった http://www.ohmo.to/dnssec/maps/ ■JANOG28のお知らせ (NTTCom 吉村さん) 7/14(木)-15(金) @ 日本橋