DNSサーバーに毒を盛る
hostsファイルを使ったファーミングは、何らかの手段でユーザーのPCに侵入し、ファイル内容を書き換える作業が必要となる。一方、一回の手間で最大の効果を上げる方法がある。DNSサーバーの情報を書き換えてしまうのである。DNSサーバーを狙った攻撃には、直接DNSサーバーに侵入しデータベースを書き換えるという方法もあるが、それよりも巧妙な手口がある。それが「DNSキャッシュポイズニング」である。
DNSには、一度検索したアドレスを一定期間記憶(キャッシュ)する仕組みがあり、それによってアドレス問い合わせのたびに毎回問い合わせを行なわなくても済むようにしている。DNSの問い合わせが、インターネット上で他の通信の妨げとならないよう、極力少ない通信量で済ませる仕組みであり、ユーザーに近いDNSサーバーはDNSキャッシュサーバーの役割を担っている。
DNSキャッシュポイズニングは、このDNSサーバー(DNSキャッシュサーバー)にアドレス問い合わせについて偽の応答を送り、DNSサーバーに偽サイトの情報を覚えさせるというものである。特に外部からのアドレス解決要求を受け付けるDNSサーバーは攻撃対象なりやすい。悪意あるユーザーが外部から攻撃対象のDNSサーバーに問い合わせ(アドレス解決要求)を行ない、それと同時にあらかじめ用意しておいた偽の応答をDNSサーバーに送る。自作自演の問い合わせでDNSサーバーをだますというわけだ。
![]() |
|---|
| DNSキャッシュポイズニングの手口(IPA「DNSキャッシュポイズニング対策~DNSの役割と関連ツールの使い方~」より) |
これが上手くいってDNSサーバーが偽の応答を受領すればキャッシュが汚染され、偽サイトへの誘導がはじまる。偽サイトが本物と瓜2つであればユーザーは疑いようがない。それが銀行やクレジット会社のWebサイトなら、ユーザーIDとパスワードが盗まれ金銭的な被害を被ったり、ほかにはスパイウェアやウイルスが仕込まれたり、またはボット化されたりと、ユーザーの知らない間に危険な状態に陥ってしまう。
すでにDNSキャッシュポイズニングという詐欺の手口が発見され、IPAではその対策として「DNSキャッシュポイズニング対策~DNSの役割と関連ツールの使い方~」という文書(PDF)を公開している。
DNSサーバー管理者は対策を実施しているはずだが、対策を実施していなければ内部のユーザーが危険にさらされていることになる。大至急対策を実施すべきである。
この連載の記事
- 第6回 メールの誤送信を防ぐにはどうしたらいいの?
- 第5回 携帯電話は盗聴される可能性がある?
- 第3回 情報セキュリティのCIAを知っていますか?
- 第2回 「ソーシャルエンジニアリング」ってどんな技術?
- 第1回 いまさらですが「情報セキュリティ」とは、なんですか?














