ドメイン生成アルゴリズムの例としては、Conficker ワームの DGA があります。これは、コマンド & コントロールインフラ用に多数の固有ドメイン名を生成するために使用されました。
ドメイン生成アルゴリズム(DGA)は、多数の新しいドメイン名を生成するプログラムです。サイバー犯罪者やボットネットオペレーターは、ドメイン生成アルゴリズムを使用して、マルウェア攻撃を開始するために使用するドメインを頻繁に変更します。この技術により、ハッカーは特定のドメイン名と静的 IP アドレスをブロックするマルウェア検知ソリューションを回避できます。
サイバー犯罪者がドメイン生成アルゴリズムを使用する理由
攻撃者は、企業の IT 環境内の多数のコンピューターやデバイスをマルウェアに感染させます。マルウェアに感染したマシンやボットにコマンドを発行し、コマンド & コントロールサーバー(C2 サーバー)を使用して情報を収集することができます。このサーバーは通常、侵害されたシステム内でホストされているマシンでもあります。このボットネットワーク(ボットネット)は、スパムの伝播、機微な情報の窃取、分散型サービス妨害(DDoS)キャンペーンやその他のサイバー攻撃に利用できます。
このような悪性の活動を防止するために、 サイバーセキュリティサービスやソリューション は C2 サーバーと感染デバイス間の通信に関与するマシンと Web サイトの IP アドレスを特定し、ネットワーク・セキュリティ・プロバイダーから取得した脅威インテリジェンスに基づいて、その IP アドレスとの間で送受信されるトラフィックをブロックしようとします。攻撃を継続するために、サイバー犯罪者は頻繁にドメインを切り替えて、ブロックリスト、署名フィルター、セキュリティゲートウェイ、レピュテーションシステム、侵入防止システム、その他のセキュリティテクノロジーによる検知を回避します。
DGA を使用して多数のドメイン名を生成することで、サイバー犯罪者は迅速にドメインを切り替えて、検知エンジンが対応し続けることを困難にすることができます。
ドメイン生成アルゴリズムの仕組み
ドメイン生成アルゴリズムは、文字列を使用して数千ものドメイン名を迅速に生成するアプリケーションであり、攻撃者が C2 サーバーと通信できるランデブーポイントとして機能します。このアルゴリズムでは、1 日あたり数万の DGA ドメイン名を生成でき、そのほとんどは未登録です。ハッカーは未登録のドメインを使用して登録済みドメインを隠し、署名と IP レピュテーションを使用する検査エンジンによる検知を回避しやすくします。このアルゴリズムは、クライアント側とソース側の両方で実行されます。攻撃者と C2 サーバーの両方に知られているシードから始まり、そのどちらも、生成されるドメインと、マルウェアの通信チャネルとして機能するように登録されるドメインを知ることができます。そのドメインがセキュリティシステムによって特定され、ブロックされた場合、攻撃者はすぐに次のドメインに切り替えて C2 サーバーとの接続を維持し、ハッカーとマルウェアまたはボットネットの両方が把握しているパターンに従います。
DGA の種類
ハッカーはさまざまなタイプの DGA を開発して、検知を回避しながら悪性のドメインを作成する能力を高めています。
- 擬似ランダム番号生成(PRNG)DGA は最も一般的な方法であり、ランダムシード(多くの場合、システムの日付と時刻)を使用して、攻撃者とマルウェアの両方が予測できるドメインシーケンスを生成します。
- 文字ベースの DGA では、ランダムシードを使用して、文字または数字でドメイン名を生成します。この DGA は最も検知しやすいものです。
- 辞書ベースの DGA は、単語をランダムに組み合わせて、読み取り可能であるように見えるドメインを生成します。正当なドメインのように見えるため、セキュリティシステムによる検知は困難です。
- 衝突率の高い DGA は、正当なドメイン名のように見えるように設計されており、.com、.net、.org などのトップレベルドメイン(TLD)と組み合わされています。衝突率の高い DGA で生成されたドメインはすでに登録されている可能性が高く、「衝突」を引き起こして検知プロセスを混乱させます。
DGA ドメインの検知方法
組織はマルウェアを防止するための手順で DGA も防止できます。ドメイン生成アルゴリズムはマルウェアを発展させるために使用されるため、ほとんどのマルウェア対策ソリューションでこの脅威に対する基本的な防御が提供されています。ベストプラクティスには次のようなものがあります。
- 最適な頻度でパッチを適用してソフトウェアを更新し、攻撃者がソフトウェアの脆弱性を悪用して防御を突破し、マルウェアをインストールするのを防ぎます。
- セキュリティ意識向上トレーニングを実施して、マルウェア攻撃に関与している可能性のある悪性のリンク、Web サイト、電子メールをユーザーが認識できるようにします。
- URL フィルタリングを使用して、悪性であることが判明している Web サイトにユーザーがアクセスしたり、リンクをクリックしたりしないようにします。
- セキュリティソリューションを展開して、悪性の添付ファイルを開いたり、添付文書のマクロを有効にしたりするユーザーの能力を制限します。
- DNS トラフィックを使用する C2 サーバーとマルウェア間の通信を識別しブロックすることによって DGA の検知を支援する DNS セキュリティソリューションを選択します。これを行わなければ、多くの場合、DNS トラフィックは検査なしでファイアウォールを通過します。
- 機械学習とビッグデータを使用して異常なアクティビティを特定し悪性のサイトを閉鎖させる DGA 対策テクノロジーを展開します。
よくある質問(FAQ)
ドメイン生成アルゴリズムで使用され得る 3 つの要素は、時間、ランダムシード、数学的計算です。
DGA は感染したマシンとの通信に使用されるドメインを頻繁に変更でき、セキュリティ研究者や法執行機関がインフラを追跡して停止させることが困難になるため、サイバー犯罪者にとって有用です。
ドメイン生成アルゴリズムと単語リストの主な違いは、DGA は特定の要因に基づいてアルゴリズム的にドメイン名を生成するのに対し、単語リストはマルウェアやボットネットが通信目的で使用できる、事前に定義されたドメイン名の静的なリストであることです。DGA は、単語リストと比較して、変動性と予測不可能性が高いです。
Akamai が選ばれる理由
Akamai はサイバーセキュリティとクラウドコンピューティングを提供することで、オンラインビジネスの力となり、守っています。当社の市場をリードするセキュリティソリューション、優れた脅威インテリジェンス、グローバル運用チームによって、あらゆる場所でエンタープライズデータとアプリケーションを保護する多層防御を利用いただけます。Akamai のフルスタック・クラウド・コンピューティング・ソリューションは、世界で最も分散されたプラットフォームで高いパフォーマンスとコストを実現しています。多くのグローバルエンタープライズが、自社ビジネスの成長に必要な業界最高レベルの信頼性、拡張性、専門知識の提供について Akamai に信頼を寄せています。