Dozens of Malicious NPM Packages Steal User, System Data
2023/10/03 SecurityWeek — Fortinet のセキュリティ研究者たちは、被害者のシステムから大量の情報を採取するように設計された難読化スクリプトを取り込んでいる、複数の悪意の NPM パッケージを特定した。10月2日 (月) に Fortinet は、NPM レジストリ内の 35件の悪意のパッケージについて警告した。それらのパッケージに取り込まれているスクリプトにより、システムおよびユーザーデータが収集され、Web フックまたはファイル共有リンクを介したデータ流出が実行されるという。

Fortinet は、それらのパッケージを9種類のセットに分類したが、そのベースとなる類似性は、特定の機密情報の流出や、コードのスタイルや機能になるという。
これらのパッケージ内のインストール・スクリプトは、データ収集を実行するために、インストールの前後に実行されるが、対象となる NPM パッケージがインストールされるときにも実行される。9種類のパッケージセットは、以下の通りである。
1つ目のパッケージセットには含まれるのは、Kubernetes 設定や SSH キーなどの機密情報を盗み出すための、難読化された index.js スクリプトである。それにより、IP アドレス/ホスト名/ユーザー名などのシステムデータも狙われる。
2つ目のパッケージセットに含まれるのは、特定の URL に対して HTTP GET リクエストを送信し、特定のファイル/ディレクトリをスキャンし、ソースコードや設定ファイルなどの開発者データを流出させるように設計された index.js ファイルである。
Fortinet は、「標的となるファイルやディレクトリには、各種のアプリケーション/サービスの認証情報などの、きわめて価値の高い情報が含まれている可能性がある。そして、盗まれたファイル/ディレクトリはアーカイブ化され、ハッカーの FTP サーバにアップロードされる」と説明している。
3つ目と4目のセットには、Discord の Webhook に依存するかたちで、機密データを流出させる index.mjs スクリプトがあるが、それぞれコーディングのスタイルは異なるものとなる。
5つ目のパッケージセットに含まれる index.js インストール・スクリプトは、ホスト名/ユーザー名/ホームディレクトリの内容を流出させるために Web フックを使用している。
7つ目のセットは、installer.js インストール・スクリプトに依存するかたちで、機密データを流出させるが、TLS 証明書の検証の無効化により、接続に対する検出を回避するように設計されている。
9つ目のセットは、システム情報を収集し、Discord の Web フックに流出させるものだ。
Fortinet は、「エンドユーザーにとって重要なのは、不審なインストール・スクリプトを使用するパッケージに注意することだ。Fortinet は、ユーザーが被害に遭わないようにするために、悪意のパッケージの調査と報告を続けていく」と述べている。
こういう分析は良いですね。6と8が抜けていますが、一次ソースの Fortinet 記事には入っています。それにしても、npm に限らずですが、どこの OSS リポジトリも惨憺たる状況ですね。よろしければ、カテゴリ npm/PyPI/GitHub を、ご参照ください。なんというか、書くことが無くなってきました・・・CISA の頑張りに期待しましょう。

You must be logged in to post a comment.