ドメイン生成アルゴリズム(DGA)は、様々な マルウェア ファミリーに見られるアルゴリズムで、コマンド&コントロールサーバー とのランデブーポイントとして使用できる多数のドメイン名を 定期的に生成するために使用されます。ランデブーポイントの数が膨大であるため、感染したコンピュータはアップデートやコマンドを受信するために毎日これらのドメイン名の一部に接続しようとするため、法執行機関がボットネットを 効果的に停止することは困難です。マルウェアコードに公開鍵暗号が使用されているため、一部のワームはマルウェアコントローラによって 署名され ていないアップデートを自動的に拒否するため、法執行機関やその他の関係者がマルウェアコントローラからのコマンドを模倣することは不可能です。
例えば、感染したコンピュータは、www.<意味不明な文字列>.com のようなドメイン名を何千個も作成し、アップデートやコマンドを受信する目的で、これらのドメイン名の一部に接続を試みる可能性がある。
マルウェアの難読化されていないバイナリに、以前に(コマンドおよびコントロールサーバーによって)生成されたドメインのリストの代わりにDGAを埋め込むことで、企業内の感染ホストからの送信通信を制限しようとして、ネットワークブラックリストアプライアンスに事前に入力される可能性のある文字列ダンプから保護されます。
この手法は、当初は1日に250個のドメイン名を生成していたConficker.a および.bというワームファミリーによって普及しました。Conficker.C以降、このマルウェアは毎日50,000個のドメイン名を生成し、そのうち500個に接続を試みます。マルウェアの管理者が1日に1つのドメインしか登録しない場合、感染したマシンが毎日更新される可能性は1%になります。感染したコンピュータがマルウェアを更新するのを防ぐには、法執行機関は毎日50,000個の新しいドメイン名を事前に登録する必要がありました。ボットネットの所有者の視点からすると、各ボットが毎日問い合わせる複数のドメインのうち、1つまたは数個のドメインを登録するだけで済みます。
最近では、この手法は他のマルウェア作成者にも採用されている。ネットワークセキュリティ企業Damballaによると、2011年時点で最も普及しているDGAベースの 犯罪ウェア ファミリー上位5つはConficker、Murofet、BankPatch、Bonnana、Bobaxである。[ 1 ]
DGAは辞書 から単語を組み合わせてドメインを生成することもできます。これらの辞書はマルウェアにハードコードされている場合もあれば、公開されているソースから取得されている場合もあります。[ 2 ] 辞書DGAによって生成されたドメインは、正規のドメインと似ているため、検出がより困難になる傾向があります。
例 def generate_domain ( year : int , month : int , day : int ) -> str : """指定された日付のドメイン名を生成します。""" domain = "" for i in range ( 16 ): year = (( year ^ 8 * year ) >> 11 ) ^ (( year & 0xFFFFFFF0 ) << 17 ) month = (( month ^ 4 * month ) >> 25 ) ^ 16 * ( month & 0xFFFFFFF8 ) day = (( day ^ ( day << 13 )) >> 19 ) ^ (( day & 0xFFFFFFFE ) << 12 ) domain += chr ((( year ^ month ^ day ) % 25 ) + 97 ) ドメイン + ".com" を返します 例えば、2014年1月7日にはこの方法でドメイン名が生成されintgmxdeadnxuyla.com、翌日にはが返されます。この単純な例は、より高度な亜種に移行する前に、 CryptoLocker axwscwsslmiagfah.comのようなマルウェアによって実際に使用されていました。
参考文献 ↑ 「最も普及しているDGAベース の 犯罪ウェアファミリー上位5つ」(PDF) 。Damballa。p . 4。2016年4月3日にオリジナル(PDF) からアーカイブ済み。 ↑ Plohmann, Daniel; Yakdan, Khaled; Klatt, Michael; Bader, Johannes; Gerhards-Padilla, Elmar (2016). "ドメイン生成マルウェアの包括的な測定研究" (PDF) . 第25回 USENIX セキュリティ シンポジウム : 263–278 . ↑ Shateel A. Chowdhury、「マルウェアにおけるドメイン生成アルゴリズム – DGA」、2024年1月30日。 ↑ Kührer, Marc; Rossow, Christian; Holz, Thorsten (2014), "Paint It Black: Evaluating the Effectiveness of Malware Blacklists" (PDF) , in Stavrou, Angelos; Bos, Herbert; Portokalidis, Georgios (eds.), Research in Attacks, Intrusions and Defenses , vol. 8688, Springer International Publishing, pp. 1– 21, doi : 10.1007/978-3-319-11379-1_1 , ISBN 9783319113784 2019年3月15日 取得↑ Antonakakis, Manos; et al. (2012). "使い捨てトラフィックからボットへ:DGAベースのマルウェアの台頭の検出" . 21st USENIX Security Symposium : 491– 506. ↑ Curtin, Ryan; Gardner, Andrew; Grzonkowski, Slawomir; Kleymenov, Alexey; Mosquera, Alejandro (2018). "Detecting DGA domains with recurrent neural networks and side information". arXiv : 1810.02023 [ cs.CR ]. ↑ Pereira, Mayana; Coleman, Shaun; Yu, Bin; De Cock, Martine; Nascimento, Anderson (2018)、 「受動型DNSトラフィックにおけるアルゴリズム生成ドメイン名の辞書抽出と検出」 (PDF) 、 「攻撃、侵入、防御に関する研究」 、Lecture Notes in Computer Science、vol. 11050、Springer International Publishing、pp. 295–314 、 doi : 10.1007/978-3-030-00470-5_14 、 ISBN 978-3-030-00469-9 2019年3月15日 取得↑ Woodbridge, Jonathan; Anderson, Hyrum; Ahuja, Anjum; Grant, Daniel (2016). "Predicting Domain Generation Algorithms with Long Short-Term Memory Networks". arXiv : 1611.00791 [ cs.CR ]. ↑ Yu, Bin; Pan, Jie; Hu, Jiaming; Nascimento, Anderson; De Cock, Martine (2018). "DGAドメイン名の文字レベルに基づく検出" (PDF) . 2018 International Joint Conference on Neural Networks (IJCNN) . リオデジャネイロ: IEEE. pp. 1– 8. doi : 10.1109/IJCNN.2018.8489147 . ISBN 978-1-5090-6014-6 . S2CID 52398612 . ↑ Koh, Joewie J.; Rhodes, Barton (2018). "Inline Detection of Domain Generation Algorithms with Context-Sensitive Word Embeddings". 2018 IEEE International Conference on Big Data (Big Data) . Seattle, WA, USA: IEEE. pp. 2966–2971 . arXiv : 1811.08705 . doi : 10.1109/BigData.2018.8622066 . ISBN 978-1-5386-5035-6 . S2CID 53793204 . ↑ Anderson, Hyrum; Woodbridge, Jonathan; Bobby, Filar (2016). "DeepDGA: 敵対的に調整されたドメイン生成と検出". arXiv : 1610.01969 [ cs.CR ]. ↑ Sidi, Lior; Nadler, Asaf; Shabtai, Asaf (2019). "MaskDGA: DGA分類器と敵対的防御に対するブラックボックス回避技術". arXiv : 1902.08909 [ cs.CR ].
さらに読む Phillip Porras 、Hassen Saidi、Vinod Yegneswaran (2009年3月19日)。「Confickerのロジックとランデブーポイントの分析」。マルウェア脅威センター 。SRIインターナショナル コンピュータサイエンス研究所。 2013年6月14日 取得 。{{cite web}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク)ルシアン・コンスタンティン ( 2012-02-27 ) 「マルウェア作成者が検出回避のためドメイン生成アルゴリズムの使用を拡大」 PC World。2013-06-14 閲覧 。Hongliang Liu、Yuriy Yuzifovich (2017-12-29)。「ドメイン生成アルゴリズムのデスマッチ」。Akamai Technologies。2019-03-15に 取得 。 サイバー犯罪者の手に渡ったDGA ― マルウェア回避技術の最先端を検証する DGAとサイバー犯罪者:事例研究 犯罪者が不正ネットワークをいかにして守るか、Abuse.ch