A rogue DNS server is an unauthorized resolver that returns false answers to DNS queries, redirecting clients to attacker-controlled IP addresses through malware, compromised routers, or spoofed DHCP responses. Because DNS sits in front of nearly every network connection and standard DNS does not authenticate responses, a single compromised resolver can affect every application on a device or every device on a network, potentially leading to credential theft, malware delivery, and traffic interception. Organizations can detect and mitigate rogue DNS servers by comparing actual client resolvers against DHCP assignments, monitoring DNS traffic destinations, implementing DHCP snooping and egress filtering rules, and maintaining accurate inventories of authorized resolvers.
不正なDNSサーバーの仕組み
不正なDNSサーバーは、そのサーバーにクエリを送信するクライアントにのみ影響を与えるため、この攻撃はデバイスに誤ったリゾルバーを使用させることに焦点を当てています。一度それが実現すると、サーバーはクライアントが受け取る応答を制御できるようになります。
- リゾルバーの変更:攻撃者は、クライアントに不正なサーバーを使用させます。一般的な手法には、リゾルバーの設定を改ざんするマルウェア、侵害された家庭用またはオフィス用ルーター、あるいは攻撃者のDNSアドレスを割り当てる不正なDHCPサーバーなどが含まれます。
- クエリの送信:クライアントは、銀行やメールサイトなどの名前に対して通常のDNSクエリを、設定されたリゾルバー(この時点では不正なサーバーとなっている)に送信します。
- 偽造された応答:不正なサーバーは、正当なIPアドレスの代わりに、自身が制御するIPアドレスを返答します。その他の名前については、クエリを上位のサーバーに転送することで、ほとんどのブラウジングが通常通り見えるようにする場合もあります。
- 攻撃者のホストへの接続:クライアントは返されたアドレスに接続します。これにより、攻撃者はなりすましページを表示して認証情報を盗み出したり、マルウェアを配信したり、広告を挿入したりすることが可能になります。
標準のDNSでは応答の認証が行われないため、クライアントは通常、その応答が偽物であることを認識できません。DNSSECによる検証により、署名付きゾーンに対する偽造された応答を検出することは可能ですが、それはクライアントまたはその信頼できるリゾルバーが検証を実行した場合に限られます。
悪質なDNSサーバーに関する一般的な問題
オフィスのポートに接続された一般向けルーターなど、LAN上のデバイスがDHCPリクエストに応答し、自身のDNSアドレスを割り当てます。影響を受けたクライアントのリースには異なるリゾルバーが表示されますが、同じVLAN上の他のクライアントは正常に見えるため、この問題は断続的に発生しているように見えます。
デフォルトまたは脆弱な管理者パスワードが設定されたルーターが侵害されると、そのアップストリームDNSエントリが書き換えられます。そのルーターの背後に接続されているすべてのデバイスは、攻撃者経由でDNS解決を行うことになり、この変更は多くの場合、クライアントの再起動後も維持されます。
この不正なサーバーは、ほとんどのドメイン名に対して正しく応答し、銀行や更新関連のドメインなど、ごく一部のドメイン名のみを偽装します。定期的なチェックでは問題がないように見えるため、この問題は特定のサイトでの証明書警告や更新の失敗としてのみ現れます。
不正なリゾルバーを使用しているクライアントは、内部ホスト名を解決できないか、誤った回答が返されることがあります。サポートチケットの報告によると、パブリックサイトは正常に読み込まれる一方で、イントラネットやディレクトリサービスが機能しなくなるという事例があります。
任意の外部サーバーへのアウトバウンドDNS通信が許可されているため、独自のリゾルバーを設定するマルウェアは検知されません。フローデータやファイアウォールのログには、見慣れないアドレスへのポート53のトラフィックが記録されていますが、これについて警告は発生しません。