短期間で大量拡散、PayPal情報を盗む“不正NPMパッケージ”とは?

文●フォーティネットジャパン 編集●ASCII

提供: フォーティネットジャパン

  • この記事をはてなブックマークに追加
  • 本文印刷

本記事はフォーティネットジャパンが提供する「FORTINETブログ」に掲載された「PayPalユーザーを狙う不正NPMパッケージ」を再編集したものです。

 先頃、FortiGuard LabsのAI活用OSSマルウェア検知システムは、侵害されたシステムから機密情報を窃取するよう設計された、一連の悪質なNPMパッケージを発見しました。これらのパッケージは、tommyboy_h1およびtommyboy_h2として知られる脅威アクターによって3月5日から3月14日の間に作成され、PayPalユーザーを標的にしていると見られます。

 PayPalは広く利用されているプラットフォームで、機密度の高い財務情報を保持しています。PayPalに関連した名前を使うことで、不正パッケージは検知機能を回避しやすくなり、攻撃者はより簡単に機密情報を盗むことができます。さらに攻撃者は、oauth2-paypalやbuttonfactoryserv-paypalのようにパッケージ名に「PayPal」を含めて正当性を装い、開発者を騙してパッケージをインストールさせようとします。悪意のあるコードは、ユーザー名やディレクトリパスといったシステムデータを収集し流出させます。それらのデータはPayPalアカウントへの攻撃に使用されたり、詐欺目的で販売されたりします。

 このコードは非常によく似た特性を持ち、機密情報を窃取してリモートサーバーに送信することを目的にしています。ユーザーは知らないうちに個人情報を失うことになります。

図1:「tommyboy_h1」の作成者が公開したパッケージ

図2:「Tommyboy_h2」の作成者が公開したパッケージ

 パッケージがインストールされる前に、プリインストールフックが自動的に不正スクリプトを実行し、ユーザーやセキュリティツールによる検知を回避します。スクリプトは現在のユーザー、作業ディレクトリ、ホスト名などのシステムデータを収集します。攻撃者はそれらのデータから環境を把握し、さらなる攻撃を計画します。その後、この情報は16進数形式にエンコードされ、ディレクトリパスの切り捨てや分割によって難読化されるため、脅威検知のためのセキュリティ対策は一層難しくなります。難読化されたデータは、攻撃者が制御する外部サーバーに送信されます。このとき、URLは動的に生成されるため、ブロックはより困難になります。流出した機密データは、さらに別の攻撃に使用される可能性があります。ハッカーは、短期間に多数の不正パッケージを公開しています。

図3:不正パッケージで見つかった悪意あるコード(oauth2-paypal v699.0.0など)

図4:他のパッケージで見つかった同一のコード(buttonfactoryserv-paypal v3.50.0など)

図5:短期間で公開された多数の不正パッケージ

結論

 今回の攻撃では、不正なNPMパッケージの「プリインストールフック」を使用して、パッケージのインストール時に自動的にスクリプトが実行されます。このスクリプトはユーザーやホスト名、ディレクトリパスなどのシステム情報を収集し、攻撃者が制御するサーバーに送信します。侵害を見抜くには、「paypal」などの名前が付けられた通常とは異なるパッケージ(oauth2-paypal、buttonfactoryserv-paypalなど)がないか確認します。不明なサーバーへの予期せぬネットワーク接続なども、攻撃の兆候を示すものです。したがって、ネットワークログもチェックし、不審なアクティビティがないか確認してください。疑わしいパッケージが見つかった場合はそれを削除し、侵害された認証情報を変更します。さらに、システムをスキャンしてそれ以外の脅威がないか調べます。このような問題を検知するために、セキュリティソフトウェアを最新の状態に保つようにします。

 tommyboy_h1tommyboy_h2の作成者は同一人物である可能性が高く、短期間に多数の悪意あるパッケージを公開していました。FortiGuard Labsでは、同じ作成者がPayPalユーザーを標的に、これらのパッケージを作成したと考えています。パッケージをダウンロードする際には十分な注意を払い、その送信元が信頼できることを確認し、こうした攻撃の被害に遭わないようにしてください。

フォーティネットのソリューション

 FortiGuardアンチウイルスは、このレポートで特定した悪意のあるファイルを、以下の不正プログラムとして検知します。

bankingbundleserv_1.20.0: Bash/TommyBoy.A!tr
buttonfactoryserv-paypal_3.50.0: Bash/TommyBoy.A!tr
buttonfactoryserv-paypal_3.99.0:Bash/TommyBoy.A!tr
tommyboytesting_1.0.1:Bash/TommyBoy.A!tr
tommyboytesting_1.0.2:Bash/TommyBoy.A!tr
tommyboytesting_1.0.5:Bash/TommyBoy.A!tr
tommyboytesting_1.0.6:Bash/TommyBoy.A!tr
tommyboytesting_1.0.7:Bash/TommyBoy.A!tr
tommyboytesting_1.0.8:Bash/TommyBoy.A!tr
tommyboytesting_1.0.9:Bash/TommyBoy.A!tr
tommyboytesting_1.0.10:Bash/TommyBoy.A!tr
tommyboytesting_1.0.11:Bash/TommyBoy.A!tr
tommyboytesting_1.0.12:Bash/TommyBoy.A!tr
compliancereadserv-paypal_2.1.0:Bash/TommyBoy.A!tr
oauth2-paypal_0.6.0:Bash/TommyBoy.A!tr
oauth2-paypal_1.6.0:Bash/TommyBoy.A!tr
oauth2-paypal_2.6.0:Bash/TommyBoy.A!tr
oauth2-paypal_4.8.0:Bash/TommyBoy.A!tr
oauth2-paypal_7.5.0:Bash/TommyBoy.A!tr
oauth2-paypal_10.0.0:Bash/TommyBoy.A!tr
oauth2-paypal_699.0.0:Bash/TommyBoy.A!tr
Paymentapiplatformservice-paypal_1.20.0:Bash/TommyBoy.A!tr
Userbridge-paypal_1.20.0:Bash/TommyBoy.A!tr
userrelationship-paypal_1.20.0:Bash/TommyBoy.A!tr

 FortiGuardアンチウイルスサービスは、FortiGate、FortiMail、FortiClient、FortiEDRによってサポートされます。最新のアンチウイルスアップデートをお使いのお客様は、脅威から保護されています。

 FortiGuard Webフィルタリングサービスは、このレポートで取り上げたダウンロードURLを「不正」として検知しブロックします。

 FortiDevSec SCAスキャナは、このレポートで解説したパッケージも含め、ユーザーのプロジェクトで依存関係として動作する可能性のある不正パッケージをテスト段階で検知し、それらの依存関係がユーザーの製品に影響するのを防ぎます。

 組織が上記の不正パッケージやその他のサイバーセキュリティ攻撃を受けていると思われる場合は、フォーティネットのグローバルFortiGuardインシデントレスポンスチームまでご連絡ください。

IOC(Indicators of Compromise:侵害指標)

■関連サイト