DNSトンネリングとは|DNS通信を悪用した情報漏えい手法と対策を理解する

DNSトンネリングとは

DNSトンネリングとは

DNSはインターネット上で最も利用されるプロトコルの一つです。

多くの企業ではWebアクセスを制限していても、DNS通信は許可していることが一般的です。

そのDNSの特性を悪用した攻撃手法がDNSトンネリングです。

DNSトンネリングはDNS問い合わせの中へデータを埋め込み、通常のDNS通信に見せかけながら情報を送受信する技術です。

企業ネットワークからの情報漏えいやマルウェア通信に利用されることが多く、近年ではセキュリティ対策上重要な知識となっています。

本記事ではDNSトンネリングの仕組みや危険性、防御策について解説します。

DNSトンネリングとは

DNSトンネリングとは、DNSプロトコルを利用して任意のデータを送受信する技術です。

本来DNSは名前解決を行うための仕組みですが、問い合わせ内容へデータを埋め込むことで通信路として利用できます。


DNS
↓
名前解決
↓
本来の用途

これを別用途へ転用したものがDNSトンネリングです。

トンネリングとは

トンネリングとは、本来の用途とは異なるデータを別のプロトコルへ埋め込んで通信する技術です。


データ
↓
別プロトコルへ格納
↓
通信

VPNなどでも利用される考え方です。

なぜDNSが利用されるのか

DNSは多くの環境で通信が許可されています。


UDP/53
TCP/53

ファイアウォールでも許可されていることが多いためです。

DNSトンネリングの仕組み

攻撃者はDNS問い合わせのサブドメイン部分へデータを埋め込みます。


secret-data.attacker.com

この問い合わせが攻撃者管理のDNSサーバへ届きます。

攻撃の流れ


感染端末
↓
データ埋め込み
↓
DNS問い合わせ
↓
攻撃者DNS
↓
データ取得

情報漏えいが発生します。

情報漏えいの例

例えばパスワード情報を送信するケースです。


password123.attacker.com

攻撃者はDNSログから内容を取得できます。

マルウェアとの関係

DNSトンネリングはマルウェアの通信路としても利用されます。


マルウェア
↓
DNS通信
↓
C&Cサーバ

外部からの制御が可能になります。

C&Cサーバとは

Command and Control Server の略です。

攻撃者が感染端末を遠隔操作するためのサーバです。

双方向通信も可能

DNSトンネリングは情報送信だけではありません。

DNS応答を利用して命令を返すことも可能です。


感染端末
↓
問い合わせ
↓
攻撃者
↓
応答で命令送信

双方向通信が成立します。

利用されるレコード

主にTXTレコードが利用されます。


TXT

自由な文字列を格納できるためです。

TXTレコード利用例

server.example.com IN TXT "command"

命令やデータを格納できます。

DNSトンネリングツール

代表的なツールとして以下があります。

  • Iodine
  • Dnscat2
  • OzymanDNS
  • Heyoka

セキュリティ研究でも利用されます。

企業にとってのリスク

  • 機密情報漏えい
  • マルウェア通信
  • 内部情報流出
  • 検知回避

重大なセキュリティ事故につながります。

検知が難しい理由

DNS通信そのものは正常に見えるためです。


通常DNS
↓
名前解決

DNSトンネリング
↓
情報送信

見分けにくい特徴があります。

不審な特徴

  • 異常に長いホスト名
  • 大量のTXT問い合わせ
  • ランダム文字列
  • 問い合わせ頻度増加

監視ポイントになります。

ログ確認方法

# journalctl -u named

DNSログを確認します。

BINDのクエリログ

logging {
    channel query_log {
        file "/var/log/query.log";
    };
};

問い合わせ内容を記録できます。

パケットキャプチャ

# tcpdump -ni any port 53

DNS通信を分析できます。

防御策① DNSログ監視

異常な問い合わせを監視します。

  • 長いドメイン名
  • 大量問い合わせ
  • 未知ドメイン

早期発見につながります。

防御策② DNSフィルタリング

不審なドメインへの問い合わせを遮断します。

セキュリティ製品で実装されていることがあります。

防御策③ 外部DNS制限

利用可能なDNSサーバを限定します。


社内DNSのみ利用

監視しやすくなります。

防御策④ IDS/IPS導入

DNSトンネリング検知機能を利用します。

異常通信を発見できます。

防御策⑤ SIEM活用

DNSログを集約して分析します。

長期的な傾向把握に有効です。

企業で実施すべき対策

  • DNSログ保存
  • DNS通信監視
  • 外部DNS制限
  • IDS/IPS導入
  • SIEM活用

複数の対策を組み合わせます。

実務で覚えておきたいポイント

  • DNSトンネリングはDNSを通信路として利用する技術である
  • 情報漏えいに悪用される
  • マルウェア通信に利用される
  • TXTレコードが悪用されやすい
  • DNSログ監視が重要である
  • 異常なドメイン名は注意が必要である

まとめ

DNSトンネリングはDNSプロトコルを悪用して情報を送受信する技術です。

企業ネットワークではDNS通信が許可されていることが多く、情報漏えいやマルウェア通信の手段として利用される危険があります。

DNSログ監視や外部DNS制限、IDS/IPSによる検知を組み合わせることでリスクを低減できます。

DNSサーバ運用者やセキュリティ担当者は、DNSトンネリングの仕組みと対策を理解しておくことが重要です。