npm レジストリで発見された悪意のある pgserve および automagik 開発者ツール

偽のパッケージはデータ、認証情報、シークレットを盗み、それらを使用して作成されたすべてのパッケージに感染することを目的としており、「完全な組織の乗っ取り」となる可能性があります。

アプリケーション開発者に対して、アプリケーション開発用の組み込み PostgreSQL サーバである pgserve と、AI コーディング ツールである automagik の悪意のあるバージョンが npm JavaScript レジストリに投入されており、開発者のコンピュータを汚染する可能性があるという警告が出されています。

これらのバージョンをダウンロードして使用すると、データ、トークン、SSH キー、Amazon Web Services(AWS)、Microsoft Azure、Google Cloud Platform(GCP)の認証情報、ブラウザ ウォレットの暗号通貨、ブラウザのパスワードが盗まれます。マルウェアは他の接続された PC にも広がります。

警告は今週、2 つのセキュリティ企業の研究者から出されました。

Socket の研究者は偽のパッケージを発見しました。これは、アプリケーション開発とテスト用の組み込み PostgreSQL サーバである pgserve を探しているアプリケーション開発者と、Namastex.ai の AI コーディングおよびエージェント オーケストレーション CLI である automagik を対象としています。研究者は、この攻撃がCanisterWorm という最近のキャンペーンと類似していると指摘しました。これは npm の正規パッケージの内容をマルウェアに置き換えるワーム対応サプライ チェーン攻撃です。

Socket のレビュー時、偽の automagik/genie パッケージは週あたり 6,744 ダウンロードを表示し、偽の pgserve パッケージは約 1,300 週間ダウンロードを表示していました。

automagik の偽のバージョンは Socket が勧告を掲載したときのバージョン 4.260421.33 から 4.260421.39 でしたが、追加の悪意のあるバージョンが引き続き公開および識別されています。影響を受けたリリース、メンテナー、またはリリース パスの危険にさらされている完全な範囲はまだ調査中であると、研究者は述べています。

別途、StepSecurity の研究者も npm でpgserve の悪意のあるバージョンを発見しました。侵害されたバージョン(1.1.11、1.1.12、1.1.13)は 1,143 行の認証情報収集スクリプトを注入し、インストールされるたびにポストインストール経由で実行されます。

StepSecurity によると、pgserve の最後の正規リリースは v1.1.10 です。

StepSecurity は、この マルウェアは単純な情報盗難アプリではなく、サプライ チェーン ワームであると述べています。npm 公開トークンが被害者マシン上で見つかった場合、そのトークンが公開できるすべてのパッケージにそれ自体を再注入し、さらに危険を広げます。盗まれたデータは暗号化され、分散インターネット コンピュータ プロトコル(ICP)キャニスター、つまり法執行機関またはドメイン押収によってダウンされることができない特に選択されたブロックチェーンホスト型コンピュート エンドポイントに流出されます。

別のサプライ チェーン攻撃

これは単なるソフトウェア サプライ チェーン攻撃の最新の例です。この攻撃では、脅威アクターが開発者がオープン ソース レジストリから感染したユーティリティとツールをダウンロードし、マルウェアを広く広げるパッケージで使用することを期待しています。

最近の例の 1 つでは、ハッカーが先月 Axios HTTP クライアント ライブラリの主要メンテナーのnpm アカウントを侵害しました。そして昨夏、攻撃者は npm でいくつかの JavaScript テスト ユーティリティを侵害しました

被害者の開発者へのアドバイス

pgserver と automagik の悪意のあるバージョンをダウンロードした開発者は、カナダのセキュアコーディング コンサルティング企業 SheHacksPurple の責任者であるTanya Janca 氏は迅速に行動する必要があると述べています。

「今すぐ、他に何をする前に、あなたが思い付くすべての認証情報をローテーションしてください」と彼女は言いました。「次に、CI/CD ネットワーク出力制御を強化して、ビルド ランナーが明示的に必要なドメインにのみ到達できるようにします。ビルド ランナーと展開ランナーが別の権限を持つ別のサービス アカウントを使用していることを確認してください。目標は、悪意のあるパッケージがビルド環境で実行される場合でも、攻撃者のインフラストラクチャに到達できず(データとシークレットの流出のため)、展開パイプラインへのピボット を防ぐことです。」

悪意のある npm パッケージによって侵害されるのを防ぐために、Janca 氏は IT リーダーがデフォルトで自動ポストインストール スクリプト実行を無効にすべきであると述べました。

