DNS トンネリングとは何か、および攻撃を検出および防止する方法

DNSトンネルとは何ですか?

DNS トンネリングは、DNS クエリおよび応答内の他のプロトコルまたはプログラムからの情報をエンコードする DNS 攻撃手法です。DNS トンネルには多くの場合、ターゲット DNS サーバーをロックダウンする可能性のあるデータ ペイロードが含まれており、攻撃者がアプリケーションやリモート サーバーを管理できるようになります。 

DNS トンネリングは多くの場合、侵害されたシステムの外部ネットワーク接続に依存します。DNS トンネリングには、ネットワーク アクセスのある内部 DNS サーバーへの経路が必要です。攻撃者は、データ ペイロードの実行可能ファイルとサーバー側のトンネリングを実行するための権限のあるサーバーとして機能できるサーバーとドメインも制御する必要があります。 

DNSトンネリングの影響

DNS はもともとデータ交換ではなく名前解決のために作成されたため、一般にデータ侵害や悪意のある情報交換のリスクとは考えられていません。ほとんどの組織は、ネットワークと電子メールのトラフィックを通常の攻撃源と見なしているため、セキュリティへの取り組みを重点的に行っています。したがって、DNS は見落とされがちです。 

DNS は秘密で深く根付いたプロトコルであるため、多くの組織が DNS パケットの悪意のある動作を定期的に調査していないという事実をサイバー犯罪者が利用する可能性があります。 

これに加えて、トンネリング アプリケーション パッケージは今や産業となっており、インターネット経由で広くアクセス可能です。攻撃者は、DNS トンネリング攻撃を実行するために特に高度な知識を必要としません。

DNS トンネリングの脆弱性によってもたらされる脅威には次のものがあります。

DNS トンネリングの脆弱性は、盗まれた情報を抜き出すためのアクセス可能なバック チャネルを攻撃者に提供する可能性があります。DNS は、ファイアウォールをバイパスする秘密の通信手段を提供します。

サイバー犯罪者は、DNS を介してさまざまな種類のプロトコル (HTTP や SSH など) を確立し、盗んだデータを秘密裏に渡したり、IP トラフィックを渡したりすることができます。 

DNS トンネルは、悪用された内部ホストの完全なコントローラー チャネルとして使用できます。これにより、サイバー犯罪者はコードをマルウェアにダウンロードしたり、組織から秘密裏に記録を取得したり、サーバーへの完全なリモート アクセスなどを行うことが可能になります。

DNS トンネリングを使用してキャプティブ ポータルをバイパスすることもできるため、Wi-Fi サービスの料金を支払う必要がなくなります。

DNS トンネリングは、DNS プロトコルを使用して、クライアント/サーバー モデルを通じて情報とマルウェアをトンネリングします。

典型的な虐待ケースには次のようなものがあります。

データ侵害: サイバー犯罪者は DNS 経由で機密情報を抽出します。余分なコーディングとオーバーヘッドを考慮すると、これは被害者の PC からデータを取得する最も効率的な方法ではありませんが、機能します。

コマンド アンド コントロール (C2): サイバー犯罪者は、DNS プロトコルを利用して、リモート アクセス トロイの木馬 (RAT) のインストールなどの単純なコマンドを送信します。

IP-over-DNS トンネリング: 一部のユーティリティは、DNS クエリ応答規則を通じて IP スタックを実装している場合があります。これらにより、悪意のある行為が容易になります。

DNSトンネリングの仕組み

DNS トンネリングは、DNS プロトコルを利用して、クライアント/サーバー モデルを通じてマルウェアと異種データを送信します。これには通常、次の手順が含まれます。

1. サイバー犯罪者は、malsite.com などのドメイン名を登録します。ドメインのネーム サーバーは、トンネリング マルウェアがインストールされているサイバー犯罪者のサーバーを指していました。 

2. サイバー犯罪者は、組織のファイアウォールを通過するマルウェアをコンピュータに感染させます。DNS 要求は常にファイアウォールの内外で許可されるため、感染したコンピューターは DNS リゾルバーにクエリを送信できます。次に、DNS リゾルバーは、IP アドレスの要求をトップレベル ドメイン サーバーとルート ドメイン サーバーに送信します。 

3. DNS リゾルバーは、トンネリング プロセスを実装するサイバー犯罪者のサーバーにクエリをルーティングします。このようにして、DNS リゾルバーを介してサイバー犯罪者と被害者の間に接続が確立されます。攻撃者は、情報の流出などの悪意のある目的でこのトンネルを悪用する可能性があります。サイバー犯罪者と被害者の間には直接的なつながりがないため、サイバー犯罪者のコンピュータを追跡することがより困難になります。 


DNS トンネルを検出するための 5 つの技術とツール

1. 異常検知

異常検出は、潜在的な DNS トンネルを特定するための強力なツールです。この方法には、DNS トラフィックを監視し、標準から逸脱したパターンや動作を探すことが含まれます。特定の DNS 要求または応答が異常に見える場合は、DNS トンネリングの兆候である可能性があります。

