• 会員限定
  • 2019/02/14 掲載

DNSとは何か?「セキュリティの穴」にしない対策と基礎的な仕組みを徹底解説

  • icon-mail
  • icon-print
  • icon-hatena
  • icon-line
  • icon-close-snsbtns
会員になると、いいね!でマイページに保存できます。
「DNS(Domain Name System)」と聞いて何を連想するだろう。「インターネット」「セキュリティ」という言葉が思い浮かぶ人は、普段ITニュースに接している人のはずだ。では「DNSって何をするものなんですか?」という質問に答えられるだろうか。DNSはインターネットで重要な役割を占めるが、その働きをきちんと理解している人は少ない。ここでは、普段は意識しないが、実は重要なDNSと、そのセキュリティの関係について、最新の攻撃事例を交えて解説する。
photo
「DNS(Domain Name System)」の基礎を徹底解説
(©Mopic - Fotolia)

Netflix、Twitter、Spotifyが一斉ダウン

 DNSとは、インターネット上のシステム間で通信するための手順である「通信プロトコル」の1つで、インターネットの中で「名前解決」(後述)という重要な仕組みを担っている。この仕組みはインターネット上のほとんどのシステムが利用しているため、これまでも常にサイバー攻撃の標的になってきた。

 たとえば2016年10月26日には、NetflixやTwitter、Spotifyといった名だたるWebサービスやWall Street Journalなどの有名サイトがアクセス不能になった。このトラブルは、IoT(Internet of Things)機器を標的にしたマルウェアの「Mirai」が引き起こしたものだ。世界中の有名サイトにDNSのサービスを提供する米Dynを標的に、大規模なDDoS攻撃を行ったのだ。

 DDoS攻撃とは、標的となるコンピュータに対し、複数のコンピュータやIoT機器から大量の処理負荷を与えることで、サービスを機能停止状態へ追い込む攻撃手法だ。10月26日の攻撃では、そのデータボリュームは合計で1.2Tbpsにおよんだと言われている。

 Dynの提供サービスに対する攻撃は、4時間半続いた。その結果、北米を中心に多くのインターネットサービスがダウンし、長時間の停止を余儀なくされた。このセキュリティ事件は、DNSへのサイバー攻撃の被害の大きさと対策の重要性を端的に物語る教訓となっている。

実はあなたも毎日使ってるDNS

 では、そもそもDNSの仕組みとはどうなっているのか見てみよう。下の図はDNSの仕組みを超簡素化したものだ。

画像
インターネット上の通信の仕組みを簡素化すると、このようになる

 インターネットはその名のとおり「Internet Protocol (IP) =インターネットプロトコル」で通信している。私のPCからビジネス+ITのホームページにアクセスする際には、インターネット上の住所にあたるIPアドレスを利用して、コンピュータどうしが、私のPCのアドレス(192.168.0.100)から、ビジネス+ITのホームページがあるWebサーバのアドレス(52.198.90.74)に通信を行っている。

 この数字の羅列であるIPアドレスは、人間が直感的に読み取ったり記憶したりするには使い勝手が悪い。そのため、より直感的に理解・記憶し、管理しやすい名前をつけた。それが「ドメイン名(Domain Name)」だ。

 この、人間が理解しやすいドメイン名とコンピュータが使うIPアドレスの紐づけを行うのが「ドメイン・ネーム・システム(Domain Name System)」つまりDNSである。このような IPアドレスとドメイン名の相互変換を行うプロセスを名前解決という。
画像
Webブラウザを使うとき「www.sbbit.jp」などアクセスしたいサーバ名を指定しているだろう。DNSは、この宛先サーバ名をIPアドレスに変換し、インターネットはそのIPアドレス情報を基に、通信を目的のサーバに送り届ける仕組みだ

「権威」と「キャッシュ」、2つのDNSサーバの役割は?

 DNSの役割を担うサーバ(以下、DNSサーバ)には、クライアントからの名前解決要求(以降クエリと表記)をとりまとめる「キャッシュDNSサーバ」と、クエリに対して名前解決結果を返答する「権威DNSサーバ」がある。

 キャッシュDNSサーバの役割は、クライアントからのクエリを集約し、それらをキャッシュ(一定時間保存)する。キャッシュDNSサーバによって、大量のDNS通信がネットワーク上に飛び交ったり権威DNSサーバに高い負荷をかけてしまったりすることを防止する。

 現在、多くの環境ではクライアント(PCやIoT機器)をネットワークに接続すると、そのクライアントが利用するキャッシュDNSサーバが自動的に設定される。あなたも意識せずにこのキャッシュDNSサーバを利用し、名前解決をしているわけだ。

 一方、権威DNSサーバは、内部にIPアドレスとサーバ名などを対応させるレコードを持ち、キャッシュDNSサーバから来る名前解決要求に対して、返答を返すのが仕事だ。権威DNSサーバは、世界中に分散しており、階層的に名前解決情報を保持している。