開発者はまた直ちに次のコマンドを実行すべきです:npm config set ignore-scripts true。その結果、一部の正規パッケージが時々破損する可能性があることを彼女は認めています。しかし、目標は意図的な摩擦ポイントを作成して、開発者がスクリプトがマシンで実行することを許可されているかどうかを意識的に決定するよう強制することです。

さらに、彼女は、npm に公開されたものが実際にソース リポジトリ内のものと一致するかどうかをチェックするツールが必要だと述べました。「すべてのソフトウェア構成分析ツールがこれを行うわけではありません」と Janca 氏は述べています。「ツールがレジストリからリポジトリの不一致をキャッチするかどうかをベンダーに具体的に尋ねてください。」

最後に、彼女は、公開トークンへのアクセスについて最小権限の原則を適用することをお勧めしました。それらを厳密にスコープし、1 つの特定のパッケージに必要な権限のみを与え、定期的にそれらをローテーションします。手動ではなく、自動で。

単なる認証情報盗難以上

「人々はこれを認証情報盗難事件と考える傾向があります」と Janca 氏は述べています。「実は、これは潜在的な完全な組織の乗っ取りであり、段階的に展開することができます。まず、攻撃者はインストール時にあなたの シークレット、AWS キー、GitHub トークン、SSH キー、データベース パスワード、環境またはホーム ディレクトリに座っているすべてのものを取得します。次に、npm 公開トークンがある場合、ワームは直ちにそれを使用して、公開できるすべてのパッケージにそれ自体を注入します。これは、ダウンストリーム ユーザーも被害者になったことを意味します。3 番目に、盗まれたクラウド認証情報が使用されてあなたのインフラストラクチャにピボットされます。リソースのスピンアップ、データの流出、アカウント間での横方向の移動。4 番目に、あなたのランナーとサービス アカウントを暗黙的に信頼する CI/CD パイプラインは、攻撃者の悪意のあるコードを本番環境に喜んで迎え入れます。」

彼女は、開発者がこのような攻撃に気付くのに長い時間がかかることが多いと指摘しました。「そして、その時までに、攻撃者はソース コード、本番システム、顧客データ、およびあなたのユーザーが頼っているソフトウェアへのアクセスを潜在的に取得していました。」

戦術の転換

Forrester Research のシニア セキュリティおよびリスク アナリストであるJanet Worthington 氏は、CanisterSprawl キャンペーンや Namastex.ai npm パッケージの侵害などの最近の攻撃は、認証情報を盗む自己伝播マルウェアと、それらを使用して他のパッケージを自動的に感染させることに向けた脅威アクターの転換を示していると述べました。

「この動作は、Shai-Hulud ワームなどの以前の発生を反映しています。これは npm トークンを収集して、侵害されたメンテナーのものであるトロイの木馬バージョンを再公開することにより、数百のパッケージ全体に広がりました」と彼女はメールで述べました。

npm などのオープン レジストリ プラットフォームはパブリッシャー アカウントとトークンの周辺でより強力な保護を導入していますが、これらのインシデントは、危険にさらされているものはもはや単一の悪意のあるパッケージに限定されていないという事実を強調しています。代わりに、レジストリ エコシステム全体を通じて急速にカスケードし、他のエコシステムにも飛び移ります。「企業は、キュレーションされたレジストリを維持し、パイプラインで SCA(ソフトウェア構成分析)を自動化し、依存関係ファイアウォールを活用して曝露とブラスト半径を制限することにより、ベット済みのオープン ソースおよびサード パーティ コンポーネントのみが利用されていることを確認する必要があります」と Worthington 氏は述べました。

開発者はソース コード、クラウド インフラストラクチャ、CI/CD パイプライン、公開認証情報の交差点に位置しているため、Janca 氏が指摘したように、1 人の開発者に危険を与えることは、彼らが管理するすべてのパッケージのすべてのユーザー、または組織全体に危険を与えることを意味することができます。この攻撃と最近数か月の他のいくつかも、企業の認証情報と並んで個人の暗号ウォレットを対象としています。「これは、」彼女は述べています。「攻撃者は彼らが当たっている人のタイプを正確に理解し、彼らは単一の攻撃からの最大の利回りに最適化しているということを教えてくれます。」

この記事は元々InfoWorld に掲載されました。

翻訳元: https://www.csoonline.com/article/4162257/malicious-pgserve-automagik-developer-tools-found-in-npm-registry-2.html

ソース: csoonline.com