Ethersphere ― リリース自動化を乗っ取られ、bee-jsなどに不正版
分散ストレージSwarmのEthersphereで、攻撃者がリリース用のボットと保守者のGitHubアカウントを使い、11月9日にnpmの @ethersphere/bee-js 13.3.0(約75分公開)と、署名・公証済みのSwarm Desktop 0.56.2(約8時間半公開)を正規のCIから出した。どちらもノードのウォレット鍵と平文のパスワードを盗み、バックドアを入れる。
タグ / 対象技術
すべての面から5件。公開日の新しい順。(npm・PyPI のタグが付いた記事を含みます)キーワードと組み合わせて探す →
分散ストレージSwarmのEthersphereで、攻撃者がリリース用のボットと保守者のGitHubアカウントを使い、11月9日にnpmの @ethersphere/bee-js 13.3.0(約75分公開)と、署名・公証済みのSwarm Desktop 0.56.2(約8時間半公開)を正規のCIから出した。どちらもノードのウォレット鍵と平文のパスワードを盗み、バックドアを入れる。
AI APIの中継ライブラリ LiteLLM の 1.107.0 が10月21日、PyPI に約2時間、公式Dockerイメージに約2時間半、認証情報を盗むマルウェア入りで公開された。攻撃者は開発者3人のGitHub CLIのOAuthトークンを使い、ブランチ保護を外してリリース用ワークフローの取得元を書き換え、ハイフン1つ違いの偽リポジトリ「Berri-AI/litellm」からビルドさせた。LiteLLMは、トークンは社内のLiteLLMの稼働環境のログから盗まれたとみている。安全な版は 1.106.2。LiteLLM 1.107.0 のバックドア混入。ログに残った開発者のGitHubトークンで正規のリリース工程を乗っ取り、ハイフン1つ違いの偽リポジトリから「正しい来歴付き」で配った。
2023年からWindowsの開発者を狙ってnpmに悪性パッケージを出し続けている「MALFEX」が、削除されたJavaScriptの部品を2日以内に作り直し、最後はローダーをコンパイル済みのNode.jsネイティブアドオン(DLL)に移した。imgdecodeはrequire()されただけで、対話型のコンソールで動いているときに限り、GitHubから暗号化されたシェルコードを取得し、停止状態で起動したdllhost.exeに注入する。インストールスクリプトを使わないため、install scriptを止める対策では防げない。SafeDepが分析を公開した10月13日以降も、10月18日昼の時点でnpmに残っている。npmパッケージ imgdecode(MALFEX)。インストールスクリプトなし、require()した瞬間に同梱のWindows用DLLがシェルコードを取りに行く。
npmのTrusted Publishing(OIDCによるトークン不要の公開)は、信頼するGitHubリポジトリを、最初の公開が済むまで変わらない数値IDではなく「owner/repo」という名前だけで覚えていた。リポジトリの改名・移管・削除で空いた名前を攻撃者が取り直すと、認証情報を何も盗まずに他人のパッケージの新しい版を公開できた。Bloom Securityは1,500超のパッケージが該当したとし、GitHubは10月2日、未検証の設定を作成48時間で失効させる変更を入れた。
AIエージェント基盤のnpm SDK「tensorlake」の0.5.144が、メンテナ名義でmainに直接押し込まれた後、正規のリリースフローとprovenance付きで公開された。preinstallで認証情報を奪い、奪ったGitHubトークンを取り消すとホームディレクトリを消す「人質」監視を仕込む。tensorlake npm 0.5.144。正規リポジトリのmainから出たShai-Huludワーム、トークンを取り消すとホームを消す人質機構。