画像
クライアント、キャッシュDNSサーバ、権威DNSサーバという順でクエリが送られ、名前解決が行われている

被害の大きい権威DNSサーバへの攻撃、「ランダムサブドメイン攻撃」「DNS水責め攻撃」とは?

 冒頭で紹介したMiraiボットネットからDynへの攻撃による被害からもわかるとおり、権威DNSサーバへの攻撃はインターネット環境に致命的な被害をもたらす。Webサーバだけでなく、メールサーバやアプリケーションサーバなどDNSを利用するインターネットサービスが機能不全/停止に追い込まれるからだ。

 権威DNSに対する攻撃リスクは、DDoS攻撃、権威DNSサーバソフトウェアの脆弱性など多岐に渡る。本稿ではDynの攻撃でも使われたDDoS攻撃について解説する。

 DDoS攻撃では通常、攻撃先企業のWebサーバだけでなく、権威DNSサーバも合わせて狙う「マルチベクトル型」の攻撃が一般的になっている。

 下図にアカマイが緩和した権威DNSサーバをねらった高度なDDoS攻撃の概要を示す。この攻撃では、DNSへのリクエストのピークトラフィックが、1.8Gbpsに達した。1Tbpsを超えるDDoS攻撃が存在する現在、この数字に大きな驚きはない。

 しかし、この攻撃は、サーバが利用する回線帯域を溢れさせることをねらった典型的なDDoS攻撃ではなく、権威DNSサーバの処理リソースを消費させ負荷をかけるタイプのDDoS攻撃だった。こうした攻撃は「ランダムサブドメイン攻撃」または「DNS水責め(Water Torture)攻撃」とも呼ばれる。

画像
アカマイで観測した高度なマルチベクトル型のDDoSと対処のポイント

 分散した攻撃元からランダムなサブドメインを追加した名前解決リクエストを送ると、攻撃元近くのキャッシュDNSサーバでは名前の解決は絶対にできない。なぜなら、ありえないサブドメイン名なのでキャッシュされていないからだ。

 そのため、攻撃対象のドメインを管理する権威DNSサーバにリクエストが届く。これを分散した攻撃元から権威DNSサーバに集中させて、負荷を与えることができるというわけだ。

 この攻撃が厄介なのは、クエリが間違ったサブドメインをリクエストしている正規のものか、DDoS攻撃をねらったものかを見分けるのが難しい点だ。権威DNSサーバへの攻撃に対応したDDoS攻撃緩和装置や、それを使ったDDoS攻撃緩和サービスが世の中に存在するが、装置を置いただけでDDoS攻撃のみを正確にリクエストの中から除外することは不可能と言ってよいだろう。

 さらに、このような高度なDDoS攻撃では時間とともに攻撃手法が変化していく。

【次ページ】「セキュリティ・運用おまかせ」のクラウド型でも被害、この“教訓”をどう受け止めればよい?
関連タグ タグをフォローすると最新情報が表示されます
あなたの投稿

    PR

    PR

    PR

処理に失敗しました

人気のタグ

投稿したコメントを
削除しますか?

あなたの投稿コメント編集

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

通報

このコメントについて、
問題の詳細をお知らせください。

ビジネス+ITルール違反についてはこちらをご覧ください。

通報

報告が完了しました

コメントを投稿することにより自身の基本情報
本メディアサイトに公開されます

必要な会員情報が不足しています。

必要な会員情報をすべてご登録いただくまでは、以下のサービスがご利用いただけません。

  • 記事閲覧数の制限なし

  • [お気に入り]ボタンでの記事取り置き

  • タグフォロー

  • おすすめコンテンツの表示

詳細情報を入力して
会員限定機能を使いこなしましょう!

詳細はこちら 詳細情報の入力へ進む
報告が完了しました

」さんのブロックを解除しますか?

ブロックを解除するとお互いにフォローすることができるようになります。

ブロック

さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。

さんをブロックしますか?

ブロック

ブロックが完了しました

ブロック解除

ブロック解除が完了しました

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

ユーザーをフォローすることにより自身の基本情報
お相手に公開されます