Python Package Index (PyPI) の管理者は、セキュリティ ベンダーからこの問題について通知を受けた後、10 個の悪意のあるソフトウェア コード パッケージをレジストリから削除しました。
このインシデントは、脅威アクターが PyPI、Node Package Manager (npm)、Maven Central などの広く使用されているソフトウェア リポジトリに不正なソフトウェアを配置し、複数の組織に侵入することを目的として、急速に増加している最近の事例のリストの最新のものです。 セキュリティ アナリストは、公開レジストリからサードパーティおよびオープン ソース コードをダウンロードする際に、開発チームがデュー デリジェンスを実施する必要性が著しく高まっていると説明しています。
Check Point の Spectralops.io の研究者は、PyPI 上のこの最新の一連の悪意のあるパッケージを発見し、それらが情報を盗むマルウェアのドロッパーであることを発見しました。 パッケージは正当なコードのように見えるように設計されており、場合によっては、PyPI で人気のある他のパッケージを模倣していました。
インストール スクリプト内の悪意のあるコード
チェック・ポイントの研究者は、マルウェアをレジストリに配置した攻撃者が、悪意のあるコードをレジストリに埋め込んでいたことを発見しました。 パッケージ インストール スクリプト. そのため、開発者が「pip」インストール コマンドを使用して不正なパッケージをインストールすると、悪意のあるコードが気付かれずにユーザーのマシンで実行され、マルウェア ドロッパーがインストールされます。
たとえば、「Ascii2text」と呼ばれる偽のパッケージの XNUMX つには、インストール スクリプト (setup.py) によってインポートされたファイル (_init_.py) に悪意のあるコードが含まれていました。 開発者がパッケージをインストールしようとすると、コードがローカル パスワードを検索するスクリプトをダウンロードして実行し、それを Discord サーバーにアップロードします。 Check Point によると、悪意のあるパッケージは、同じ名前と説明の人気のあるアート パッケージとまったく同じように見えるように設計されていました。
10 個の不正なパッケージのうち 2 つ (Pyg-utils、Pymocks、および PyProtoXNUMX) は、最近マルウェアを展開したのと同じ攻撃者によって開発されたようです。 AWS クレデンシャルを盗む PyPI で。 たとえば、setup.py のインストール プロセス中に Py-Utils が、AWS 認証情報を盗むキャンペーンで使用されたのと同じ悪意のあるドメインに接続されました。 Pymocks と PyProto2 は、インストール プロセス中に別の悪意のあるドメインに接続しましたが、それらのコードは Pyg-utils とほぼ同じであったため、Check Point は、同じ作成者が XNUMX つのパッケージすべてを作成したと考えています。
他のパッケージには、コードをテストするためのパッケージであると称する Test-async と呼ばれるマルウェア ダウンローダーが含まれている可能性があります。 2 つは、setup.py のインストール プロセス中にユーザーの資格情報を盗むための WINRPC エクスプロイトと呼ばれるものです。 環境変数を盗むための XNUMX つのパッケージ (Free-net-vpn および Free-net-vpnXNUMX)。
「開発者が自分の行動を安全に保ち、使用中のすべてのソフトウェア要素、特に異なるリポジトリからダウンロードされているものを再確認することが不可欠です」と Check Point は警告しています。
セキュリティ ベンダーは、悪意のあるパッケージが PyPI レジストリでどのくらいの期間利用可能であったか、または何人がダウンロードした可能性があるかを尋ねられたとき、すぐには回答しませんでした。
サプライチェーンのエクスポージャの拡大
この事件は、適切な審査なしに公開リポジトリからサードパーティのコードをダウンロードすることの危険性が高まっていることを浮き彫りにする最新のものです。
ちょうど先週、ソナタイプは発見を報告しました ランサムウェアを含む XNUMX つのパッケージ イタリアの学齢期のハッカーが、実験の一環として PyPI にアップロードしたこと。 250 人以上のユーザーがパッケージの 11 つをダウンロードし、そのうち XNUMX 人のコンピューター上のファイルが暗号化されました。 その場合、ハッカーが悪意なくマルウェアをアップロードしたように見えるため、被害者は身代金を支払うことなく復号化キーを取得できました。
ただし、攻撃者が公開コード リポジトリをマルウェア配布の足がかりとして使用した例は他にも多数あります。
今年の初め、Sonatype は、PyPI で Cobalt Strike 攻撃キットをダウンロードするための悪意のあるパッケージも発見しました。 約 300 人の開発者がマルウェアをダウンロードしました 削除される前。 XNUMX月、カスペルスキーの研究者が発見した 高度に難読化された XNUMX つの情報スティーラー Java プログラマー向けに広く使用されている npm リポジトリに潜んでいます。
攻撃者は、その範囲が広いため、これらのレジストリをますます標的にし始めています。 たとえば、PyPI は 613,000ユーザー このサイトのコードは現在、世界中で 391,000 以上のプロジェクトに組み込まれています。 Fortune 500 企業、ソフトウェア発行元、政府機関など、あらゆる規模と種類の組織が、パブリック リポジトリのコードを使用して独自のソフトウェアを構築しています。