ハッカー、Coderのモジュールレジストリを侵害し悪意あるパッケージを配布して認証情報を窃取

Coderは、身元不明の脅威アクターが同社のCloudflareインフラへの侵入に成功し、モジュールレジストリに配信元として使われるIPアドレスのプール内に不正なIPアドレスを挿入したという、重大なサプライチェーン侵害を公表しました。

この侵入により、悪意あるレジストリサーバーが一部のユーザーに対してトロイの木馬化されたCoderのアーティファクトを配布できる状態となり、クラウド、CI/CD、AIツール、ユーザー認証情報が漏洩する恐れがありました。

今回の事案では、主要なCoderモジュールレジストリであるregistry.coder.comのユーザーが影響を受けました。2026年8月31日07:35 UTCから21:45 UTCまでの限られた露出期間中に、Terraformベースのテンプレートコンポーネントをダウンロードまたは更新したユーザーが対象です。

Coderの発表によれば、同社が保有する顧客データへのアクセスや影響を示す証拠は確認されていないとのことです。悪意あるパッケージには、侵害された環境内で利用可能な認証情報を探索し、攻撃者が管理するなりすましドメインcoder-infra[.]comへ送信するよう設計されたコードが含まれていました。

このドメインは正規のCoderインフラの命名規則に酷似しており、報道によれば侵害の直前である8月28日に登録されていました。

侵害されたモジュールは、Terraformのdata "external" "telemetry"ブロックを使い、dlp-docker.shという名前の悪意あるスクリプトを実行するものでした。

このスクリプトはhttp://www[.]coder-infra[.]com/cli/checkに接続するよう設定されており、X-CLI-TokenというHTTPヘッダーを使ってデータを送信します。これにより、機密性の高いデプロイメントデータを直接収集・外部送信する仕組みが成立していました。

Coderは、影響の大きさは悪意あるモジュールがいつ実行されたかによって異なると警告しています。テンプレートのアップロード、更新、ドライラン実行の際には、通常、悪意あるコードがユーザー固有のシークレットを取得することはありません。

しかし、その場合でもプロビジョナーホストに保存された環境変数や認証情報にはアクセスできる可能性があり、インフラレベルのシークレットに関するリスクが生じます。

より大きな露出が発生したのは、ワークスペースのビルド時です。このシナリオでは、プロビジョナーがユーザーのOIDCトークン、設定されている場合はSSHキー、そして対象テンプレートが使用する使い捨ての外部認証トークンを受け取ってしまう可能性がありました。

リフレッシュトークンは含まれていませんでした。プロビジョナーを独立したサービスとしてではなくcoderdプロセス内で実行している組織では、より広範な露出に直面する可能性があります。

そうした構成では、攻撃者のコードがデータベースパスワード、外部認証プロバイダーの設定、その他の環境ベースのシークレットを含む、Coderの設定変数にアクセスできた可能性があります。

Coderはこの事案を重大(critical)な深刻度に分類し、アドバイザリGHSA-vx42-ghc9-gw65を公開しました。このアドバイザリにCVE識別子は記載されていませんが、2.37.0より前のバージョンが影響を受けるとしています。同社はCoder 2.37.0、2.36.4、2.35.7、2.34.9で修正版をリリースしました。

管理者は、悪意ある可能性のあるキャッシュ済みTerraformモジュールを削除した後にのみ、デプロイメントを更新する必要があります。パッチ適用済みのCoderバージョンをインストールするだけでは、モジュールキャッシュやデプロイメントインフラに既に保存されている侵害済みアーティファクトを排除できるとは限りません。

同社は、管理者がキャッシュされたモジュールファイル、関連するテンプレート、影響を受けたワークスペース、そしてdata.external.telemetryという痕跡を含むプロビジョナーログを特定するのに役立つSQLクエリを公開しました。

セキュリティチームは、ファイアウォール、DNS、プロキシ、VPCのフローログを調べ、coder-infra[.]comまたはIPアドレス199.91.220[.]205への送信トラフィックがないか確認する必要があります。

また、このアドバイザリでは複数の悪意あるシェルスクリプトのハッシュ値も示されており、dlp-docker.shについてはSHA-256値7190a17c593276d7fd71c4863a4bc0b6c957ed14249288e6f64c5540e2c49398が挙げられています。

影響を受けた組織は、露出期間中に取得したキャッシュ済みモジュールを削除し、検証済みのパッケージから再デプロイを行い、プロビジョナーがアクセスできた可能性のあるすべての認証情報をローテーションする必要があります。

セキュリティチームに、不審な活動をより迅速に調査し、ビジネスへの影響が拡大する前に脅威を封じ込めるための可視性とコンテキストを与えましょう。ANY.RUNで調査を強化する

翻訳元: https://cyberpress.org/hackers-compromise-coder-module-registry/

本記事は cyberpress.org の記事を翻訳・要約したものです。