GhostActionの攻撃者が、認証情報を盗むJavaScriptをフォントファイルに偽装した第2段階のペイロードを使い、94のGitHubリポジトリを侵害しました。
この攻撃キャンペーンはVisual Studio Codeのタスクを悪用し、開発者のワークステーション上でマルウェアを実行させます。これまでは悪意のあるGitHub Actionsワークフローを通じてシークレットを盗むことが中心でしたが、攻撃の手口を広げた形です。
OpenSourceMalwareがこの一連のリポジトリを調査しました。きっかけは、Jamf Threat Labsの研究者Thijs Xhaflaire氏がPolinRiderの感染を調べる中で、不審なリポジトリを発見したことです。
リポジトリは66のオーナーに属しています。研究者らは79件をクローンし、アクセス可能なすべてのリポジトリで第2段階のファイルを確認しました。残る15件は利用できず、分析できませんでした。
攻撃では、ランチャーを.vscode/tasks.jsonに、ペイロードをpublic/fonts/fa-solid-400.woff2に配置します。ファイル名はFont Awesomeのリソースに似ていますが、このフォントとされるファイルの中身は、難読化されていない38行のNode.jsコードです。
eslint-checkという名前のタスクが、偽フォントに対してNode.jsを呼び出します。runOn: folderOpenの設定により、プロジェクトを開いた時点で実行が要求されます。さらに、表示オプションでターミナルを見えなくしています。
ただし、実行は無条件ではありません。ワークスペースが信頼されていること、そしてVS Codeの自動タスクが許可されていることが条件です。リポジトリを開いたりクローンしたりしただけで、マルウェアが実行されたとは限りません。
ペイロードは実行されると、ユーザー名、ホスト名、認証情報ファイル、環境変数を収集します。標的には、AWSの認証情報、npmとPyPIの認証情報、Gitの認証情報、Kubernetesの設定、ClaudeとGeminiのログインファイルが含まれます。RSAとEd25519のSSH秘密鍵も、切り詰めずに全体を読み取ります。
さらに、ホームディレクトリ全体を再帰的に検索し、認証情報のパターンを探します。収集した情報は、ポート8080へのHTTP POSTで送信されます。過去のインフラ調査では、GhostActionの情報収集活動が193.32.204[.]199と結び付けられていました。
ペイロードは、cronに対応するシステムに永続化の仕組みを仕込みます。スケジュールされたコマンドが5分ごとに、ホスト名ごとのパスを使って攻撃者のサーバーからスクリプトを取得し、その応答をBashにパイプで渡します。
このエントリには#ghc2というマーカーが付いています。インストール時には、一致する既存のエントリを削除してから新しいエントリを追加します。そのため、悪意のあるリポジトリのファイルを削除しても、スケジュールされた足がかりは消えません。
Jenn Gile氏は、このサーバーから配信される後続のペイロードを取得できていません。そのため、後続の活動は解明されていません。Windowsには標的となるcrontabの仕組みがありませんが、認証情報の収集は実行される可能性があります。
このランチャーはPolinRiderの偽フォント手法に似ています。ただしGhostActionは、ブロックチェーンを使った難読化ローダーではなく、可読なJavaScript、直接のHTTPインフラ、cronを使っています。Jenn Gile氏の調査では、両者に共通の運用者がいると示せるような共通の指標は見つかっていません。
第2段階のファイルの追加は、大半が10月15日に行われ、先行するワークフローへの注入に続く形でした。2つのリポジトリでは、オーナーが悪意のあるワークフローをすでに削除していたにもかかわらず、新しいペイロードが仕込まれました。
対応にあたる担当者は、クリーンアップの前に、侵害されたGitHubのアクセス権を取り消してください。そのうえで、書き込み可能なリポジトリを調べ、悪意のあるタスクとワークフローを削除し、影響を受けたエンドポイントを調査する必要があります。
GhostActionに関する過去の分析でも、ワークフローを削除しても、盗まれたアクセス権は無効にならず、Gitの履歴を通じて露出した認証情報も守られないと警告していました。認証情報のローテーションは、封じ込めの後に、クリーンな端末から実施してください。
注: IPアドレスとドメインは、誤って名前解決されたりハイパーリンクになったりするのを防ぐため、意図的に無害化(デファング、例: [.])しています。元に戻す(リファング)のは、MISP、VirusTotal、SIEMなど、管理された脅威インテリジェンスプラットフォーム内に限ってください。
ANY.RUNを導入し、脅威調査の効率化と手作業の削減を進めている16,000以上のSOCチームに加わりませんか。チームで試してみる
翻訳元: https://cyberpress.org/ghostaction-hackers-infect-94-github-repositories/