2008年7月に大きな問題となった「DNSキャッシュ・ポイズニング」(関連記事1関連記事2)。DNSぜい弱性の研究者として有名なダン・カミンスキー氏は「8月末時点で全世界の3分の1のユーザーが危険な状態にあった」と語り,まだ危機が去ったわけではないことを示唆した。

 DNSキャッシュ・ポイズニングは,DNSサーバーに偽の情報を埋め込む攻撃。エンドユーザーを偽のWebサイトに導いたり,メールを悪意あるサーバーに配送させたりといった被害を起こす危険性がある。ネットワークのインフラストラクチャを狙った攻撃だ。

 2008年10月5~10日に開催されたセキュリティ・カンファレンス「Black Hat Japan 2008」のために来日したカミンスキー氏にDNSぜい弱性について聞いた。


(聞き手は田村 奈央=日経コミュニケーション



今回のぜい弱性をいまだに抱えているDNSサーバーは,現状でどのくらい残っているのだろうか。

米アイオーアクティブ ペネトレーション・テスティング・サービス ディレクターのダン・カミンスキー氏
[画像のクリックで拡大表示]
 危険なDNSサーバーがどのくらい残っているか,厳密に調べるのは難しい。参考値を挙げると,現在,フォーチュン500の企業ではメール・システムのうち約70%,メール以外のシステムでは約60%にパッチが適用されているというデータがある。しかし,問題は安全なサーバーの数ではなく,影響を受けるエンドユーザーの数だと思う。専門家が調べたところでは,8月末の段階で「全世界の3分の1のユーザーが危険にさらされている」状態だった。ただし,今ではこの割合はもう少し下がっていると思う。

今後,DNSキャッシュ・ポイズニングのようなインフラに対する攻撃が増えていくのか。

 ネットワークのインフラに対する攻撃がトレンドとして増える危険性はあると思う。ネットワーク・セキュリティの歴史を振り返ると,攻撃対象は,しだいにサーバーからクライアントへ移り変わっているのがわかる。しかし,クライアント側のWindows OSのセキュリティは近年,どんどん強固になっている。そのぶん,攻撃者はほかの対象を狙うようになるだろう。

 攻撃対象としては,例えばMac OSなどアップルのプラットフォームなども考えられるが,今回のDNSぜい弱性の一件で,そのほかに「おお,そうかインフラを狙う手があったな!」と,あらためて攻撃者に気づかれてしまったかもしれない。

 従来,ネットワーク・インフラは「動いて当たり前」と思われているところがあった。安定稼働していれば,セキュリティ面では“ほったらかし”にされがちだったわけだ。しかし,いざインフラが狙われると,その被害は非常に大きい。2005年にはシスコのルーターにぜい弱性が発見され,「ネットワーク・インフラの基幹部分が狙われた!」と,業界全体がパニックになるという事件があった(関連記事)。この件から私たちが学んだのは,「今まで攻撃されていなかったものが安全とは限らない」ということだ。今後は,業界全体でインフラに対する攻撃にどう備えるか,もっとよく考えていく必要があるだろう。

根本的な対策としてDNS SECの実装を勧める専門家もいる。このプロトコルは実際に有効なのか。

 DNS SECに対しては,特別に有効とも無効とも思わない。確かにDNS SECが普及すれば,今回のDNSぜい弱性の問題が解決されるだけでなく,セキュリティ上の欠陥を抱えるほかのプロトコルまでもが修正できる可能性もある。しかし,DNS SECを実装するのは難しい。私たちがいま直面している問題を「火事」に例えると,DNS SECはいわば「厳重な防火対策を施したビル」みたいなものだ。つまり,そのビルに火は燃え移らないけど,いま燃えさかっている火を消すのには効果的でない。

 世の中のDNSサーバーには,認証を担うもの,ネットワーク中に広く名前解決のための問い合わせをかけて回るものなど,さまざまなタイプがある。DNS SECはそういったさまざまな種類のDNSサーバーに一斉に実装しないと効果的でないのだが,それを実行しようとするとかなりの時間とコストがかかる。どこから実装すればいいのか,管理者は「鶏が先か卵が先か」といった問題を抱えることになるだろう。

 現在では米国政府がやっきになってDNS SECを実装しようとしているが,彼らですらその実現に2年間はかかると見ている。実際,私たち専門家は,「今回のDNSぜい弱性に対する効果的な対策としてDNS SECがある」と発表したとき,「(こんな実装が面倒な対策を勧めるなんて)IT業界から笑いものになるんじゃないか?」とさえ思ったくらいだ。

 今までセキュリティ業界では,セキュリティ対策を実装する際に起こる問題をあまり真剣に考えてこなかったところがある。しかし,現実のシステム構築の際には,セキュアでなくても「きちんと動く」システムであることが重視される。私はこれを「(セキュリティ的に)バカでも 動くヤツはバカじゃない」ということわざにしている。逆に言えば,どんなにセキュアでも実装が難しい機能は使ってもらえない。今後は,セキュアで実装しやすいシステムを考えていかなければならない。

もっとも現実的な対策はパッチの適用ということか。

 パッチは万能薬ではない。でも,2008年7月にリリースされたパッチはかなりよくできていると思う。セキュリティの専門家たちが,今回のDNSぜい弱性に対して,現実にはありえないようなさまざまなパターンの攻撃を想定して作った。7月時点でのパッチを適用しておけば,システムはかなり強固になるだろう。

 2008年末には,また新しいパッチがリリースされる予定だ。今後,DNS SECのように何らかの根本的な対策が広く適用されるまで,1年に1回くらいの割合で包括的なパッチをリリースするのがよいと思う。一番危ないのは,一部のシステムだけがDNS SECに対応して,ほかはお留守になってしまうような状態だ。それは避けたい。