2008年7月14日

[openoffice:11179] DNS キャッシュポイズニング

どうも。こんにちは。
セキュリティねたです。

すでにご存知の方も多いのではないかと思いますが、
より安全な対策のためにと思い、ご一報いたします。

==============================================================================

DNS (Domain Name System) における脆弱性(きじゃくせい)に関する
警告が出ていますので、適宜、必要な対応をなされるとよいかと思います。

Windows においては、Microsoft Update の適用。
Linux などにおいては、bind のバージョンアップ、および、
その後の設定変更などが推奨されているようです。

複数の DNS サーバ製品におけるキャッシュポイズニングの脆弱性
http://www.jpcert.or.jp/at/2008/at080013.txt

Microsoft MS08-037
DNS の脆弱性により、なりすましが行われる (953230)
http://www.microsoft.com/japan/technet/security/bulletin/MS08-037.mspx

==============================================================================

どのような危険があったかと考えてみますと、例えば、以下のような URL から
OpenOffice.org のインストーラーをダウンロードしようとしているとします。
http://www.xxx.yyy.jp/openoffice/localized/ja/2.4.1/OOo_2.4.1_LinuxIntel_install_wJRE_ja.tar.gz

この www.xxx.yyy.jp という文字列から、インターネット上のIPアドレスへ
変換する機構として DNS があります。この DNS 上のデータを汚染する(差し
替える)ことが比較的容易にできてしまっていたという脆弱性のようです。

www.xxx.yyy.jp が相手先の会社名とし、IPアドレスがその会社の問合せの
電話番号、電話番号案内が DNS だと捉えてみてください。

電話番号案内で相手先の会社の電話番号を調べてもらって、その教えられた
電話番号に電話を掛けたら、実は本物ではなく詐欺の人の電話に掛かってし
まっていた。その詐欺の人は本物の会社の担当者の振りをして応対したため、
電話を掛けた本人は詐欺に巻き込まれたことにまったく気が付かなかった。
電話番号案内で案内した人も、その手元のデータが汚染されていた(差し替
えられていた)ことにはまったく気が付いていなかった。

つまり、URL は正しいのに、正しくないファイルをダウンロードさせられて
いたかもしれない。ということが比較的容易にできてしまったというような
脆弱性だったといえるかもしれません。

また http://xxx.yyy.bank.co.jp/login みたいな正しい URL であるにも
かかわらず、まったく別の詐欺のサイトへ接続させられていたかもしれない。
という可能性もあった脆弱性だったと捉えることもできると思います。

私が利用しているインターネットバンキングのログイン画面では、このような
脆弱性が悪用されたとしても比較的容易に見破れるのではないかと思われる
ような対策がすでになされていました。

==============================================================================
以下、技術的な側面について書いてみましたが、読み飛ばしてくださって構いません。

このような www.xxx.yyy.jp (例えば www.openoffice.org) からインターネット
上のIPアドレス(204.16.104.2 など) への変換を行う DNS サーバーの内部には、
PCなどから受け取った問い合わせ要求をさらに上位のサーバーに対して問い合わせ、
その上位のサーバーから受け取った応答結果を一時的に自身の内部にキャッシュ
しておくことによって、次回以降に下位のPCなどから同じ問い合わせ要求を受け
取った場合には上位への問い合わせを定められた時間が経過するまでは省略し、
そのかわりにキャッシュしておいたデータを使ってPCへ応答を返す。という仕組み
が実装されています。この仕組みによって、よってインターネット上などのネット
ワーク負荷の軽減や、PCなどからの問い合わせ要求に対する応答時間の短縮を行う
というわけです。

前述のサーバー間の通信のやり取りの中で、DNSサーバーが上位サーバーへ
問い合わせ要求を出した直後に、上位のサーバーからの応答が返されるより
も先に、悪意のある人が自分の悪意のあるデータをそのDNSサーバーへ送り
つけると、自身のデータをそのDNSサーバーのキャッシュに忍び込ませること
が比較的容易に実現可能だったというようなことのようです。

もちろん、DNSサーバーは、大企業や大学などのような多くのユーザーによって
使われることが大前提となっていますので、DNSサーバーには、同時に複数の
問い合わせ要求を上位サーバーへ送ること、および、複数の返ってきた応答の
中から自身が要求したトランザクションIDと一致している回答を判定して適切に
処理するなどの機構が備わっていますから、通常であれば、悪意のあるデータは
トランザクションIDなどが一致しないなどの条件判定によって期待通り拒絶・
廃棄されるようになっているようです。

しかしながら、今回の脆弱性においては、そのトランザクションIDなどを比較的
容易に推測することが可能であったそうで、その推測したIDなどを使って上位
サーバーになりすまし、悪意のあるデータをキャッシュに覚えこまさせてしまう
ということが可能であったとのことです。

詳細については、以下などに述べられています。

Windows DNS Server Cache Poisoning
http://www.trusteer.com/microsoftdns

BIND 9 DNS Cache Poisoning
http://www.trusteer.com/bind9dns

Microsoft Update では、そのトランザクションIDの推測がより困難になるような
対策などを行われたようです。

Bind (Berkeley Internet Name Daemon)
http://www.isc.org/index.pl?/sw/bind/index.php

を使われているようなシステム管理者におかれましては、bind のバージョン
アップに加えて、さらに、US-CERT などからの情報なども参照して、ネット
ワークなどを適切に設定されたほうがよいようです。

Multiple DNS implementations vulnerable to cache poisoning
http://www.kb.cert.org/vuls/id/800113

Tora

【MLコミュホームページ http://www.freeml.com/openoffice

--[PR]------------------------------------------------------------------
あなたも「ぱくっ」といっちゃってください。ちょっとおなかがすいてくる
脱力系ブログパーツ「国産小麦シリーズ」!
早速今日も、たいやきさん、たこやきさん、をお持帰りくださいっ♪
 
http://ad.freeml.com/cgi-bin/sa.cgi?id=cl96h
------------------------------------------------------------------[PR]--
■GMO INTERNET GROUP■ GMO INTERNET www.gmo.jp


投稿者 xml-rpc : 2008年7月14日 18:42
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/75256
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。