HeadlinesBriefing favicon HeadlinesBriefing.com

NPM数学ライブラリで暗号化ローダー

Hacker News •
×

人気のmathjsライブラリをコピーしたnpmパッケージmathmain内に隠されたリモートアクセスインプラントを発見しました。悪意のあるコードは暗号化されて配布されます。プログラムがライブラリで特定の方程式を解くまで休眠状態を保ちます。その方程式が鍵です。鍵が一致すると、パッケージはペイロードを復号して実行します。ペイロードは攻撃者からコマンドを受け取り、ホスト上で実行します。コマンドチャネルには公開チャットサービスとブロックチェーンネットワークを使用します。

私たちは2026年9月17日にmathmainのSafe Dep分析から始めました。パッケージは異なる名前と難読化されたコードを持つmathjsのコピーのように見えました。ソルバーに追加された1つの呼び出しがローダーへと導きました。lusolve()の終わり近くで、Common JSビルドに追加の呼び出しを見つけました。ソルバーはすでに結果を計算していました。その後、下三角行列からのデータをremove Solve Validation()に渡しました。

remove Solve Validation()をlib/cjs/utils/is.jsのis Graph(x)まで追跡しました。追加されたis Graph()関数はコードを復号してロードします。入力をJSON文字列に変換し、その文字列をパスワードとして使用します。最初にファイル名を復号します。次にファイルパスとパスワードをevent()に渡し、返されたパスをrequire()でロードします。

行列データがパスワードになります。lib/cjs/utils/event.jsで復号関数を見つけました。それらはscryptを使用してパスワードを256ビットの鍵に変換します。次にAES-GCMでデータを復号します。ローダーはファイルを書き込み、実行します。event()ヘルパーはファイルを復号し、結果をディスクに書き込み、出力パスを返します。

主要エンティティ:企業:mathjs、Safe Dep

FAQ:悪意のあるnpmパッケージmathmainはどのようにペイロードを復号しますか?

パッケージはmathjsライブラリによって解かれる特定の方程式を鍵として使用します。方程式が解かれると、結果の行列データがJSON文字列に変換され、scryptとAES-GCMを介してペイロードを復号するためのパスワードとして使用されます。

FAQ質問:悪意のあるnpmパッケージmathmainはどのようにペイロードを復号しますか?

FAQ回答:パッケージはmathjsライブラリによって解かれる特定の方程式を鍵として使用します。方程式が解かれると、結果の行列データがJSON文字列に変換され、scryptとAES-GCMを介してペイロードを復号するためのパスワードとして使用されます。