💯

文系と見る情報セキュリティマネジメント ~DNSキャッシュポイズニング編~

2024/10/14に公開

1. はじめに

この記事は文系と見る情報セキュリティマネジメント~セッションハイジャックとドメイン名ハイジャック編~からのシリーズのつもりで書いていますが、内容的な繋がりはありませんので本記事のみお読みいただいて大丈夫です。気が向いたら読んでもらえると幸いです。

それでは今回の内容である「DNSキャッシュポイズニング」についてまとめていきたいと思います。

2.DNSキャッシュポイズニングとは何か

DNSキャッシュポイズニングとは、「DNSキャッシュサーバー」を「毒する」(ポイズニングする)サイバー攻撃のひとつです。
つまり、このサイバー攻撃は「DNSキャッシュサーバ-が何か」と「ポイズニングする方法」の2つを理解する必要があると考えられます。
そのため、今回はこれら2つに分けてまとめてみることにします。

2-1.DNSサーバーとは

DNSキャッシュサーバーとは何か以前に、まずは「DNSサーバー」とは何かをまとめることにしましょう。後に書きますが、「DNSキャッシュサーバー」とはこの「DNSサーバー」の機能の一部を担うサーバーのことだからです。

DNSサーバーとは、ユーザーが特定のWebサービスを利用するにあたりそのサービスのIPアドレスなどを問い合わせた際に回答をくれるサーバーのことです。
その回答の中には、Webサーバーの名前(○○.comやwww.bunkei.comなど)やメール相手の情報を送れば良いのかIPアドレスを送ればよいのかなどといった情報が含まれています。
文章だけではわかりにくいかと思いますので図を用いて説明します。


『ネットワークはなぜつながるのか』を参考に作成

この図にあるように、まずユーザーはWebサービス(www.bunkei.zyouhou)を利用するにあたってサーバーにそのサービスのIPアドレスを(最寄りの)DNSサーバーに問い合わせます(①)。
するとDNSサーバーはIPアドレスを教えてくれます(aaa.bbb.ccc.ddd[1])。その結果ユーザーはWebサービスを使うことができるのです。

しかし場合によっては問い合わせたDNSサーバーがWebサービスのIPアドレスを持っているとは限りません。場合によっては下の図のように、いくつかのDNSサーバーへの問い合わせを繰り返す必要があります。[2]

『ネットワークはなぜつながるのか』を参考に作成

では最寄りのDNSサーバーに情報がないWebサービスを利用する場合、ユーザーが利用しようとする度に遠くのサーバーまで情報を取得しにいかなくてはならないのかというとそうではありません。
DNSサーバーには一度取得したIPアドレスに関する情報を「キャッシュ」に記録する機能があります。これにより、情報の取得後一定期間は情報を取得しにいく必要がなくなるのです。

2-2.DNSキャッシュサーバーとは

今回のテーマである「DNSキャッシュサーバー」とは何かというと、先ほどまとめました「DNSサーバー」の機能のうち、少し前に利用したサービスのIPアドレスデータをキャッシュに短期間保存しておく機能を担うサーバーにあたります。他の機能、すなわち実際にIPアドレスを調査したりするサーバーのことは「コンテンツサーバー」と言います。

2-3.「ポイズニング」の流れ

それでは「DNSキャッシュサーバー」が何かを理解したところで、今回の「DNSキャッシュポイズニング」がどのようなサイバー攻撃なのかをまとめることにします。

DNSサーバーの説明の際、Webサービスを利用する際に「IPアドレスは何かを問い合わせる」と書きました。そしてDNSサーバーはWebサービスの情報があるWebサーバーのIPアドレスを教える訳ですが、このIPアドレスを教えるタイミングで偽の情報をDNSキャッシュサーバーに送り込むのが「DNSキャッシュポイズニング」です。
この結果、DNSキャッシュサーバーには誤った(悪意あるサイトの)IPアドレスが記録させることができます。このようにDNSサーバーのキャッシュを汚染する攻撃のことを「DNSキャッシュポイズニング」と呼ぶのです。


『令和6年情報処理安全確保支援士合格教本』を参考に作成
キャッシュサーバーは「eee.fff.ggg.hhh」のIPアドレスを既に取得したため、正しいIPアドレスである「aaa.bbb.ccc.ddd」は無視してしまいます

3.終わりに[3]

今回は「DNSキャッシュポイズニング」に関してまとめました。
今でこそネットワークの仕組みを多少知ったために理解ができますが、まだネットワークの仕組みを知らなかった際には理解が困難だった攻撃手法の1つになります。
もしこの攻撃手法の理解に詰まった方は一度ネットワークの仕組みを調べてみるのもいいかもしれません。
それでは第4回で!

4.参考文献・サイト

・岡嶋裕史(2023).『令和6年情報処理安全確保支援士合格教本』 技術評論社
・RYO(2024).『だれでもわかる&受かる!情報セキュリティマネジメントやさしいテキスト+頻出問題集[科目A・科目B]』 SBクリエイティブ株式会社
・戸根勤(2007).『ネットワークはなぜつながるのか第2版知っておきたいTCP/IP、LAN、光ファイバの基礎知識』 株式会社日経BP

脚注
  1. IPアドレスというと192.168.0.0のような見た目なのですが192?168?何の数字?となる恐れがあるので今回は分かりやすくするために第2回同様このような表記にしています ↩︎

  2. 詳しく見ると、ここでドメイン名のことをまとめる必要があり脱線しそうなので省きます。一先ずは様々なDNSサーバーを経由する必要があるのだという認識だけあれば大丈夫かと思います。興味のある方は調べてみてください ↩︎

  3. 対策については本試験についての参考書に記載がなかったため、今回は省きました。どうやら安全確保支援士では必要となる知識みたいですが・・・・・・。 ↩︎

Discussion