** 本記事は、英語記事タイトル の翻訳です。最新の情報は英語記事をご覧ください。**
最近発生した Qilin ランサムウェア攻撃を Sophos X-Ops チームが調査した際、攻撃者がネットワーク上の一部エンドポイントにおいて、Google Chrome ブラウザに保存された認証情報を大量に窃取しているのを特定しました。この種の認証情報収集は、直接被害を受けた組織の規模をはるかに超える影響を与える可能性があります。ブラウザに保存された認証情報を窃取するのは通常とは異なる戦術であり、ランサムウェア攻撃後の事態をさらに深刻化させる可能性があります。
Qilin とは
Qilin ランサムウェアグループが活動を開始してから 2 年あまりになります。2024 年 6 月には、英国のさまざまな医療プロバイダーや病院への政府系サービスプロバイダーである Synnovis に対する攻撃で話題となりました。本記事で詳述する活動以前にも、Qilin の攻撃者はしばしば「二重の恐喝」に関与していました。二重の恐喝とは、標的のデータを盗み出した上でシステムを暗号化し、標的が暗号化キーの代金を支払わなければ盗んだデータを公開または売却すると脅すというものです。この手口については、最近「ランサムウェアが駆使するプレッシャー戦術」 と題した調査でも取り上げました。
ソフォスの IR チームは、本記事で取り上げる活動を 2024 年 7 月に観測しました。この活動は標的の Active Directory ドメイン内のあるドメインコントローラーで発見されました。標的の AD ドメインに位置する他のドメインコントローラーも感染していましたが、Qilin による影響は異なっていました。
初期の活動
攻撃者は、漏洩した認証情報を介して標的の環境への初期アクセスを取得しました。残念ながら、この種の初期アクセス方法は Qilin (あるいは他のランサムウェアグループ) にとって目新しいものではありません。ソフォスの調査によると、VPN ポータルは多要素認証 (MFA) による保護を利用していませんでした。
攻撃者がネットワークに最初にアクセスしてからさらに移動するまでの滞留時間は 18 日間でした。実際に侵入を行ったのは初期アクセスブローカー (IAB) だった可能性が示唆されます。いずれにせよ、最初のアクセスが発生してから 18 日後、システム上で攻撃者の活動が増加し、侵害された認証情報を使用してドメインコントローラーへのラテラルムーブメントが実行されたことを示すアーティファクトが確認されました。
攻撃者は標的のドメインコントローラーに到達するとデフォルトのドメインポリシーを編集し、2 つのアイテムを含んだログオンベースのグループポリシーオブジェクト (GPO) を配信しました。1 つ目は IPScanner.ps1 という PowerShell スクリプトで、関係する特定のドメインコントローラーの SYSVOL (システムボリュームの略) シェア (Active Directory ドメイン内の各ドメインコントローラーに位置する共有 NTFS ディレクトリ) 内の一時ディレクトリに書き込まれました。IPScanner.ps1 には、Chrome ブラウザ内に保存されている認証情報データの収集を試みる 19 行のスクリプトが含まれていました。
2 つ目のアイテムである logon.bat というバッチスクリプトには、1 つ目のスクリプトを実行するコマンドが含まれていました。これら 2 つのスクリプトの組み合わせにより、ネットワークに接続されたマシンの Chrome ブラウザに保存された認証情報が収集されました。これらのスクリプトはログオン GPO に含まれているため、ログインすると各クライアントマシンで実行されます。
エンドポイント上での活動
エンドポイントでログオンに成功すると、logon.bat が IPScanner.ps1 スクリプトを起動し、LD という SQLite データベースファイルと temp.log というテキストファイルの 2 つが作成されます (図1 参照)。
図 1: 有害であることから、このデモデバイスをソフォスでは Hemlock (ドクニンジン) と呼んでいます。感染したマシンのスタートアップスクリプトによって作成された 2 つのファイル
これらのファイルは、ドメインの SYSVOL シェアに新しく作成されたディレクトリに書き戻され、実行されたデバイスのホスト名 (今回の例では Hemlock) にちなんで命名されました。
LD データベースファイルは、図 2 に示すような構造を含んでいます。
図 2: SYSVOL にドロップされた SQLite データベースファイルである LD の内部構造
攻撃者はこの GPO をネットワーク上で 3 日間以上アクティブなままにしていました。自分たちは発見されず、ネットワークへのアクセス権も失わないという自信の表れでしょう。このため、各ユーザーには自分のデバイスにログオンする機会が十分に与えられ、そして、ユーザーの知らないうちに、システム上で認証情報収集スクリプトが実行されていました。繰り返しになりますが、この活動はすべてログオン GPO を使用して行われたため、各ユーザーはログインするたびに認証情報を収集をされることになります。
攻撃者は侵害の範囲を判定し難くするため、収集された認証情報を含むファイルを窃取した後、すべてのファイルを削除し、ドメインコントローラーと感染したマシンの両方のイベントログを消去しました。活動の証拠を削除した攻撃者は、ファイルを暗号化してランサムノート (身代金要求文書) を配信しました (図 3 参照)。このランサムウェアは、実行したデバイス上のすべてのディレクトリにランサムノートのコピーを残します。
図 3: Qilin ランサムノート
Qilin グループは run.bat というバッチファイルを実行するスケジュールタスクを作成し、ランサムウェアをダウンロードして実行することで、再度 GPO をネットワークを侵害するメカニズムとして使用しました。
攻撃の影響
今回の攻撃では、IPScanner.ps1 スクリプトは Chrome ブラウザを標的としていました。Chrome は現在ブラウザ市場の 65% 強を占めているため、統計的に最もパスワードの収集が期待できるブラウザです。それが成功するかどうかは、各ユーザーがブラウザにどのような認証情報を保存しているかによって決まります。(感染した各マシンからどれだけのパスワードが窃取される可能性があるかについて、最近の調査によると、平均的ユーザーは仕事関連のパスワードを 87 個使用しており、個人的なパスワードはその約 2 倍だと言われています。)
この種の侵害が成功した場合、防御側はすべての Active Directory のパスワードを変更する必要があるだけでなく、ユーザーが Chrome ブラウザにユーザー名とパスワードの組み合わせを保存している何十、何百ものサードパーティサイトのパスワードを変更するようエンドユーザーに対して (理論上は) 要求しなければなりません。もちろん、防御側にはエンドユーザーにパスワードの変更を強いる手段はありません。エンドユーザーの経験に関しては、現時点では事実上すべてのインターネットユーザーが、ユーザーのデータを管理できなくなったサイトから「あなたの情報が流出しました」という通知を少なくとも1回は受け取っていることになりますが、実際の状況は反対です。1 人のユーザーに対して何十件、あるいは何百件もの侵害が発生しています。
今回の攻撃で興味深いのは、同じ Active Directory ドメイン内の他のドメインコントローラーが暗号化された一方、この特定の GPO が元々設定されていたドメインコントローラーはランサムウェアによって暗号化されなかった点です。誤爆、見落とし、攻撃者の A/B テストなどの可能性が考えられますが、実際に何であったかは、ソフォスの調査 (および本記事の) 範囲を超えています。
結論
予想通り、ランサムウェアグループは戦術を変え、攻撃手法のレパートリーを増やし続けています。Qilin ランサムウェアグループは、標的となる組織のネットワーク資産を標的にするだけでは利益を得られないと判断したのかもしれません。
もしこのグループや他の攻撃者が、エンドポイントに保存された認証情報もマイニングし始めたらどうなるでしょう。これらの認証情報は後続の標的への足がかりになるかもしれませんし、他の手段で悪用する価値の高い標的情報の宝庫となるかもしれません。現在進行中の「サイバー犯罪物語」の次の章が幕を開けたのかもしれません。
謝辞
本分析への貢献に対し、SophosLabs の Anand Ajjan、IR チームの Ollie Jones、Alexander Giles、Aaron Short の各氏に謝意を表します。
対応と修復
組織であれ個人であれ、ソフトウェア開発におけるベストプラクティスを採用し、独立した第三者期間によって定期的にテストされているパスワードマネージャーアプリケーションを使用すべきです。ブラウザベースのパスワードマネージャーの使用は安全でないことが何度も証明されており、本記事はその最も新しい証拠です。
他の記事でも述べたように、多要素認証は今回の状況においては効果的な予防策となったはずです。MFA の利用は増加の一途をたどっていますが、2024 年の Lastpass の調査によると、従業員数 1 万人以上の企業における MFA の採用率は 87% と悪くないものの、従業員数 1,001~10,000 人の企業では 78%、従業員数 25 人以下の企業では 27% にとどまっています。 単刀直入に言うと、各組織は自社の安全のために、そして今回の場合は他社の安全のためにも、態度を改める必要があります。
ソフォス独自の Powershell.01 クエリは、攻撃の過程で実行された疑わしい PowerShell コマンドを特定するのに役立ちました。このクエリは、他の多くのクエリと同様、ソフォスの Github から自由に入手できます。
ソフォスは Qilin ランサムウェアを Troj/Qilin-B として検出し、Impact_6a や Lateral_8a などの動作検知を行います。上記のスクリプトは Troj/Ransom-HDV として検出されます。