** 本記事は、BlackMatter ransomware emerges from the shadow of DarkSide の翻訳です。最新の情報は英語記事をご覧ください。**
2021 年 5 月 7 日に、サービスとしてのランサムウェア (RaaS) を提供する DarkSide のアフィリエイトが、米国の主要な燃料パイプラインシステムである Colonial Pipeline を攻撃しました。この攻撃により、広範囲にわたる供給障害が発生しました。攻撃は世界的な注目を集め、各国当局による精査が行われました。一週間後、DarkSide は、同集団のサーバーが押収され、暗号通貨のウォレットが停止したという理由でサービスの提供停止を発表しました。その後、Kaseya への攻撃を実行したランサムウェアサービス「REvil」も姿を消しました。
7 月下旬に、新たな RaaS が出現しました。「BlackMatter」と名乗るこのランサムウェアは、DarkSide および REvil に取って代わるものだと主張しており、この 2 つに加えて、現在も活動中の Lockbit 2.0 からツールや技術を導入しています。
SophosLabs は BlackMatter およびその背後の攻撃者の主張を詳しく調べ、実際に何が起こっているのかを調査しました。
注: サービスとしてのランサムウェア (RaaS) は、ランサムウェア本体や決済サイトを管理する中核的な開発グループと、レンタルしたランサムウェアを利用して被害者のネットワークに侵入したりデバイスを暗号化したりする、雇われのアフィリエイトや「顧客」から構成されています。
マルウェアの分析
今回の調査は、以下の SHA-256 ハッシュを持つ BlackMatter ランサムウェアのサンプルに基づいています。22D7D67C3AF10B1A37F277EBABE2D1EB4FD25AFBD6437D4377400E148BCC08D6
BlackMatter のオペレーターは、ダークウェブ上で存在感を示しています。
BlackMatter が攻撃しないとしている分野や企業のリストは DarkSide および REvil による最近の世界的なインシデント (それぞれ Colonial Pipeline に対する攻撃および Kaseya に対する攻撃) を反映したもので、広く冷ややかな注目を集めました。
BlackMatter のオペレーターは、このランサムウェアには DarkSide、REvil、LockBit 2.0 ランサムウェアそれぞれの最良の機能が組み込まれていると主張しています。また、DarkSide のオペレーターとは密接な関係にあるものの、同一人物ではないとしています。
これらのランサムウェア間の潜在的な関係をより良く理解するため、SophosLabs は BlackMatter ランサムウェアのサンプルを分析し、DarkSide や他のランサムウェアファミリとの技術的な類似点を発見しました。これらの類似点は注目に値します。
以下に、各ランサムウェアの機能を簡単に比較しました。
機能 | REvil | Lockbit 2.0 | DarkSide | BlackMatter |
種類 | RaaS | RaaS | RaaS | RaaS |
ネットワーク優先 | – | はい | いいえ | いいえ |
マルチスレッド | はい | はい | はい | はい |
ファイルの暗号化 | その場で | その場で | その場で | その場で |
暗号化の規模 | ファイル全体 | 部分的 (4 KB) | 部分的 (512 KB) | 部分的 (1.024 KB) |
リネーム | 暗号化後 | 暗号化後 | 暗号化前 | 暗号化前 |
復号用 blob | ファイル末尾 | ファイル末尾 | ファイル末尾 | ファイル末尾 |
壁紙の変更 | はい | はい | はい | はい |
ロシア語のシステムを暗号化 | いいえ | はい | いいえ | はい |
壁紙の変更
BlackMatter ランサムウェアに感染してドライブ上のファイルが暗号化されると、BlackMatter は DarkSide のそれと非常によく似た壁紙を設定します。この壁紙は DarkSide のものと同じディレクトリ (C:\ProgramData) に保存され、ファイルサイズ (2,818,366 バイト)、画像フォーマット (.BMP)、画像サイズ (1706 x 826 ピクセル、色深度 16 ビット) も同一です。
写真: BlackMatter によって身代金の要求通知に変更された壁紙
写真: DarkSide によって身代金の要求通知に変更された壁紙
初期アクセスブローカー
DarkSide (および REvil) は RaaS の舞台から姿を消したようですが、ランサムウェア LockBit 2.0 による攻撃は増加していることを確認しました。昨今 LockBit によって設定される身代金要求の壁紙には、身代金を獲得するためネットワークへの侵入と暗号化に協力する初期アクセスブローカー (企業の内部関係者など) を募集する求人が含まれています。
写真: Lockbit 2.0 によって変更された、求人広告付きの身代金要求通知を表示する壁紙
「数百万ドルを稼ぎませんか? 私たちの会社はさまざまな企業のネットワークへのアクセス権と、あらゆる企業の最も重要なデータを盗むのに役立つインサイダー情報を獲得しています。
RDP、VPN、法人メールアドレスのログイン ID とパスワードなど、企業へのアクセスのためのアカウントデータを提供してください。どのような企業のものでも歓迎します。
ご自身のメールアカウントで当社からのメールを開き、提供されたウイルスを社用のコンピュータで実行してください。
ファイルの復号化とデータ漏洩の防止のため、企業から私たちに身代金が支払われます。
Tox のメッセンジャーから私たちにメッセージをお送りください。」
ランサムウェア同士の競争
ランサムウェアの攻撃者たちは、自分たちのために働いてくれる優秀なクラッカー (パートナー) を集めようと競っています。たとえば、彼らは早くデータを暗号化できるなど、他の団体よりも優れたツールや技術を持っていることをアピールし、協力者を獲得しようとしています。
BlackMatter、DarkSide および Lockbit 2.0 はいずれも部分暗号化方式を採用しています。つまり、ファイルは全体ではなく、一部だけ暗号化されます。部分暗号化は全体の暗号化と同じ効果を持っていますが、ファイルの一部だけが読み取られて上書きされるため、攻撃時間が大幅に短縮されます。
被害者のコンピュータ上で実行されている保護ソフトによっては、攻撃が高速であることが有利に働きます。保護ソフトがメモリスキャンを開始し、マルウェアがメモリ上で実行されファイルが攻撃されていると判断するまでに数秒かかることが多いためです。保護ソフトが攻撃を認識したときにはすでに多くのファイルが暗号化され、アクセスできなくなっている可能性があります。
ソリッドステートドライブ (SSD) や M.2 NVMe ストレージの速さは数百から数千メガバイト毎秒 (MB/s) に達するため、各ファイルのわずか 1 MB 分を攻撃するだけで、数百ものファイルが 1 秒で暗号化されることになります。
マルチスレッドの利用
最近の RaaS は、部分暗号化に加えて、マルチスレッドを利用しています。2001 年から CPU に搭載されているマルチスレッド技術は、スレッドレベルの並列処理と命令レベルの並列処理を相互に利用することで、プロセッサコアの使用率を高める技術です。
この技術により、あるスレッドが低速媒体 (ストレージなど) のデータを取得している間に、その終了を待たずして別のスレッドが高速媒体 (メモリなど) のデータを取得することができます。そのため、高いスループットと低いレイテンシーが効果的に実現されます。
暗号化の際の BlackMatter ランサムウェアのファイルシステムの活動とマルチスレッドの使用は、DarkSide のものと同様です。暗号化の手順も類似しています。
BlackMatter | |||
段階 | スレッド | 操作 | 効果 |
1 | A | CreateFile (通常の読み込み) | 元のドキュメントを読み取り専用で開く |
2 | A | ReadFile | 元のドキュメントの最後の 132 バイトを読み込む (復号 blob を検索) |
3 | A | ReadFile | 元のドキュメントの最後の 1,051 バイトを読み込む (復号用 blob を検索) |
4 | A | CloseFile | 元のドキュメントを閉じる (ファイルの中身は変更しない) |
5 | A | CreateFile (属性読み込み) | 元のドキュメントを開く |
6 | A | SetRenameInformationFile | .7xit0dGt6 のような拡張子を付け足すことでドキュメントをリネームする |
7 | A | CloseFile | リネームされたドキュメントを閉じる |
8 | A | CreateFile (通常の読み取り/書き込み) | リネームされたドキュメントを読み書き両用で開く |
9 | B | ReadFile | リネームされたドキュメントのうち 1 MB を読み込む |
10 | B | WriteFile | 1 MB を暗号化し、リネームされたドキュメントに書き込む |
11 | C | WriteFile (オフセット: -1) | ファイルの末尾に 132 バイトの復号用 blob を付け足す |
12 | B | CloseFile | 暗号化したファイルを閉じる |
表: ドキュメントを暗号化する BlackMatter ランサムウェアのファイルシステム
DarkSide | |||
段階 | スレッド | 操作 | 効果 |
1 | A | CreateFile (通常の読み取り/書き込み) | 元のドキュメントを読み取り専用で開く |
2 | A | ReadFile | 元のドキュメントの最後の 144 バイトを読み込む (復号 blob を検索) |
3 | A | ReadFile | 元のドキュメントの最後の 1,051 バイトを読み込む (復号用 blob を検索) |
4 | A | CloseFile | 元のドキュメントを閉じる (ファイルの中身は変更しない) |
5 | A | CreateFile (属性読み込み) | 元のドキュメントを開く |
6 | A | SetRenameInformationFile | .e35e450e のような拡張子を付け足すことでドキュメントをリネームする |
7 | A | CloseFile | リネームされたドキュメントを閉じる |
8 | A | CreateFile (通常の読み取り/書き込み) | リネームされたドキュメントを読み書き両用で開く |
9 | B | ReadFile | リネームされたドキュメントのうち 0.5MB を 64 KB のブロックで読み込む |
10 | B | WriteFile | 0.5MB を暗号化し、リネームされたドキュメントに 64 KB のブロックで書き込む |
11 | C | WriteFile (オフセット: -1) | ファイルの末尾に 144 バイトの復号用 blob を付け足す |
12 | B | CloseFile | 暗号化したファイルを閉じる |
表: ドキュメントを暗号化する DarkSide ランサムウェアのファイルシステム
復号用 blob
ランサムウェアは暗号化されたファイルの中に、あるいはファイルと一緒に復号用のバイナリラージオブジェクト (blob) を保存します。この blob は、被害者が身代金を支払った際、攻撃者がファイルを復号するために提供する復号ツールに必要です。
各データの blob は、通常はファイルの末尾に追加されますが、ランサムウェアのファミリーによっては先頭に足されたり、1 つまたは複数の別のファイルに格納されたりします。ほとんどのランサムウェア同様、BlackMatter、DarkSide、REvil、LockBit のいずれもファイルの末尾に blob を追加しています。
「すべてのユーザー」に対するアクセス許可
DarkSide とは異なり、BlackMatter ランサムウェアは「すべてのユーザー」に対して随意アクセス制御リスト (DACL) を (SetSecurityFile 関数を通じて) 「フル」に設定し、ドキュメントの暗号化前にドキュメントへのアクセス権を取得します。この設定変更により、すべての Windows ユーザーがドキュメントにアクセスできるようになります。この直後に悪意のある暗号化が行われるため、直ちにプライバシーの侵害が発生するわけではありません。しかし、セキュリティ情報が失われているため、被害者が身代金を支払い、攻撃者から復号ツールを入手したとしても元のアクセス許可を復元することはできません。
なので、BlackMatter ランサムウェアの攻撃から復旧する際、IT 管理者は権限を確認、再強化する必要があります。
REvil のような「セーフモード」の導入と悪用
SophosLabs による BlackMatter ランサムウェア攻撃の調査の結果、BlackMatter のオペレーターが標的のネットワークにアクセスし、ランサムウェアを展開する準備が整うと、ドメインコントローラーなどのサーバー上のドメインアクセス可能な UNC パス上で PowerShell スクリプトを実行するスケジュールタスクが設定されることがわかりました。
ランサムウェアのバイナリ自体は base64 でエンコードされており、PowerShell スクリプト内に埋め込まれています。このスクリプトには、(一部の REvil ランサムウェア攻撃のように) ランサムウェアのバイナリをデコードしてメモリに直接書き込む機能が備わっています。また、バイナリはディスクにドロップされる場合もあります。
頑強なエンドポイント保護ソフトウェアが実行されている場合、攻撃者は BlackMatter の「セーフモード」機能を使用することもできます。BlackMatter ランサムウェアは、-safe というコマンドラインスイッチを使用して、Windows をセーフモードと呼ばれる診断モードで再起動します。セーフモードでは通常エンドポイント保護は無効なので、その環境下で暗号化攻撃を実行します。攻撃の手順は以下の通りです。
- 通常はデフォルトで無効になっている、Windows 内蔵のローカル Administrator アカウントを有効にする
- レジストリキー HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoAdminLogon を作成して 1 に設定する
- レジストリキー HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultUserName を作成して Administrator に設定する
- レジストリキー HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultDomainName を作成して、ローカルホスト名に設定する
- レジストリキー HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\RunOnce\ の下に *VHJ544uhjC のようにアスタリスクで始まるランダムな文字列を使ってエントリを作成し、その値をランサムウェアの実行ファイルのフルパスに設定する
- 以下のコマンドを実行して、デフォルトのブート設定をネットワーク機能付きのセーフモードに変更: bcdedit /set {current} safeboot network
その後、ランサムウェアはマシンを強制的に再起動させます。Windows は自動的に「セーフモードとネットワーク」で起動するので、ランサムウェアはエンドポイント保護ソフトウェアに妨げられることなくマシン上のファイルを暗号化することができます。ローカルアカウントの Administrator で自動的にログインされ、ランサムウェアが自動で実行されます。ランサムウェアは暗号化が完了すると、bcdedit /deletevalue {current} safeboot というコマンドを実行して、マシンを通常モードで起動するように設定します。マシンは再起動されますが、悪用された Administrator アカウントの自動ログイン設定は保持されます。
上記の手順は、-smode コマンドラインスイッチによって「セーフモード」を利用していた REvil ランサムウェアによる攻撃で見られたものとほぼ同じです。
権限の昇格
REvil、LockBit 2.0、DarkSide と同様に、BlackMatter もユーザーアカウント制御 (UAC) によって制限された権限を昇格させようとします。権限の昇格は、権限を持つ COM インターフェイスを介して、Elevation:Administrator!new:{3E5FC7F9-9A51-4367-9063-A120244FBEC7} というオブジェクト名を持つ関数を実行することで行われます。
この仕組みは、DarkSide や LockBit 2.0 でも使われています。
文字列の暗号化
DarkSide (および REvil) と同様に、BlackMatter はマルウェアの静的解析を妨げることのできるランタイム API を利用しています。また、実行中に文字列を暗号化して公開する点も他の2 つのランサムウェアグループと共通しています。これらの技術はいずれも最近の多くのマルウェアに共通するものですが、BlackMatter のランタイム API および文字列復号機能は DarkSide や REvil に見られるものと非常によく似ています。
BlackMatter ランサムウェアは設定情報をエンコードされた形式でバイナリに保存します。SophosLabs がこの設定情報をデコードしたところ、この構造もまた REvil および DarkSide と類似していることがわかりました。終了させるプロセスやサービスのリスト、ランサムノート (身代金要求文書)、C2 (C&C) の詳細、避けるべきディレクトリなどの情報が設定 blob に保存されています。
プロセスの終了 (プロセスキル)
BlackMatter は保護されたドキュメントも暗号化できます。BlackMatter は、暗号化の開始前にいくつかの有用なプロセスを終了させます。
- ensvc
- thebat
- mydesktopqos
- xfssvccon
- firefox
- infopath
- winword
- steam
- synctime
- notepad
- ocomm
- onenote
- mspub
- thunderbird
- agensvc
- sql
- excel
- powerpnt
- outlook
- wordpad
- dbeng50
- isqlplussvc
- sqbcoreservice
- oracle
- ocautoupds
- dbsnmp
- msaccess
- tbirdconfig
- ocssd
- mydesktopservice
- visio
被害者の情報窃取
BlackMatter ランサムウェアは被害者のマシンからホスト名、ログインしたユーザー、OS、ドメイン名、システムタイプ (アーキテクチャ)、設定言語などの情報を収集するほか、ディスクのサイズや利用可能な空き容量なども確認します。
今回分析したサンプルは、収集した情報を paymenthacks.com でホストされているリモートサーバーに送信していました。
以下のように、情報の投稿のために専用のヘッダーを利用します。
特定の国への攻撃回避
ランサムウェアの中には、特定の国のコンピュータを攻撃しないように設定されているものがあります。この設定は多くの場合、RaaS のアフィリエイトが特定の攻撃あるいは標的に合わせて設定する、選択可能なオプションです。なので、たとえばロシア語やウクライナ語のようなキリル文字キーボードを追加でインストールするといった保護手法は意味をなしません。
たとえば、DarkSide では GetSystemDefaultUILanguage 関数が呼び出され、OS のデフォルトのユーザーインターフェイスの言語 (「インストール言語」とも呼ばれる) が取得されます。この設定をユーザーが変更することはできません。
今回分析した BlackMatter のサンプルはロシア語に設定した実験機を暗号化しましたが、DarkSide のサンプルは暗号化しませんでした。
ランサムノート (身代金要求文書)
ランサムウェアは、ディスク上のユーザーがアクセス可能なフォルダにランサムノートをドロップします。
DarkSide のランサムノートのファイル名は BlackMatter のものとわずかに異なり、「README」という文字列がランサムウェアのファイル拡張子の後ろではなく前についています。しかし、どちらのランサムノートもまず攻撃について説明し、次に身代金の支払いについて記述しています。DarkSide は 500 ギガバイト (GB) 分のデータを盗んだと述べているのに対し、BlackMatter はその 2 倍、1 テラバイト (TB) 分のデータを盗んだと主張しています。
ソフォスが分析した最近の別のサンプルでは、ランサムノートに流出したデータについての言及がなく、被害者の会社名が含まれているなど、被害者ごとに異なる内容になっていました。さらに、このサンプルでは、感染した各マシンからデフォルトで設定されているプリンタに印刷ジョブが送信されます。つまり、ランサムノートが紙媒体でオフィスに届けられることになります。この攻撃は最近の LockBit 2.0 ランサムウェアによる攻撃同様、自宅のプリンタに対しても行われることがあります。
DarkSide と BlackMatter の関係
BlackMatter と DarkSide の間には、関連性を示唆する要素がいくつもあります。しかし、これら 2 つは名前が違うだけの同一のランサムウェアではないようです。分析によると、BlackMatter は DarkSide に類似している一方、コードは同一ではありませんでした。
今回の調査結果をまとめると、BlackMatter の代表者とされる人物が最近発表した、BlackMatter の機能に関する主張はおおむね真実であると言えます。
経験豊富な攻撃者の手にかかれば、このランサムウェアはあまり気づかれることなく、多くのダメージを与えることができます。エンドポイントプロテクションの警告は、深刻な結果をもたらす攻撃が差し迫っていることを示すものである可能性が高いため、防御する側は速やかに調査することが重要です。
注: Sophos Machine Learning は BlackMatter ランサムウェアを自動的に検出します。
謝辞
ソフォスは、本記事への貢献に対して、SophosLabs の研究者である Anand Ajjan、Sean Gallagher、および Rapid Response のマネージャーである Peter Mackenzie に謝意を表します。