たとえば、DNS クエリに異常に大量のデータが含まれている場合、または特定のソースからの DNS リクエストの数が過剰な場合、これは DNS トンネリング アクティビティを示している可能性があります。ただし、ここでの課題は、「通常の」動作を定義することです。これは、ネットワークの性質とその一般的な用途に応じて大幅に変わる可能性があります。

2. ペイロード分析

ペイロード分析には、DNS クエリおよび応答で送信される実際のデータの検査が含まれます。トンネル シナリオで送信されるデータは通常の DNS クエリまたは応答のデータとは大きく異なることが多いため、これは DNS トンネルを検出する非常に効果的な方法となります。

ただし、ペイロード分析はリソースを非常に大量に消費する可能性があります。これには、かなりの処理能力とストレージ容量に加えて、DNS プロトコルとデータ構造に関する高度な知識が必要です。さらに、暗号化されたペイロードは解析が難しい場合があるため、場合によってはこの方法の効果が低下します。

3. レート制限

レート制限は、一定期間内に特定のソースから発行される DNS クエリの数を制限する技術です。クエリ レートを制限することで、攻撃者が DNS トンネリングを使用してデータを盗んだり、不正アクセスを取得したりすることがより困難になるという考えです。

これは多くの状況で効果的なアプローチですが、欠点もあります。積極的なレート制限は、正規の DNS トラフィックに干渉し、ネットワーク パフォーマンスに悪影響を与える可能性があります。また、DNS トンネルを完全にブロックするわけではなく、速度が低下するだけです。

4. 侵入検知システム (IDS)

侵入検知システム (IDS) は、ネットワーク トラフィックを監視して悪意のあるアクティビティの兆候がないかを監視するセキュリティ ソフトウェアの一種です。多くの IDS ソリューションは、DNS トンネルのアクティビティを示すパターンや動作を検索することで、DNS トンネルを検出できます。

IDS は DNS トンネルを検出するための貴重なツールですが、万能薬ではありません。他の検出方法と同様に、限界があり、誤検知の可能性があります。さらに、IDS の有効性は、脅威の検出に使用されるルールとシグネチャによって決まります。IDS が最新の脅威情報に更新されていないと、その有効性が大幅に低下する可能性があります。

5.DNS監視ツール

最後に、DNS トラフィックを監視し、DNS トンネルを検出するために特別に設計された特殊なツールが多数あります。これらのツールは通常、上記の方法のいくつかを 1 つのパッケージに組み合わせて、DNS トンネルを検出するためのより包括的なソリューションを提供します。これらのツールは非常に効果的ですが、効果的に使用するには一定レベルの専門知識も必要です。

DNS トンネリング攻撃を防ぐためのベスト プラクティス

DNS トンネリング攻撃を防ぐには、技術的要因と人的要因を組み合わせた多面的なアプローチが必要です。ここでは、組織がそのような攻撃からネットワークを保護するのに役立つベスト プラクティスをいくつか紹介します。

DNSトラフィックを定期的に監視する

DNS トラフィックの継続的な監視は、DNS トンネリング攻撃に対する防御の第一線です。異常に多数の DNS クエリ、大量の DNS テキスト レコード、未知のドメインまたは疑わしいドメインに対する DNS リクエストなどの異常を探します。高度な脅威検出ソリューションは、このプロセスの自動化に役立ち、リアルタイムの監視とアラートを提供します。

DNS セキュリティ拡張機能 (DNSSEC) を実装する

DNSSEC は、DNS プロトコルにセキュリティ層を追加する一連の拡張機能です。デジタル署名を使用して DNS データの信頼性を検証し、なりすましやその他の DNS ベースの攻撃を防ぎます。ただし、DNSSEC は DNS パケットのペイロードを検査しないため、DNS トンネルを直接ブロックしません。ただし、他の対策と組み合わせて、全体的な DNS セキュリティを強化することができます。

ファイアウォールルールを利用する

ファイアウォールは、許可された DNS サーバー以外のすべての発信 DNS トラフィックをブロックするように構成できます。これは、悪意のある攻撃者が DNS サーバーと通信する能力を制限することで、DNS トンネリング攻撃を防ぐのに役立ちます。さらに、ファイアウォールを使用して DNS トラフィックを検査およびフィルタリングし、疑わしい DNS クエリや応答をブロックすることもできます。

不要なDNSクエリを制限またはブロックする

不要な DNS クエリをブロックまたは制限すると、DNS トンネルの攻撃対象領域を減らすことができます。これには、存在しないドメインに対する DNS クエリのブロックや、単一ソースからの DNS クエリのレート制限が含まれます。DNS サーバーは、TXT レコードや NULL レコードなど、DNS トンネルで一般的に使用される特定のレコード タイプのクエリを拒否するように構成できます。

定期的なパッチとアップデート

システム、ソフトウェア、ネットワーク デバイスを常に最新の状態に保つことは、サイバーセキュリティの重要な側面です。定期的にパッチを適用すると、DNS トンネリング攻撃に悪用される可能性のある脆弱性を防ぐことができます。セキュリティ パッチはリリースされたらすぐに適用する必要があり、更新プログラムは展開前にテストして、新しい脆弱性が生じないことを確認する必要があります。

おすすめ

転載: blog.csdn.net/qq_29607687/article/details/132657557