サイバー脅威
2024年末からのDDoS攻撃被害と関連性が疑われるIoTボットネットの大規模な活動を観測
2024年の年末から大規模に活動を行っているIoTボットネットを発見し、そのC&Cサーバから送信されるDDoS攻撃コマンドを観測しました。このIoTボットネットのC&Cサーバからは各国の様々な企業を対象としたDDoS攻撃コマンドが発信されており、攻撃の対象の中には、日本の複数の大企業や銀行が含まれていました。
今回、2024年の年末から大規模に活動を行っているIoTボットネットを発見し、そのC&Cサーバから送信されるDDoS攻撃コマンドを観測しました。このIoTボットネットのC&Cサーバからは各国の様々な企業を対象としたDDoS攻撃コマンドが発信されており、攻撃の対象の中には、日本の複数の大企業や銀行が含まれていました。当社では、観測開始当初よりこのIoTボットネットの活動について情報収集・分析を継続してきました。
この攻撃コマンドとの関連性は現時点の情報では断定はできないものの、攻撃対象となった一部の組織からは、同時期に一時的にWebサービス等の接続障害やネットワーク障害が発生した等の影響が報告・公表されています(本稿の目的は、今回のDDoS攻撃キャンペーンの被害組織を列挙することではないため、ここでは記載をしません)。
本記事では当社にて観測した、このボットネットに送信された攻撃コマンドについてまとめます。また、このボットネットを構成するマルウェア検体の解析結果を報告します。
関連するマルウェアの解析
初期感染
このボットネットは、Mirai と Bashlite (別名Gafgyt、Lizkebabなど) に由来するマルウェアにより構成されたボットネットと考えられます。マルウェアはIoTデバイスのリモートコード実行脆弱性や、初期パスワード等を悪用し、以下の感染段階を経て感染するものと考えられます。
- 攻撃者がリモートコード実行の脆弱性や脆弱なパスワード等を悪用して侵入し、ダウンロードスクリプトを感染ホスト上で実行する。このスクリプトは2段階目の実行ファイル(ローダー)を配布サーバからダウンロードし実行する
- 実行ファイル(ローダー)は、実行ペイロード(マルウェア本体)を配布サーバからHTTPでダウンロードする。この際メモリイメージに実行ペイロードを書き込んで実行することにより、実行ファイルを感染ホスト上に残さない。また、特定のUser-AgentヘッダをHTTPリクエストに設定してアクセスしている。これにより、通常のWebアクセスでは実行ペイロードをダウンロードできないようにしている
- 実行ペイロード(マルウェア本体)は、C&Cサーバに接続し、DDoS 攻撃等のためのコマンドを待ち受ける。コマンドを受信すると、その内容に応じて動作を行う
受信するコマンド
コマンドメッセージはメッセージ長2バイトが先頭に付加された平文のテキストメッセージで、以下の構造をしています。
<メッセージ長2バイト>.<テキストメッセージ部>
テキストメッセージ部は、コマンドと引数をスペース区切りで表記した文字列になっており、例えば、「syn xxx.xxx.xxx.xxx 0 0 60 1」のようなメッセージになります。このコマンドは、xxx.xxx.xxx.xxxで示される攻撃対象IPアドレスのランダムなポート番号(0はランダムという意味)に、SYN Flood攻撃を60秒間行う、という意味になります。
解析の結果、以下の表に示すコマンドが使用される可能性があることが分かりました。今回、解析の結果判明したコマンドからは、このマルウェアに感染したホストが、DDoS攻撃に加担するのみならず、アンダーグラウンドのプロキシサービスの一部として使われる可能性があることが判明しました。
コマンド名 |
意味 |
socket |
大量TCP接続によるDDoS攻撃を行う |
handshake |
大量TCP接続を行い、ランダムデータを送信するDDoS攻撃を行う |
stomp |
Simple Text Oriented Messaging Protocol による DDoS 攻撃を行う (TCP接続後、ランダムペイロードを大量送信する) |
syn |
TCP SYN Flood 攻撃を行う |
ack |
TCP ACK Flood 攻撃を行う |
udph |
UDP Flood 攻撃を行う |
tonudp |
検体内にハードコードされた対象へのUDP Flood攻撃を行う |
gre |
General Router EncapsulationプロトコルによるDDoS攻撃を行う |
update |
マルウェアの実行コードを更新する |
exec |
感染ホスト上でコマンドを実行する |
kill |
マルウェアのプロセスを強制終了する |
socks |
指定したIPアドレスに接続し、感染ホストをSocksプロキシサーバとして使用可能にする (オープンソースのリバースSocksプロキシのコードが使用されている) |
udpfwd |
指定ポートのUDPメッセージを指定した宛先に転送する |
Watchdogタイマーの無効化
該当のマルウェアは、Watchdogタイマー※を無効化します。これはDDoS攻撃実行時に、Watchdogがデバイスの高負荷を検出してデバイスを再起動してしまうことを防ぎます。同様の挙動は、過去に確認されたMiraiの亜種でも確認されています。
※WDT(Watchdog timer)とも呼称。コンピュータシステム上で定期的に起動し、システムが機能し続けていることを確認するタイマー機能を持つプログラム。メインプログラムのハングアップなどの状態を検出する。
Iptables コマンドの使用
このマルウェアは、iptables コマンド※を悪用し、感染発覚を遅らせるためのルールを設定したり、DDoS攻撃に使用するパケットを操作したりしていました。
※Linuxのシステムで、送受信した通信パケットの許可・破棄等の制御を行うためのコマンド。
マルウェアは起動時に、図4に示すコードでiptablesのルールを設定します。このルールは以下の動作をします。
- LAN側からのTCP接続要求は許可
- WAN側からのTCP接続要求は拒否
- TCP接続が成立している状態であれば、その接続に関するパケット受信を許可
- C&Cサーバとの通信は許可
また、マルウェアはコマンド実行時に、必要なiptablesのルールを動的に設定します。「udpfwd」コマンドの実行時には、指定ポートへの外部からのUDPパケット受信を許可する設定をします。また、「socket」コマンドの実行時には、TCP RSTパケットの送信を拒否するように設定します。
DDoS攻撃対象の分析
コマンド中に含まれる攻撃対象のIPアドレスを分析した結果を以下に示します。今回の攻撃コマンドは、2024年12月27日より継続して確認しており、2025年1月5日時点でも継続しています。以下の数値は、すべて2024年12月27日~2025年1月4日の期間に収集・集計した数値です。
攻撃対象のIPロケーションを確認すると、日本だけではなくアジア、北米、南米、欧州と広域に攻撃が発生していることがわかります。重複を省いた標的IPアドレス文字列数を数えると(IPレンジ指定の場合も1件と数える)、アメリカ合衆国17%、バーレーン10%、ポーランド9%の順で北米と欧州に集中しており、日本は7番目でした(対象となったIPアドレス文字列合計872件、日本のIPアドレス文字列40件)。
観測したコマンド種類は国内と国外を標的とした攻撃で違いがありました。国外向けでは、日本向けに観測していないsocket、handshakeコマンドを確認しています。また、国外ではstompコマンドが7%に対し日本では21%と多く、逆に日本で少ないgreコマンドは国外では16%と多い違いがありました。1つの組織に対しての攻撃で、2つ以上のコマンドが組み合わされて使用されることも観測しています。
国内を対象とするものでは、運輸、情報通信、金融・保険業などに対しての攻撃を確認しています。国外では情報通信を対象としたものが34%と最も多く、金融・保険業は8%程度と共通性は見られるものの、運輸業を対象とした攻撃コマンドはほとんど確認できない違いがみられました。
※観測した攻撃コマンド内のIPアドレスについての産業を機械的に確認できたもののみで算出した統計。
※特定したボットネット348台のうちデバイスについての情報が確認できたもののみで算出した統計。
デバイスのカテゴリとしてはワイヤレスルータが80%を占め、次いでIPカメラが15%を占めました。またベンダ別ではTP-Link社とZyxel社のワイヤレスルータ製品がそれぞれ52%と20%を占め、Hikvision社のIPカメラが12%を占めました。
またボットの所在地域としてはインドが57%、南アフリカが17%を占めました。
近年、家庭用やSOHO(Small Office/Home Office)向けのルータ、またIPカメラなどのIoTデバイスが、サイバー攻撃の踏み台として悪用される事例が増加しています※。これらのデバイスがボット型マルウェアに感染し、ボットネットに組み込まれると、大量のトラフィックを生成・送信して被害を与えるDDoS攻撃や、他のネットワークへの侵入攻撃の踏み台に悪用される可能性があります。これらのデバイスが狙われる要因には以下が挙げられます。
※参考記事:
Smart Yet Flawed: IoT Device Vulnerabilities Explained
- 初期設定のまま使用:多くのユーザーがデバイスの初期設定(特にデフォルトのパスワード)を変更しないため、攻撃者が容易に侵入できる状態になっています。
- アップデート不足:古いファームウェアやソフトウェアには既知の脆弱性が残されており、これが攻撃者に利用される原因となっています。
- セキュリティ機能の欠如:一部のIoTデバイスでは、十分なセキュリティ機能が実装されておらず、これが攻撃の対象となるリスクを高めています。
- 初期設定の変更:デバイス購入後すぐに、デフォルトのユーザー名やパスワードを推測しにくいものに変更しましょう
- 定期的なアップデート:デバイスのメーカーが提供する最新のファームウェアやソフトウェアを定期的に適用してください
- 不要な機能の無効化:使用しないリモートアクセスやポート転送機能は無効にすることを検討してください
- ネットワーク分離:IoTデバイスを専用のネットワークに分離することで、他のシステムへのリスクを軽減できます
- ファイアウォール設定の強化:家庭用ルータの設定を見直し、不要なポートの開放を避けましょう
- 資産管理の徹底:IoTデバイスをはじめとしたITデバイスの資産管理を徹底し、把握していないデバイスが稼働している状態を無くし、不要なデバイスを放置しないようにしましょう
- 管理画面へのアクセス制限:インターネット側から管理機能を利用する必要がある場合は、アクセス元を必要最小限に制限して悪用されないようにしましょう
また今回のように、ボットネットによる攻撃は、感染したデバイスが物理的な国境を越えて他の地域の組織に対する攻撃に利用され、結果として攻撃対象となる国や地域が甚大な被害を受ける構図が生まれます。自身が攻撃に”加担”することにならないよう、IoTデバイスのセキュリティ対策を徹底することが求められています。
(参考記事)
ルーター / ネットワークカメラの安全な管理方法(総務省・NICT「NOTICE」Webページより)
DDoS攻撃への対策
今回観測したIoTボットネットから行われるDDoS攻撃は、主に大量のパケットを送信することでネットワークに負荷をかける攻撃と、セッションを大量に張ることでサーバリソースを使い果たす攻撃に分かれています。
また、2つ以上のコマンドが組み合わせて使用されることを観測していることから、ネットワークに負荷をかける攻撃とサーバリソースを使い果たす攻撃が同時に発生することも考えられます。
以下に、これらの攻撃タイプごとに考えられる対策例をリストアップします。詳しくは自組織の環境を鑑みつつ、契約している通信事業者等にも相談しながら、今一度対策を見直すことを推奨します。
UDPを用いたDDoS攻撃 (UDP Flood) への対策例
- ファイアウォールやルータを使用して特定のIPアドレスやプロトコルをブロックし、トラフィックを制限する
- 通信事業者と協力し、ネットワークのバックボーンやエッジでDDoSトラフィックをフィルタリングする
- ルータのハードウェアを強化し、処理できるパケット数を増やす
- リアルタイムモニタリングを行い、通信量の多いIPアドレスをブロックする
TCPを用いたDDoS攻撃 (TCP SYN Flood, TCP ACK Flood, STOMP Flood, GRE Flood, socket, handshake) への対策例
- CDNプロバイダーを利用して攻撃の負荷を分散し、緩和する
- 特定のIPアドレスが一定時間内に送信できるリクエスト数を制限する
- サードパーティのサービスを利用して、攻撃トラフィックを分離しクリーンなトラフィックだけを処理する
- リアルタイムモニタリングを行い、接続数の多いIPアドレスをブロックする
- IDS/IPSでトラフィックの異常を検知し、遮断する
- 振る舞い分析により、長期間接続しているにも関わらずパケットを送ってこないようなクライアントを切断する
- サーバのハードウェアを強化し、処理できるパケット数を増やす
- サーバの接続数の上限を上げ、可用性を高める
- サーバリソースを素早く再利用可能にするため、タイムアウト時間を短くする
また、他のIoTボットネットからは異なるタイプのDDoS攻撃が行われる可能性があります。そのようなDDoS攻撃の概要と対策例については、CISAが出しているガイドも参考にしてください。
(参考情報)
DDoS QUICK GUIDE(2020年10月。米CISA)
侵入の痕跡(IoC:Indicators of Compromise)
侵入の痕跡(IoC)は、こちらからダウンロードできます。
調査・執筆:
サイバーセキュリティ・イノベーション研究所
スレット・インテリジェンス・センター