2つの高リスクな脆弱性を攻撃する新型ボットネット「RondoDox」

文●フォーティネットジャパン 編集●ASCII

提供: フォーティネットジャパン

  • この記事をはてなブックマークに追加
  • 本文印刷

本記事はフォーティネットジャパンが提供する「FORTINETブログ」に掲載された「RondoDoxの出現:新型ボットネット攻撃の分析」を再編集したものです。

影響を受けるプラットフォーム:TBK DVR-4104、TBK DVR-4216
               Four-FaithルーターF3x24モデル
               Four-FaithルーターF3x36モデル
影響を受けるユーザー    :あらゆる組織
影響            :リモートの攻撃者による脆弱なシステムの乗っ取り
深刻度           :高

 過去1ヵ月間、FortiGuard Labsはスキャン行為の急増を観測しており、これには2つの高リスクな脆弱性、CVE-2024-3721CVE-2024-12856を悪用する新しいボットネットキャンペーンも含まれています。どちらの脆弱性も一般に公開され、積極的な攻撃の対象とされているため、デバイスのセキュリティやネットワーク全体の完全性に対して深刻なリスクをもたらします。

図1:IPSテレメトリ

 攻撃を行うボットネットは、RondoDoxと名付けられました。MiraiやGafgytなどの広く知られた亜種とは異なり、RondoDoxは比較的新しく目立たない脅威です。FortiGuard Labsがこれと同様のELFバイナリを初めて確認したのは2024年9月でした。注目すべきは、RondoDoxがカスタムライブラリを組み込んでおり、ゲームプラットフォームやVPNサーバーからのトラフィックを偽装して検知を回避する点です。

脆弱性の詳細

 CVE-2024-3721は、2024年4月12日時点において、TBK製DVRのDVR-4104およびDVR-4216モデルなどに影響を与える重大な脆弱性です。この脆弱性は、/device.rsp?opt=sys&cmd=___S_O_S_T_R_E_A_MAX___パスの不適切な処理に起因しています。このパスでmdbおよびmdcパラメータを操作することで、OSコマンドの注入が可能になります。エクスプロイトに成功すると、リモートの攻撃者は被害を受けたデバイスで任意のコマンドを実行できます。

図2:CVE-2024-3721のエクスプロイトトラフィック

 CVE-2024-12856は、Four-Faith製ルーターのF3x24およびF3x36モデルに影響を与えます。この脆弱性により、認証されたリモート攻撃者は、システム時刻を変更する際にapply.cgiインタフェースを悪用することで、任意のOSコマンドをHTTP経由で実行できます。

図3:CVE-2024-12856のエクスプロイトトラフィック

ダウンローダーの分析

 RondoDoxは当初、ARMおよびMIPSアーキテクチャ上で動作するLinuxベースのオペレーティングシステムを標的にして配信されていました。しかし、最近の調査では新たなシェルスクリプトダウンローダーが確認されており、このマルウェアはIntel 80386、MC68000、MIPS R3000、PowerPC、SuperH、ARCompact、x86-64、AArch64など広範囲にわたるLinuxアーキテクチャを攻撃できるようになったと考えられます。

図4:「RondoDox」ダウンローダーのシェルスクリプト

 このシェルスクリプトは、まず、被害者側のホストに対し、SIGTTOU、SIGTTIN、SIGTSTP、SIGHUP、SIGPIPE、SIGINT、SIGQUIT、SIGTERMなど複数の信号を無視するよう指示します。
次に、/dev、/dev/shm、被害者のホームディレクトリ、/mnt、/run/user/0、/var/log、/var/run、
/var/tmp、/data/local/tmpなどの書き込み可能なパスを確認し、/proc/mountsのリストでnoexecフラグを設定せずにマウントされているものがないかを調べます。最後に、/tmp内にlibディレクトリを作成し、「RondoDox」マルウェアをダウンロードして実行し、検知を回避するためにコマンド実行履歴を消去します。

RondoDoxの分析

 当分析では、rondo.x86_64というx86-64アーキテクチャのバイナリを取り上げます。

 RondoDoxマルウェアは、単純なXOR難読化アルゴリズムを使って構成データをエンコードします。構成データには、ファイルパスやツールのファイル名といった要素が含まれます。エンコードされたすべての値は、16進キー0x21を使用して復号できます。

図5:XORでエンコードされた構成

 構成データをデコードした後、RondoDoxは永続化のメカニズムを使って被害者ホスト上に存在し続けます。

図6:ファイル権限とファイルリンクの変更によって適用された永続化メソッド

 RondoDoxは、ファイルの権限とシンボリックリンクを変更することで永続性を確保します。図6のXORでエンコードされた値byte_51D670とbyte_51D6C0は、/etc/init.d/rondoと/etc/rc3.d/S99rondoにそれぞれデコードされます。さらにRondoDoxは、被害者システムで永続化ルーチンを実行するためのシェルスクリプトも埋め込みます。

図7:永続化メソッドを実行する埋め込みシェルスクリプト

 RondoDoxはinitスクリプトを使用するだけでなく、/etc/rcS、/etc/init.d/rcS、/etc/inittabなどのシステム起動ファイル、さらにはユーザーとrootのcrontabエントリにも起動コマンドを追加します。このような多層型の永続化戦略により、1つのメソッドが削除または無効化されても他のメソッドが引き続き有効であるため、ボットネットはシステムの再起動時に自動的に復旧します。

図8:シェルスクリプト以外の永続化メソッド

図9:「etc/init.d/rcS」の起動によって適用された永続化メソッド

 RondoDoxは実行されると、自身のプロセスIDを取得し、システムをスキャンして特定のアプリケーションを探します。そして、ネットワークユーティリティ(wget、curlなど)、システム分析ツール(Wireshar、gdbなど)、または他のマルウェア(クリプトマイナー、Redtailの亜種など)に関連するキーワードを調べます。これらのプロセスを検知した場合は、直ちにそれを終了して分析を回避し、操作のステルス性を維持します。

dhpcd apcid redtail
xmrig miner ps
top htop pstree
lsof netstat ss
wireshark tshark ngrep
dumpcap tcpdump passwd
chpasswd iptables nc
netcat ufw gdb
gdbserver cgdb strace
valgrind stap dtrace
sysdig bpftrace scp
shutdown poweroff halt
reboot 

図10:被害者ホストの環境のチェック

 RondoDoxを分析するなかで、このマルウェアがtmp/contact.txtファイルにEメールアドレス「vanillabotnet@protonmail[.]com」を書き込んでいることに気づきました。ただし、RondoDoxの実行フローやコマンドのロジックでは、このアドレスの使用は確認されていません。

図11:contactファイルへのEメールアドレスの挿入

 次に、RondoDoxは以下のようないくつかの一般的なLinux実行可能ディレクトリをスキャンします。

・/usr/sbin
・/usr/bin
・/usr/local/bin
・/usr/local/sbin

 そして、選択した実行ファイルの名前を、ハードコードされたランダムな文字列に変更します。この動作の目的は、ファイアウォールの構成、ユーザーアカウントの管理、シャットダウン処理といった重要なシステム機能を妨害することです。これらのバイナリを破壊することでシステムの安定性を阻害し、復旧作業を困難にします。

元のファイル名 変更されたファイル名
Iptables jsuJpf
ufw nqqbsc
passwd ahwdze
chpasswd ereghx
shutdown hhrqwk
poweroff dcwkkb
halt cjtzgw
reboot gaajct

図12:実行ファイルの名前をハードコードされた文字に変更

 セットアップルーチンを完了すると、RondoDoxはキー「rondo」を使用してコマンド&コントロール(C2)サーバーのアドレス83[.]150[.]218[.]93をデコードし、サーバーとの接続を開始します。

図13:XORでエンコードされたC2のアドレス

図14:C2との接続を確立

 RondoDoxは、後続のDDoS(分散型サービス拒否)攻撃に使用するコマンドをC2サーバーから受信します。

図15:C2サーバーからのコマンド

 RondoDoxは3つの主要プロトコル、すなわちHTTP、UDP、TCPを使用してDDoS攻撃を開始できます。検知を回避するために、Valve、Minecraft、Dark and Darker、Roblox、DayZ、Fortnite、GTAといった人気のあるゲームやプラットフォームのほか、Discord、OpenVPN、WireGuard、RakNetなどのツールをエミュレートし、悪意のあるトラフィックを隠蔽します。

 例えば、OpenVPNトラフィックに偽装しながら特定の標的を攻撃するためのコマンドをC2サーバーから受信すると、OpenVPNの\x38で始まる「マジックバイト」が含まれたパケットペイロードを作成します(図17)。

 RondoDoxはゲームやチャットプロトコル以外に、WireGuard、OpenVPNのバリアント(openvpnauth、openvpncrypt、openvpntcpなど)、STUN、DTLS、RTCなど、トンネリングやリアルタイム通信サービスからのカスタムトラフィックを模倣することもできます。このような正規のサービスを偽装することで、防御側がそのトラフィックを効果的に識別しブロックするのは著しく困難になります。

図16:悪意のあるトラフィックの偽装

図17:攻撃用トラフィックをOpenVPNトラフィックに偽装

図18:DDoS攻撃の標的との接続を確立

結論

 RondoDoxは、新たに出現した巧妙なマルウェアで、分析回避、構成データのXORエンコード、カスタムライブラリ、強固な永続化メカニズムなど、高度な回避手法を使用しています。これらの機能によって検知を免れ、侵害されたシステム上で長期にわたるアクセスを維持することができます。

 このマルウェアは主として2つの既知の脆弱性、CVE-2024-3721CVE-2024-12856を悪用していることから、影響を受けるシステムには遅滞なくパッチを適用することが求められます。難読化、サービスの偽装、多層的永続化の手法は、RondoDoxの潜在的脅威が増大していることを裏付けています。

 RondoDoxの全容を把握し、実効性のある検知および減災戦略を立てるには、継続的な監視、脅威インテリジェンスの共有、緻密な振る舞い分析が極めて重要です。

フォーティネットのソリューション

 本レポートで説明されているマルウェアは、FortiGuardアンチウイルスで次の名称で検知されブロックされます。

 BASH/RondoDox.A!tr.dldr
 ELF/RondoDox.CTO!tr

 FortiGate、FortiMail、FortiClient、FortiEDRは、FortiGuardアンチウイルスサービスをサポートしています。これらの各ソリューションには、FortiGuardアンチウイルスエンジンが含まれています。したがって、最新の保護機能を備えたこれらの製品をお使いのお客様は、脅威から保護されています。

 FortiGuard Webフィルタリングサービスは、C2サーバーをブロックします。

 FortiGuard Labsは、次の脆弱性を悪用した攻撃に対応するIPSシグネチャを提供しています。

CVE-2024-3721: TBK.DVR.SOSTREAMAX.Command.Injection
CVE-2024-12856: Four-Faith.Routers.adj_time_year.Command.Injection

 また、各組織は、フォーティネットが無償で提供するトレーニングモジュール「FCF Fortinet Certified Fundamentals」を受講することをお勧めします。このモジュールは、エンドユーザーが各種のフィッシング攻撃を識別して自らを保護する方法を学習できるよう設計されています。

 FortiGuard IP ReputationおよびAnti-Botnet Security Serviceは、フォーティネット分散ネットワークから得られた悪意ある送信元のIPデータを一元的に収集することで、これらの攻撃をプロアクティブにブロックします。この分散ネットワークは、脅威センサー、CERT、MITRE、協力関係にある競合他社、その他のグローバルソースなどが連携して、悪意ある送信元に関する最新の脅威インテリジェンスを提供します。

 お客様の組織がRondoDoxやその他のサイバーセキュリティ脅威の影響を受けていると思われる場合、当社のグローバルFortiGuardインシデントレスポンスチームまでご連絡ください。

IOC(Indicators of Compromise:侵害指標)

ホスト
45[.]135[.]194[.]34
83[.]150[.]218[.]93
14[.]103[.]145[.]202
14[.]103[.]145[.]211
154[.]91[.]254[.]95
78[.]153[.]149[.]90

ファイル
ダウンローダー
c88f60dbae08519f2f81bb8efa7e6016c6770e66e58d77ab6384069a515e451c
eb3e2a6a50f029fc646e2c3483157ab112f4f017406c3aabedaae0c94e0969f6
f4cd7ab04b1744babef19d147124bfc0e9e90d557408cc2d652d7192df61bda9

RondoDox
e3c080e322862d065649c468d20f620c3670d841c30c3fe5385e37f4f10172e7
e62df17150fcb7fea32ff459ef47cdd452a21269efe9252bde70377fd2717c10
53e2c2d83813d1284ddb8c68b1572b17cca95cfc36a55a7517bf45ff40828be5
43d4847bf237c445ed2e846a106e1f55abefef5c3a8545bd5e4cad20f5deb9a4
4c2429fc8b8ec61da41cbba1b8184ec45fa93a9841b4ca48094bba7741b826b8
694d729d67f1b0c06702490bfab1df3a96fe040fe5d07efa5c92356c329757be
edae3b75deb8013bd48ac4534cca345b90938a2abb91672467c2bf9ae81ff683
0814a0781ab30fca069a085dba201d6fd0f414498fafa4bb42859786d91d4781
59b4deee977e9e27b60e7e179d54a1ce8e56624e73b799523416eee828bfaf76
9f916a552efc6775367a31357a633dc0be01879830d3fddccdf3c40b26e50afd
0a9ebbecc8ec58c253039520304ca373cfb8d1674d67993e6485e244a77d6ec9
6c81fd73b4bef6fef379cbefdcce7f374ea7e6bf1bf0917cf4ca7b72d4cee788
a55a3859a203ca2bae7399295f92aeae61d845ffa173c1938f938f5c148eef99
57573779f9a62eecb80737d41d42165af8bb9884579c50736766abb63d2835ba
3daa53204978b7797bd53f5c964eed7a73d971517a764785ce3ab65a9423c2e7
8bf8928bc255e73e0b5b0ce13747c64d82d5f2647da129f189138773733ac21f
20a24b179bdbbdcc0053838c0484ea25eff6976f2b8cb5630ab4efb28b0f06b5
42aa715573c7d2fca01914504cb7336db715d73d1e20d23e4bd37f2e4f4fe389
c9278ce988343606350a94156ca28ee28bd605d1d95c810a16866eee1f997598
a197f60d5f5641f2c56576b4c867d141612c6e00db29c512f266835510b8a62d
8250d289c5ec87752cec1af31eed0347cf2dd54dc0fbeea645319c4dae238ee2
d02414a54e97ad26748812002610f1491a2a746e9ba0f9d05de3d47d7bab4f5e
c123a91fdacd9a4c0bcf800d6b7db5162cfd11cb71e260647ef0f2c60978ebfc
ef708fec1afbea4fb32b586e0dacf0d228c375a532008d81453c367256afea5a
305507f34c14c72cab35715b7f7b25b32352a8e19b8a283003aaf539d12ca517
937e6ab0dfcedfa23eced7b52d3899b0847df3fcb7a9c326b71027a7ab5f5b93

■関連サイト