IT用語/DNS

そもそも、DNSってなーに?(2016-11-30)


IPアドレスやDNSは、いまやそういう仕事につかない人相手ですら基礎知識扱いになりつつありますが、
どうやって説明すればいいんでしょうかね?
ふわっとまとめてみようと試みます。


IPアドレスとDNSについて

Webブラウザで、どこかのサイトにアクセスするときに
アドレスの部分を「http://172.217.27.67/」とかって打ったことあります?
この 「172~」の部分をIPアドレスと言います。

世界中のWebサイト、メールサーバ等には、このような一意の番号(IPアドレス)が与えられています。
あなたのパソコンも、ネットワークに繋げば、与えられています。*1


少しそれますが、 このIPアドレス、日本だとJPNIC という組織が管理していて、

  1. JPNICが各業者にIPアドレスを与える
  2. 各業者がみなさんにIPアドレスを貸し出す
  3. 借りたIPアドレスを使って、みなさんはインターネットに接続できる という流れになります。

話を戻して、ある会社のホームページを見るときに
「あの会社のホームページは確か、172.217 の・・・」とか番号で覚えるのは、頭が混沌としてきますよね?
そこで、人間でも覚えやすいアドレスに変換しよう、という試みが「DNS(Domain Name System)」になります。

「172.217.27.67」=「google.co.jp」という具合に。

google.co.jp は 172~番ですよ、と教えてくれる人が DNSサーバ さんです。

DNSを使う人の視点

その1:そっくりな偽物に気をつける

例えば、yahooo、gooogle とかの("o"が一個多い)サイトがあります。
(※上記、間違ってアクセスしないように!!)
一見わかり辛いですよね。なりすましメールで、偽のURLに誘導するという手法の一例がこれです。

  1. 攻撃したい相手に、「問題が発生したため今すぐパスワードを変更してください」メールを送る
  2. メールの中で、"o"が一個多いサイトに誘導
  3. 本物そっくりのサイトで、パスワードを入力させて、奪う*2

google.co.jp とかの「ドメイン名」って、基本的に早い者勝ちなので、
紛らわしい名前でも申請すれば通ってしまいます。
なので、大企業とかは自社と混乱しそうなドメイン名は予め全部申請している場合が多いのですが、
これにも限界はあります。きりがないので。

怪しいホームページにはアクセスしないで下さい、というのは、
上記のような本物そっくりのアドレスを見破らないといけないので、とっても防ぎづらくて詐欺が絶えない訳です*3
対策の1つとして、クリックする前に、ドメイン名は注意深く読む癖を付けましょう。

なお、ドメイン名は「右から」順に読みます。(jpの子の、coの子の、googleという具合に)
例えば 「google.co.jp.info.verify.null-i.net/login.cgi」 とかだったら、
そこは googleではなく、「~.null-i.net」がアクセス先になります。

その2:メールのドメイン名はあてにしない

ただし、「メール」のドメイン(送信元アドレス)は詐称が容易なので、
ドメイン名だけでうかつに信じ込まないように。
銀行等からくるメールには電子署名がつくようになりましたね。そっちを信じましょう。

  • ただ、うちのスマートフォンは古いから(という理由だと信じたい)
    その証明書の有無が表示されませんので
    大事なメールはパソコンでしか信じないしない事にしていますが・・・

その3:そもそもドメイン名はあてにならない!?

きりが無いので、この話題で一旦最後にしますが、

「172.217.27.67」=「google.co.jp」という具合に。

の部分を、

「192.168・・・(全然違うアドレス)」=「google.co.jp」という具合に。

勝手に書き換える攻撃方法が存在します(DNSキャッシュポイズニング
ここまで来ると、何を信じれば良いんだかって話ですが・・・
昔はこういう攻撃って、愉快犯が大企業をターゲットにしていたのかもしれませんが、
最近は個人や企業を狙って、ビジネス?や政策?の一環としてやってきます。

・・・ほらー、こういうこと書きだすとキリが無くなって、自分でも収集がつかなくなる。 [worried]
ま、まぁ、色々あぶないよ、という事を知るのは大事ですよね! [smile]

DNSを提供する人の視点

大きい組織とかになると、自前のネットワークの中にDNSサーバを持っていて、
組織内だけで使えるドメイン名を作ったり、
特定のドメインにアクセスできないようにフィルタをかけたり、
とにかく、外から隔離された環境を作るのに組織専用のDNSサーバが必要になったりします。

そんな身内で使うはずのDNSサーバが、主に設定ミスで、
外の人(インターネット)からもアクセスできる場合があります。
これが「オープンリゾルバ」って呼ばれているやつです。

オープンリゾルバが問題なのは、
そこから組織にダメージを負わせる場合もありますが(前述の DNSキャッシュポイゾニング とか)、
それよりも、
他の関係ない人達を攻撃するための「踏み台」として利用される場合が多いからです*4
踏み台にされることで、本人にその意思が無くても、犯罪の片棒を担がされてしまいます。

以下のサイトで、自前のDNSサーバが大丈夫か確認できます。
オープンリゾルバ確認サイト


そもそも自前のDNSサーバを持つようなシステム管理者の方々は、
これに限らず、内外からの様々な攻撃と闘っていると思いますが・・・
・・・でも今回は、やっと「オープンリゾルバ」って単語がメモできたので、とりあえず、目標たっせいです。
(情報処理技術者試験で、この単語が思い出せなくて・・・)


*1 厳密には、みなさんのパソコンのIPアドレスはリンクローカルアドレスだと思いますが、その辺の説明は一旦割愛します。特に気にしなくても問題ありません。
*2 例として「クリックジャッキング」など。
*3 その為に安全な接続「https」とかあるんですが、これも極論を言えば、偽物でも申請すれば通ってしまう類のものなので、いたちごっこです。
*4 例えば、DNSアンプ に利用する。

  最終更新のRSS