25 種類の 悪意の JavaScript ライブラリ:NPM 公式パッケージ・レジストリ

25 Malicious JavaScript Libraries Distributed via Official NPM Package Repository

2022/02/22 TheHackerNews — 悪意を持った 25種類の JavaScript ライブラリが、公式の NPM パッケージ・レジストリに新たに登録され。感染したシステムから Discord トークンや環境変数を盗みだそうとしている。DevOps セキュリティ企業である JFrog は、「問題のライブラリは typosquatting 技術を活用し、colors.js/crypto-js/discord.js/marked/noblox.js といった正規パッケージを装っているが、これらのパッケージは “ビギナー・マルウェア作者の作品” だ」と指摘している。

パッケージの完全なリストは以下の通りである。

  • node-colors-sync (Discord token stealer)
  • color-self (Discord token stealer)
  • color-self-2 (Discord token stealer)
  • wafer-text (Environment variable stealer)
  • wafer-countdown (Environment variable stealer)
  • wafer-template (Environment variable stealer)
  • wafer-darla (Environment variable stealer)
  • lemaaa (Discord token stealer)
  • adv-discord-utility (Discord token stealer)
  • tools-for-discord (Discord token stealer)
  • mynewpkg (Environment variable stealer)
  • purple-bitch (Discord token stealer)
  • purple-bitchs (Discord token stealer)
  • noblox.js-addons (Discord token stealer)
  • kakakaakaaa11aa (Connectback shell)
  • markedjs (Python remote code injector)
  • crypto-standarts (Python remote code injector)
  • discord-selfbot-tools (Discord token tealer)
  • discord.js-aployscript-v11 (Discord token stealer)
  • discord.js-selfbot-aployscript (Discord token stealer)
  • discord.js-selfbot-aployed (Discord token stealer)
  • discord.js-discord-selfbot-v4 (Discord token stealer)
  • colors-beta (Discord token stealer)
  • vera.js (Discord token stealer)
  • discord-protection (Discord token stealer)

    Discord トークンは、パスワードなしでアカウントにアクセスできるため、脅威アクターにとって有利な手段として浮上しており、この不正アクセスの悪用に成功した脅威アクターは、Discord チャンネル経由で悪意のリンクを伝播できる。

    これらの環境変数は、API アクセストークン/認証キー/API URL/アカウント名などの、開発マシンのプログラミング環境に関連する情報の保存に使用されるものであり、key-value ペアとして保存される。

    markedjs と crypto-standarts という名前の2つの不正パッケージは、よく知られたライブラリである marked と crypto-js の本来の機能を完全に複製する一方で、任意の Python コードをリモートで注入するための悪質なコードが加えられており、オリジナルと重複するトロイの木馬パッケージとしての役割を持つ。

    研究者の Andrey Polkovnychenko と Shachar Menashe は、「悪意のある脅威アクターが、Discord アカウントを操作するために使用するライブラリ lemaaa も、悪意のパッケージだ。特定の方法で使用すると、このライブラリは、要求された実用的な機能の実行に加えて、与えられた秘密の Discord トークンをハイジャックする」と述べている。

    具体的には、lemaaa は、提供された Discord トークンを使用して、被害者のクレジットカード情報を吸い上げ、アカウントのパスワードと電子メールを変更してアカウントを乗っ取り、さらには被害者の全ての friends を削除するよう設計されている。

    同じく Discord トークンを取得する Vera.j sは、異なるアプローチでトークン窃盗を実行する。ローカル・ディスクのストレージから情報を取得するのではなく、Web ブラウザのローカル・ストレージからトークンを取得するのだ。研究者たちは、「この手法は、(トークンをローカル・ディスク・ストレージに保存する) Discord アプリの使用時とは対照的に、Web ブラウザを介した Discord サイトへのログイン時に生成されるトークンを盗み出す」と述べている。

    今回の発見は、情報窃盗から完全なリモート・アクセス・バックドアにいたるまでの、様々なペイロードを展開するための NPM の悪用を明らかにした、一連の開示情報の中で最新のものである。これらの typosquatting と依存関係の混乱による攻撃を軽減するために、開発者たちはパッケージの依存関係の検査が不可欠となる。

オープンソース・ライブラリにおける脆弱性ですが、2021年8月の「Go と Rust の “net” library に影響する IP アドレス解釈の脆弱性とは?」、11月の「Node.js NPM パッケージにバックドア:2200万回/週も DL される人気のライブラリ」、12月の「Mozilla の暗号ライブラリ Network Security Services の深刻なバグが FIX」などの記事がありました。なお、2021年7月の「アプリケーションに含まれる Third-Party ライブラリの 79% が更新されていない?」も、なかなか興味深い記事となっています。

%d bloggers like this: