APT&標的型攻撃
サイバー犯罪グループや国家主体の攻撃グループが侵害済みのネットワークを共同利用
インターネットに面したルーターに潜む危険性や、APTグループ「Pawn Storm」がEdgeRouterを不正利用した事例について、FBIの勧告も交えて解説します。
概要
- サイバー犯罪者や国家主体の攻撃グループは、双方とも、匿名化の手段として侵害済みのルーターに関心を寄せています。
- サイバー犯罪者は多くの場合、侵害済みのルーターを他の犯罪者、または商用レジデンシャルプロキシのプロバイダーに貸し出しています。
- 国家主体で動く「Sandworm」などの攻撃グループが自身専用のプロキシボットネットを利用したのに対し、APTグループ「Pawn Storm」はEdgeRouter(Ubiquiti社によるルーター)からなる犯罪用のプロキシボットネットに侵入し、これを利用しました。
- Pawn Stormが用いたEdgeRouterからなるボットネットの起源は2016年にまで遡り、2024年1月、米国FBIに摘発されました。
- 本ボットネットには、EdgeRouter以外のルーターや、仮想専用サーバ(VPS:Virtual Private Server)も含まれます。FBIによる摘発後も、ボットネットの運用者は一部のボットを新設のコマンドコントロール(C&C:Command and Control)インフラに移転し、利用し続けています。
- 侵害されたEdgeRouterの中には、国家主体のPawn Stormに加え、さらに2つの異なるサイバー犯罪グループに利用されていたものも含まれます。
- セキュリティ対策上、ルーターの保護は極めて重要です。業務上必要な場合を除き、外部からのインターネット接続は禁止することが推奨されます。本稿末尾のセクション「セキュリティ推奨事項」では、ネットワーク防御者やSOHO(Small Office/Home Office)ネットワーク管理者向けに、ルーターを含む機器の不正利用を監視する方法について解説します。
はじめに
サイバー犯罪者とAPT(Advanced Persistent Threat:標的型攻撃)グループは、双方とも不正な活動を隠したいという共通の目的を持ち、VPN(Virtual Private Network)ノードやプロキシによる匿名化の手段に関心を寄せています。このように双方の目的や関心が一致する結果、ネットワークから不正な通信を検知した際には、金銭目当ての活動やサイバー諜報目当ての活動が混在した状態で見つかることがあります。
その典型例として、侵害済みのEdgeRouter(Ubiquiti社のルーター製品)から構成されたサイバー犯罪用ボットネットが挙げられます。このボットネットは2016年頃から利用され始め、2024年1月26日にFBIや国際パートナーによって摘発されました。また、APTグループ「Pawn Storm(別称:APT28、Forest Blizzard)」は、2022年4月に本ボットネットに属するノードへのアクセス権を取得し、それを踏み台とするサイバー諜報活動を長期に渡って展開しました。トレンドマイクロやサードパーティのテレメトリ情報からは、本ボットネットに属する数百ものEdgeRouterが、さまざまな活動に不正利用されていたことが示されています。具体的にはSSH(Secure Shell)のブルートフォース攻撃、医薬品スパム、NTLMv2ハッシュリレー攻撃におけるSMB(Server Message Block)リフレクターの設置、フィッシングサイトから窃取した認証情報のプロキシ(中継)、多目的プロキシサーバ、暗号資産マイニング、スピアフィッシングメールの送信、などが挙げられます。
トレンドマイクロでは、上記の中でも「NTLMv2ハッシュリレー攻撃」と「認証情報フィッシングのプロキシ」をPawn Stormの活動として分類しました。一方、「医薬品スパム」については、悪名高い「Canadian Pharmacy gang」の活動と推測されます。
先述したFBIの捜査は、Ubiquiti社の機器に対するコード変更や設定変更を伴うものです。これらの変更は元に戻すことも可能ですが、いずれにしても裁判所からの承認が必要であり、法律面と技術面の双方で制約がありました。そのためか、一部のボットはクリーンアップされずに残り続けました。また、2024年1月にC&Cサーバが摘発されたために、攻撃者は2月に入ってからC&Cインフラを新たに設置し、以前から使用していたEdgeRouterボットの一部をそこに移転したことが判明しました。
本ボットネットを構成する機器はEdgeRouterだけでなく、インターネット上に公開されていたRaspberry Piを含め、さまざまな種類が存在します。さらに、FBIによる摘発後も、データセンター用VPSに属する350件以上のIPアドレスが侵害されたままであることが判明しました。このように、摘発前のC&Cに利用されていた侵害済みサーバの多くが、摘発後の新たなC&Cに取り込まれています。一方、ボットネットの運用者は、盗み出した情報資産を厳重には管理していません。そのため、これらの侵害済みサーバもPawn Stormなどの攻撃グループによって難なく侵入され、利用される可能性があります。
Pawn Stormが不正利用したEdgeRouterを調べたところ、別の攻撃グループがマルウェア「Ngioweb」を稼動させていたことが判明しました。当該の攻撃グループは、Ngiowebをメモリ内でのみ稼動させ、不正なファイルをディスク内に一切残しませんでした。「Ramnit」に関連する本マルウェアの報告が最初に上がったのは2018年のことであり、当初はWindows版に焦点が当てられました。続いて2019、2020年になると、Linux版の解析結果も報告されました。本マルウェアは、多階層のC&Cインフラを用いてリバースプロキシのボットネットを構築します。トレンドマイクロのエビデンスからも、Ngiowebに感染したEdgeRouterが商用レジデンシャルプロキシのボットネットに組み込まれ、出口ノードとして稼動していたことが示されています。
以上に述べたように、Pawn Stormのサイバー諜報活動では、サードパーティによる犯罪用プロキシ・ボットネットが利用されます。これはPawn Stormにとって、自身に紐づく通信データと他のサイバー犯罪者に紐づく通信データを混在させ、分析しにくくするという点で、明確な強みとなります。一方、専用のボットネットを展開するAPTグループも存在します。その一例が「Sandworm」であり、侵害済みのセキュリティデバイス「Watchguard」やASUS製ルーターからなるボットネット「Cyclops Blink」を展開し、2022年にFBIとNCSC(UK National Cyber Security Center)に摘発されました。それより前にも、Sandwormは数千に及ぶルーターからなるボットネット「VPNFilter」を展開し、2018年にFBIに摘発されました。他方、APT29(別称:Midnight Blizzard)は、商用レジデンシャルプロキシネットワークを利用し、不審な手口によってレジデンシャル・ノードを参照します。また、他のサイバー犯罪者との間でインフラ類を定期的に共有し、マルウェアや攻撃ツールの配備先として利用しています。
インターネット用ルーターは、現在なお、侵害の対象として攻撃者に付け狙われています。その理由として、セキュリティ監視の設定が弱いこと、パスワードポリシーが緩いこと、アップデート頻度が少ないことなどが挙げられます。さらに、強力なオペレーティングシステムが導入されている場合もあるため、暗号資産マイナーやプロキシ、DDoS(Distributed Denial of Service:分散型サービス拒否)用マルウェア、不正なスクリプト、Webサーバのインストール先として見なされる傾向にあります。
本稿の目的は、インターネットに面したルーターの危険性を理解する上で役立つ情報を、ネットワーク防御チーム向けに提供することです。また、FBIが2024年2月27日に発した勧告の追加情報として、Pawn Stormが今日に至るまでEdgeRouterを利用し続けてきた手口について解説します。最後に、APTグループやサイバー犯罪者によるルーターの不正利用をするために、防御側で実施できる対策について説明します。
EdgeRouterなどの機器から構成されるボットネット
先述のFBIや国際パートナーに摘発(2024年1月)された犯罪用ボットネットは、遅くとも2016年頃から稼働していました。Linux版の機器を狙ったコードの初期バージョンは、2016年当時のバージョン3.0から現在のバージョン20.3まで、アップデートによって拡張を繰り返してきました。
不正なコードの中身として、多数のbashスクリプトやPythonスクリプト、SSHDoorなどの不正なLinuxバイナリが含まれます。bashスクリプトの中には、攻撃者にとって価値のある情報を侵害済みホストから盗み出すものが存在します。窃取対象の情報として、フォルダ一覧、システムユーザ、計算能力、インストール済みソフトウェア、暗号資産ウォレット、パスワード、インターネットの通信速度などが挙げられます。他のスクリプトには、認証の有無に関わらずSOCKS5プロキシをインストールする機能や、C&Cサーバに接続して情報をアップロード、または追加コンポーネントをダウンロードする機能も含まれます。こうした追加コンポーネントの一例が暗号資産「Monero」のマイナーであり、相応の計算能力を備えたVPSホストやルーターに配備される傾向があります。
一連のスクリプトやバイナリの中でも、特に目を引くものが「SSHDoor」です。これは、バックドアの埋め込まれたSSHデーモンに相当します。その仕組みとして、SSHDoorが稼動するサーバに正規のユーザがログインすると、バックドア機能によって当該ユーザの認証情報が記録され、攻撃者側で盗み出せるようになります。さらに攻撃者は、SSHDoorの内部に用意されている「追加の認証情報」、またはSSH公開鍵ペアを介してログインすることも可能です。これは、不正アクセスを永続化させる手口です。今回調査したボットネットの運用者は、公開リポジトリからSSHDoorバイナリを入手して利用しましたが、「追加の認証情報」をほとんど変更していませんでした。そのため、Pawn Stormなどのグループは、ブルートフォース攻撃によって追加の認証情報を難なく盗み出し、ボットネットに属するノードへのアクセス権を入手したと考えられます。
FBIの勧告では、ボットネットの主な構成要素としてUbiquiti社のEdgeRouterが挙られています。一方、トレンドマイクロのテレメトリ情報に基づくと、さらに多くのLinux機器が含まれていると考えられます。実際に、インターネットに面したLinuxベースのルーターであれば、いかなる種類でもボットネットに取り込まれる可能性があります。認証情報がデフォルトのまま出荷されているルーターについては、特にそのことが言えます。今回のボットネットについては、Raspberry Piの機器やデータセンターのVPSサーバなども含まれ、XMRig(暗号資産「Monero」のマイナー)のマイニング・プールが形成されていました。
以上の他、オープンソースによるSOCKS5サーバ用ソフトウェア「MicroSocks」が、数多くのボットに配備されていました。これらSOCKS5サーバへの接続は、どこからでも行われる可能性があります。SOCKS5サーバが使用するポート番号は、通常、ボットネットのC&Cサーバ側に伝えられます。さらに、通常のMicroSocksを若干改変したバージョンの利用も確認され、待ち受け対象アドレス(全インターフェース)やポート番号(56981/tcp)の設定が異なっていました。
MicroSocksのバイナリは通常、パス「/root/.tmp/local」に配備されます。2024年2月下旬、攻撃者はMicroSocksにユーザ名とパスワードによる認証機能を追加し、再コンパイルした上で、ボット側にアップロードしました。
SSHDoor
「SSHDoor」とは、バックドア付きのSSHサーバを指す総称であり、多くの場合、OpenSSHのソースコードに不正な変更を加える形で作られています。SSHDoorが最初に報告されたのは2013年のことですが、それ以前にも、古いバージョンが存在していたと考えられます。
SSHDoorの主機能として、正規の認証情報を窃取すること、ハードコーディングで設定された「追加の認証情報」やSSH鍵を介して部外者の不正アクセスを受け入れること、などが挙げられます。先述の通り、SSHDoorによるコードの大半は、OpenSSHチームが提供する正規なSSHをベースとしています。そのため、この種の脅威を検知することは、必ずしも容易ではありません。SSHDoorがFBIの宣誓供述書で明確に言及されたわけではありませんが、Pawn Stormがこれを用いてEdgeOSルーターに侵入した可能性は、かなり高いと考えられます(通常の認証情報によってログインしたケースを除く)。なお、FBIの宣誓供述書からは、SSHDoorをルーターに配備したのは、犯罪用ボットネットの運用者であることが示唆されています。
本調査ではまず、2016年からGitHub上で公開されているOpenSSH用サーバ・デーモン(sshd)の修正版を分析しました。これは、当該の修正版こそがボットネットの運用者に利用されたものであることを示すエビデンスが存在するためです。修正版のsshdには、攻撃者からのアクセスをサポートするために、ハードコーディングで設定した「追加の認証情報」を受け入れ、正規の認証情報をファイルに記録する機能が組み込まれています。
図2が、バックドアとして追加された機能に相当します。パスワードハッシュ化関数「bcrypt」を使用する場合、バックドアのパスワードは変数「bdpassword2」に格納されます。一方、bcryptを使用しない場合、パスワードは変数「bdpassword」に格納されます。
本バックドアは、デフォルト設定時、正規の認証情報をファイル「/tmp/.zZtemp」に記録します。なお、設定によってはファイル自体を暗号化する場合もあり、そのパスも変化します。
先述したGitHubリポジトリ内のセットアップ用スクリプトは、使用に際して「バナー文字列」の入力を求めます。この文字列は、OpenSSHサーバにバックドアが埋め込まれていることを、攻撃者側で容易に判別できるようにするものです。Pawn Stormが不正利用したEdgeRouterのバナー文字列を調べたところ、「SSH-2.0-OpenSSH_6.7p2」となっていました。これは、過去に上がっていた報告とも一致しています。
Pawn Stormに限らず、さまざまな攻撃者が当該のバナー文字列「SSH-2.0-OpenSSH_6.7p2」を設定する可能性があります。そのため、本バナー文字列だけでPawn Stormのサイバー諜報活動を特定することはできません。しかし、SSHサーバにバックドアが埋め込まれていることを判別する手がかりにはなります。これは、当該のバナー文字列「SSH-2.0-OpenSSH_6.7p2」から示されるバージョンが、公式のOpenSSHから一切リリースされていないためです。
不正なSSHサーバを判別する一般的な手法は、対象サーバのバナー文字列を取得し、OpenSSHによる公式リリースと見比べることです。一致するものがない場合は、不正の可能性が高いと言えます。この他、サポート対象アルゴリズムを調べることも、判別の一助となります。例えばOpenSSHのバージョン7.2以降では、アルゴリズム「blowfish-cbc」がデフォルトではサポートされていません。さらに7.6以降では、完全にサポート対象外となっています。従って、本アルゴリズムのサポート有無をチェックすることで、バナー文字列の偽装を見破れる可能性があります。本調査では、以上の判別方式に基づき、インターネット上に公開されたEdgeRouterホストが提示するバナー文字列のパターンや、それが偽装である可能性を、下表のように分類しました。
実際にEdgeRouterのホストに対してSSHバナー文字列やモデル番号を尋ねるリクエストを送信したところ、177ホスト中の80ホストから応答が返されました。これらのホストを分析した結果、バックドアが埋め込まれていることが、中程度の信頼性で確認されました。
本調査では、EdgeRouter内で稼動するバックドア付きのsshdバイナリを複数入手することに成功しました。その一部は、2016年にGitHubにアップロードされたバージョンと完全に同一のものでした。一方、異なるパスワードを受け付けるように修正されたバージョンも確認されました。
以上の他にも、ボットへのアクセス権を維持するために公開鍵をファイル「/root/.ssh/authorized_keys」に追加する手口や、別のポート番号を待ち受けるようにsshdの設定を変更する手口が確認されました。
FBIによる摘発後もPawn StormはEdgeRouterの不正利用を継続
FBIや国際パートナーの取り締まりにより、Pawn Stormが諜報活動に使用するインフラは確かにある程度の打撃を受けました。しかし、法律や技術の面で取り締まりの範囲に限界があったため、全てのEdgeRouterをクリーンアップするには至りませんでした。
また、摘発されたボットネットの構成要素はEdgeRouterだけではなく、Raspberry PiやVPSサーバなども含まれていました。さらに、古いボットの一部はボットネットの運用者によって新設のC&Cサーバに移転され、摘発後も運用が続きました。以上の他にも、侵害済みルーターはEdgeOSベースのものを含めて数多く存在し、デフォルトの認証情報や安全でない認証情報を受け付ける状態で放置されています。そのため、法執行機関による捜査が進められている中においても、Pawn Stormは依然としてEdgeServerを含むさまざまな侵害済み機器へのアクセス権を維持しています。例えば2024年2月8日には、IPアドレス「32[.]143[.]50[.]222」がSMBリフレクターとして使用されました。同年2月6日には、同じIPアドレスが、世界各国の政府職員を狙ったフィッシング攻撃に利用され、そのプロキシサーバとして稼動していました。
無償Webメール「ukr.net」を利用するウクライナのユーザを狙ったフィッシング攻撃では、フィッシングサイトがURL「webhook.site」にホストされていました。被害者の認証情報は、侵害済みのEdgeServerにアップロードされ、そこからSSHトンネルを介してIPアドレス「185[.]227[.]137[.]200」に転送されます。攻撃者は、本IPアドレスを追加のプロキシ・ホップとして利用し、さらなる匿名化を図ったと考えられます。
以上の内容は、インターネットに面したルーターを保護することがいかに重要であるかを示すものです。ネットワーク防御チーム側で実施できる対策については、本稿末尾の「セキュリティ推奨事項」で詳しく解説します。
EdgeOSから発見されたマルウェア「Ngioweb」
2024年1月にFBIと国際パートナーが摘発したLinuxボットネットについて調査していた際、別のLinuxボットネットが新たに発見されました。本ボットネットの中には、Pawn Stormが不正利用していたEdgeRouterの一部も含まれ、その内部ではマルウェアが稼動していました。先のボットネットと比べると、本ボットネットはさらに精巧で、高い運用セキュリティを備えています。マルウェアについても、確認した範囲内では、その全てがメモリ上で稼動し、不正なファイルなどをディスクに残しません。ボットのメモリ・ダンプやC&C通信を調べた結果、稼動しているマルウェアは、2018年から2020年にかけて報告された「Ngioweb」であることが判明しました。さらに本ボットネットは、有償のレジデンシャル・ボットネットとして課金者向けに提供されていることが、エビデンスから示されています。以降、本ボットネットの特徴について、ネットワーク防御チーム向けに解説します。また、将来的には分析結果の完全版をリリースする予定です。
一部のEdgeRouterに少なくとも3つのグループが入り込んでいた事実より、インターネットに面したルーターを侵害することに対して攻撃者が強い関心を持っていることがうかがわれます。
今後の展望
サイバー犯罪者もAPTグループも、自身の不正な活動を正規の通信トラフィック内に隠す目的で、匿名化ツールを利用します。こうしたツールの典型例として、商用のVPNサービスやレジデンシャルプロキシ・ネットワークなどが挙げられます。
インターネットに面したSOHOルーターもまた、犯罪や諜報活動のために頻繁に利用されています。特に認証情報がデフォルトのまま放置されているSOHOルーターやネットワークでは、不特定多数のユーザによる不正行為が横行し、犯罪者の巣窟に成り果てていることさえあります。一部の攻撃者は、こうした騒がしい環境に紛れ込んで目立たないように活動を行い、不正な利益を得ようとします。
EdgeRouterによるボットネットの事例において、背後にいる運用者は、バックドア付きのSSHサーバやスクリプトを侵害済みの機器にインストールし、セキュリティ業界の監視をかわしながら、数年に渡ってアクセスを保持してきました。さらに、それとは別の攻撃グループが、マルウェア「Ngioweb」を追加でインストールしてメモリ内で稼動させ、対象機器を商用レジデンシャルプロキシのボットネットに組み入れました。こうした中でPawn Stormは、バックドア付きSSHサーバにブルートフォース攻撃を仕掛け、「追加の認証情報」を容易に取得したと考えられます。結果、数多くの侵害済みEdgeRouterにアクセスすることが可能となり、そこからさまざまな不正行為を実行するに至りました。
セキュリティ推奨事項
SOHOの運用者やオーナーの方は、バックドア付きOpenSSHがもたらすリスクについて理解し、警戒を強めることを推奨します。こうした特殊なOpenSSHは、正規の認証情報を依然として受け付けることもあり、検知自体が困難です。そして、リモートのクライアントを認証する際に、攻撃者のみが知っている追加のルートパスワードを受け入れてしまいます。ルートでのアクセスを禁止するように設定ファイル「sshd_config」を変更する対策も、有効ではありません。バックドアとして埋め込まれているコードが、その設定自体をすり抜けるためです。以降、EdgeRouter機器のオーナー向けに、バックドアの存在をチェックする方法について解説します。
SSHのコマンドライン・クライアント上で、冗長表示オプション(-v)を指定することにより、サーバとして稼動している機器のバナー文字列を確認できます。下記の例では、IPアドレス「192[.]168[.]50[.]85」のEdgeRouter(モデル:ER-X-SFP)からバナー文字列を取得しています。
$ ssh -v
--snip--
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4p1 Debian-10+deb9u7
--snip--
この後、Ctrl+Cを押すことで、対象機器にログインすることなく処理を終了できます。
EdgeOSはDebian GNU/Linuxをベースとしているため、バナー文字列に「Debian」が含まれていることが期待されます。また、OpenSSHのバージョンについては、公式版として存在するリリース番号に一致することが期待されます。上記の例では、公式バージョン「7.4p1」が起動しているものと読み取れます。
コマンドライン・インターフェースに慣れている方は、さらに下記の手順を利用できます。
1.. Web管理ページを用いて機器にログインする(すでに機器内にバックドアが埋め込まれている場合に、認証情報を窃取されないようにするため)。次に、一時的にtelnetを有効化する。
2. telnetでログインする。
3. 設定ファイル「sshd_config」を探し、そこに「GatewayPorts」の設定が「yes」になっているかを確認する。
$ (find / -type f -name sshd_config -exec grep Gate {} +;) 2>/dev/null
上記によって文字列「GatewayPorts yes」が出力され、かつ、その設定に覚えがない場合、侵害の可能性が疑われる。
4. 機器内の全sshdバイナリについて、ハッシュ値をチェックする。本稿末尾に記載のIoCリストに一致するものが1つでもあれば、侵害の可能性がある。
5. 再度Web管理画面からログインし、telnetを無効化する。
バックドアに感染していることが疑われる場合の対策として、ファクトリーリセットを行い、強力なパスワードを設定することが挙げられます。また、ルーターの管理者インターフェースにインターネットからアクセスできないように設定することも重要です。今回、システム管理者やSOHOオーナー向けに、Water Zmeuによる侵害の発見をサポートするスクリプトを用意しました。本スクリプトはルーター内で起動し、ローカル処理によって動作します。
侵入の痕跡(IoC:Indicators of Compromise)
侵入の痕跡(IoC)はこちらで確認してください。
参考記事:
Router Roulette: Cybercriminals and Nation-States Sharing Compromised Networks
By: Feike Hacquebord, Fernando Merces
翻訳:清水 浩平(Core Technology Marketing, Trend Micro™ Research)