New ClickLock macOS malware traps users into revealing login password

「ClickLock」と呼ばれる新しいmacOS向け情報窃取型マルウェアは、表示されているすべてのプロセスを強制終了させ、ユーザーにシステムのログインパスワードの入力を強要します。

このマルウェアは、仮想通貨資産、ログイン認証情報、パスワードマネージャーのデータ、ブラウザ情報、およびmacOSの認証データを盗み出すように設計されており、感染したシステムへの継続的なリモートアクセスを可能にする永続的なバックドアをインストールすることも可能です。

Group-IBの研究チームは、6月9日にVirusTotalに初めて投稿されたこのマルウェアを発見した後、「ClickLock」のシェルスクリプトを分析しました。本レポート作成時点では、同プラットフォーム上で利用可能なすべてのセキュリティベンダーによって、このマルウェアは検出されていませんでした。

image

さらなる調査の結果、この悪意のあるスクリプトは5月以降、33カ国にわたる少なくとも100台のシステムに感染していたことが判明した。

侵害は「ClickFix」を装った罠を介して開始される可能性が高い。研究者らは、ターミナルに貼り付けられた悪意のあるコマンドが、アニメーション付きの進行状況バーを伴う偽のCloudflare「人間確認」シーケンスをトリガーすることを確認した。

同時に、キーボード割り込みが無効化され、ターミナルのカーソルが非表示になり、情報窃取モジュールがバックグラウンドでダウンロードされる。

また、macOSの通知センターも約6時間にわたり無効化され、攻撃を露見させる可能性のある通知が事実上ブロックされます。

Fake Cloudflare progress bar
ターミナル上に表示される偽のCloudflare進行状況バー
出典:Group-IB

パスワード入力の強制

Group-IBの研究者は、ClickLockがエクスプロイトや特権昇格を一切必要とせず、ソーシャルエンジニアリングと強制的なインタラクションループを通じて目的を達成することを強調しています。

攻撃の成功は、被害者に macOS システムのパスワードを入力させるよう強要するマルウェアの仕組みによって達成されます。

Group-IBによると、このスクリプトは最初に、被害者の実際のユーザー名とダウンロードされたAppleのアイコンを使用して、偽のmacOSパスワードダイアログを表示する。

ユーザーがパスワードを入力すると、マルウェアはそのデータを検証し、Telegram を通じて攻撃者に送信します。

ユーザーがダイアログをキャンセルした場合、マルウェアは 2 つの macOS LaunchAgent(com.authirity.plist、com.chromer.plist)を介して永続性を確立し、次回のログイン時に再読み込みされます。

次回の起動時、パスワード窃取モジュールは210ミリ秒ごとに終了ループを実行し、主要なアプリ(Finder、Dock、ターミナル、アクティビティモニタ、コンソール、システム設定、Spotlight、ウェブブラウザなど)を標的とし、被害者が要求に応じるまで画面上にパスワードダイアログのみを表示し続けます。

Group-IBの報告によると、このループは300,000秒(約83時間)間、あるいは被害者が正しいパスワードを入力するまで継続するように設定されています。

The kill loop function
2つ目のキルループ関数
出典:Group-IB

2つ目のLaunchAgentは、別の強制メカニズムを実行します。これも前述のシステムアプリケーションの多くを終了させ、正規のシステムプロンプトを介してキーチェーンの認証を要求し、Chromeのセーフストレージキーへのアクセス承認を求めます。

そのキーを使用することで、盗まれたデータベースから取得した、Chromiumにオフラインで保存されたパスワード、Cookie、および自動入力情報を復号化することが可能になります。

この2つ目のメカニズムは200ミリ秒ごとに繰り返し実行され、約35日間(300万秒)継続するように設定されています。

また、ClickLockはデータ収集モジュールも展開しており、その対象は以下の通りです。

  • 8つのブラウザ(Chrome、Firefox、Brave、Edge、Opera、Vivaldi、Arc、Chromium)からのデータ
  • 保存されたログイン情報、クッキー、自動入力データ、ブックマーク、ローカルストレージ、セッションストレージ
  • 仮想通貨ウォレットの拡張機能およびデスクトップウォレットファイル
  • オフラインでの解読を目的とした、暗号化されたウォレット保管庫のデータ
  • パスワードマネージャー拡張機能のデータ
  • EVM、ビットコイン、ソラナ、TRON、TON、およびStacksにわたるキャッシュされた仮想通貨アドレス
  • シェル履歴
  • FileZillaのFTP設定および最近接続したサーバーのデータ
  • 基本的なシステム情報およびパブリックIPアドレス

収集モジュールは、収集した情報と要約ログファイルをZIPアーカイブにまとめ、Telegram Bot APIを介してアップロードします。

40 MBを超えるファイルは複数の部分に分割され、リトライロジックにより、一時的なネットワーク障害後もアップロードが再開されるようになっています。

最後のモジュールは、オープンソースツール「GSocket」を改変したもので、攻撃者にとって永続的なバックドアとして機能します。

このバックドアは、LaunchAgent、crontab エントリ、シェル設定ファイルの変更など、複数の方法を通じて永続性を確立します。

これは GSocket リレーを介して接続し、攻撃者がリバースシェルを開いてシステムを遠隔操作できるようにします。

実行後に自己削除される他の ClickLock モジュールとは異なり、GSocket は感染したシステム上に残留する唯一のコンポーネントです。

The complete ClickLock attack chain
ClickLock の完全な攻撃チェーン
出典:Group-IB

Group-IB は、「このマルウェアは検出の余地をほとんど残さない」こと、また、悪意のあるペイロードは、評判に問題のない正当なドメインを乗っ取ってホストされていることを警告しています。

さらに、このスクリプトは VirusTotal では悪意のあるものとしてフラグが立てられておらず、そのモジュールは実行後に自己削除されるため、痕跡を残しません。

それにもかかわらず、研究者らは、osascript によるパスワードダイアログの起動、繰り返されるプロセスの終了、ブラウザのプロファイルディレクトリへの大量アクセス、Telegram の API へのアウトバウンド接続など、マルウェアによって生成されるアクティビティに基づいて検出が可能であると述べています。

これらの攻撃から身を守るためには、ユーザーは、特にウェブサイトからの要求である場合、完全に理解していないターミナルコマンドを貼り付けることを避けるべきです。

「ターミナルを開くよう指示するページは、どれほどプロフェッショナルに見えても、システムを侵害しようとしているのです」と研究者らは述べています。

システムの他の部分が反応しなくなっている状態でログインパスワードの入力を求められた場合、Group-IBは、電源ボタンを長押ししてシステムを強制終了させ、その後セーフモードで起動してシステムを復旧することを推奨しています。