DNSなりすましとは?
DNSなりすましの手法と対策
2022年11月16日
著者: Ahona Rudra
翻訳: 高峯 涼夏
この記事はPowerDMARCのブログ記事 What Is DNS Spoofing? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
DNSなりすましとは何でしょう?
DNSなりすましとは、企業を騙すためによく使われる攻撃手法のことです。
DNSは、それ自体、決して安全ではありません。
1980年代に設計されており、インターネットがまだ物珍しいものであった当時は、セキュリティは最重要課題ではなかったからです。
このため、悪意を持つ人物は時間をかけてこの問題を悪用し、DNSなりすましなどの高度なDNSベースの攻撃を開発するようになったのです。
DNSなりすましの定義
DNSなりすましとは、WebブラウザからのWebサイトへのリクエストを乗っ取り、代わりにユーザを別のWebサイトに誘導するために使われる手法です。
これは、DNSサーバのIPアドレスを変更するか、ドメインネームサーバ自体のIPアドレスを変更することによって行われます。
DNSなりすましは、一見本物のような偽のWebサイトに、騙されたユーザをアクセスさせるフィッシング詐欺でよく利用されます。
これらの偽サイトは、クレジットカード番号や社会保障番号などの個人情報を要求することがあり、犯罪者はこれらの情報を利用して個人情報を盗むことができるのです。
(訳注:社会保障番号とは、アメリカで利用されているマイナンバーのようなID番号のことです)
DNSなりすまし攻撃とは?
DNSなりすまし攻撃とは、攻撃者がDNSサーバを装って、DNSクエリに対して正規のサーバが送信した回答とは異なる回答を送信することです。
攻撃者は、被害者からの問い合わせに対して、ホストの偽のIPアドレスなど、さまざまな種類の虚偽の情報を含む任意の回答を送ることが可能です。
これを利用して、別のWebサイトに見せかけたWebサイトにユーザを誘導したり、ネットワーク上のサービスに関する誤った情報を伝えたりすることができます。
簡単に言うと、攻撃者がユーザを騙して、知らないうちに有害なWebサイトにアクセスさせることです。
DNSなりすましとは、ユーザに返されるDNSレコードを改竄し、悪意のあるWebサイトにリダイレクトさせようとする行為を指します。
以下のようなさまざまな悪意のある目的に使用することができます。
- マルウェア、ランサムウェア、フィッシング詐欺の配信
- ユーザ情報の取得
- その他のサイバー犯罪の助長
DNSなりすましはどのような仕組みですか?
DNSサーバは、ドメイン名をIPアドレスに変換して、人々がWebサイトに接続できるようにします。
ハッカーがユーザを悪意のあるサイトに誘導しようとする場合、まずDNSの設定を変更する必要があります。
これは、システムの弱点を突いたり、ハッカーが有効な組み合わせを見つけるまで何千もの異なる組み合わせを試すブルートフォース攻撃によって行われることがあります。
ステップ1 – 偵察
攻撃を成功させるための最初のステップは偵察――ターゲットに関する情報をできるだけ多く見つけ出すことです。
ハッカーは、企業のビジネスモデル、従業員のネットワーク構造、セキュリティポリシーなどを調査し、どのような情報が必要で、どのように入手すればよいかを判断します。
ステップ2 – アクセス
ターゲットに関する十分な情報を集めたら、脆弱性を突いたり、ブルートフォース(総当たり)方式でシステムへのアクセスを試みます。
アクセスした後は、システムにマルウェアをインストールし、トラフィックを監視して機密データを抽出できるようにする可能性があります。
攻撃者は、正規のコンピュータからだと偽ってパケットを送信し、どこか別の場所から送られているように見せかけることができます。
ステップ3 – 攻撃
ネームサーバがこれらのパケットを受信すると、キャッシュに保存し、次回誰かがこの情報を問い合わせたときに使用します。
正規のユーザが正規のWebサイトにアクセスしようとすると、代わりに不正なサイトへリダイレクトされることになります。
DNSなりすましの手法
攻撃者がこれを実行する方法はいくつかありますが、いずれもユーザのコンピュータを騙して、別のDNSサーバを使用させることに依存しています。
これにより、攻撃者はリクエストを乗っ取り、好きなWebサイトに飛ばすことができるようになります。
1.中間者攻撃
最も一般的なDNSなりすまし攻撃は、中間者(man-in-the-middle:MITM)攻撃と呼ばれています。
攻撃者は、2つのSMTPサーバ間のメール通信を傍受し、このタイプの攻撃では、すべてのインターネットトラフィックを読み取ります。
次に、攻撃者は、ドメイン名解決のためのリクエストを傍受し、実際のネットワークではなく、彼らのネットワークを介して送信します。
彼らは任意のIPアドレスで応答することができます――たとえそれがフィッシングサイトに属しているものであっても。
2.DNSキャッシュポイズニング
攻撃者は、ネットワーク上のボットネットまたは侵害されたデバイスを使用して、DNSクエリに誤った応答を送信し、不正な情報でローカルキャッシュを汚染します。
これは、ドメインネームシステム(DNS)の乗っ取りや中間者攻撃に利用される可能性があります。
3.DNS乗っ取り
攻撃者は、自分のIPアドレスを変更して、あたかも自分がドメイン名の権威ネームサーバであるかのように見せかけます。
そして、このドメインに関する情報を要求するクライアントに対して、偽造したDNS応答を送信し、パブリックDNSサーバを正しく使用する代わりに、攻撃者が管理するIPに誘導することができるのです。
この攻撃は、ルーターやファイアウォールにセキュリティ対策を施していない顧客に対して最もよく行われます。
DNSなりすましを防ぐには?
DNSなりすまし検出メカニズムの実装
この問題に対する解決策の一つとして、DNSSECが提案されています。
DNSSECはDNSの拡張機能で、レコードの認証と整合性を提供し、DNSサーバから非認証データを提供するものです。
これは、応答が送信中に改竄されないことを保証します。
また、クライアントとサーバ間のデータトラフィックの機密性を提供し、有効な認証情報を持つユーザのみがそれを復号化できるようにします。
徹底したDNSトラフィックのフィルタリングを行う
DNSトラフィックフィルタリングは、ネットワーク上のすべての受信および送信トラフィックを検査するプロセスです。
これにより、ネットワーク上で発生する疑わしいアクティビティをブロックすることができます。
これはこの機能を提供するファイアウォールや他のセキュリティソフトウェアを使用することで実現できます。
DNSサーバへの定期的なパッチの適用
オペレーティングシステム、アプリケーション、データベースに定期的にセキュリティアップデートを適用します。
仮想プライベートネットワーク(VPN)を利用する
HTTPS接続にアクセスできない場合は、VPNを使用します。
VPNは、コンピュータと、コンピュータがアクセスしているWebサイトまたはサービスとの間に暗号化されたトンネルを作成します。
なぜVPNを使用するかというと、双方向のトラフィックを暗号化するため、ユーザがアクセスしているWebサイトや送受信されたデータをISPが見ることを防ぐことができるからです。
ファイアウォールの使用
インターネットに接続するすべてのシステムに、ファイアウォールをインストールします。
ファイアウォールは、ネットワーク管理者によって明示的に許可されていないすべての外部からの接続をブロックします。
メール認証プロトコルの使用
DNSなりすましを軽減するために、MTA-STSを使用することができます。
HTTPSでダウンロードされたMTA-STSポリシーファイルに保存されたエントリは、DNSで照会されたMTAのMXレコードと比較されます。
また、MTAはMTA-STSポリシーファイルをキャッシュするため、DNSなりすまし攻撃の実行がより困難になります。
TLS-RPTを有効にして、受信者がSMTP TLSレポートをメールアドレスに送信できるようにすれば、配信の問題を監視し解決することができます。
これにより、暗号化されていない接続の問題を常に把握することができます。
DNSクエリのログと監視を有効にする
DNSクエリのログと監視を有効にし、DNSサーバに行われた不正な変更を追跡できるようにします。
最後に
DNSなりすましが行われると、Webサイトの訪問者と所有者の両方にとって非常に不便な状況になります。
攻撃者がDNSなりすまし攻撃を行う主な動機は、個人的な利益またはマルウェアの送信のいずれかです。
そのため、Webサイトの所有者として、最新のセキュリティ対策を採用した信頼できるDNSホスティングサービスを選択することは非常に重要です。
さらに、Webサイト閲覧者としては「周囲に気を配る」必要があります。
なぜなら、自分がアクセスしようと思っていたWebサイトと現在閲覧しているWebサイトとの間に何らかの矛盾があることに気付いた場合、直ちにそのWebサイトから離れ、正規のWebサイト所有者に注意を促すようにしなければならないからです。