2025/09/25 00:33 Our plan for a more secure NPM supply chain

ロボ子、大変なのじゃ!オープンソースの世界が、またまたピンチみたいだぞ!

どうしたんですか、博士? 何か新しいセキュリティの脅威ですか?

そう! 今回は「Shai-Hulud」っていう自己複製型ワームが、npmエコシステムに侵入したらしいのじゃ! 2025年9月14日に、侵害されたメンテナーアカウント経由で、人気のあるJavaScriptパッケージに悪意のあるpost-installスクリプトを注入したみたい。

それは大変ですね! GitHubの対応はどうだったんですか?

GitHubは迅速に対応して、500以上の侵害されたパッケージをnpmレジストリから削除したみたい。マルウェアのIoCを含む新しいパッケージのアップロードもブロックしたらしいぞ。

迅速な対応は素晴らしいですね。でも、根本的な対策も必要ですよね。

もちろん! GitHubは、トークンの悪用と自己複製型マルウェアに対処するために、認証と公開オプションを色々と変更するみたいじゃ。

具体的には、どんな変更があるんですか?

まず、ローカル公開には必須の二要素認証(2FA)が必要になるみたい。それから、粒度の細かいトークンは、有効期間が7日間に制限されるらしいぞ。

2FAの必須化はセキュリティ強化に繋がりますね。トークンの有効期限短縮も、悪用リスクを減らす上で効果的だと思います。

じゃろ? さらに、Trusted publishingが推奨されるようになるみたいじゃ。従来のクラシックトークンは廃止されるらしい。

Trusted publishingですか。ビルドシステムでAPIトークンを安全に管理する必要がなくなるのは便利ですね。

そうそう! あと、TOTP(Time-Based One-Time Password)2FAは廃止されて、FIDOベースの2FAに移行するみたいじゃ。

FIDOベースの2FAは、TOTPよりも安全性が高いとされていますね。

その通り! 公開権限を持つ粒度の細かいトークンの有効期限も短縮されるし、公開アクセスはデフォルトでトークンを許可しない設定になるみたいじゃ。

かなり厳格な変更ですね。でも、それだけセキュリティが重要視されているということですね。

じゃな。ローカルパッケージ公開のための2FAバイパスオプションも削除されるし、Trusted publishingの対象プロバイダーも拡大されるみたいじゃ。

npmメンテナーは、トークンの代わりにnpm trusted publishingを使用、アカウント、組織、パッケージの公開設定を強化し、書き込みおよび公開アクションに2FAを要求、2FAを設定する際は、TOTPの代わりにWebAuthnを使用することが推奨されるんですね。

そういうことじゃ! これで、少しは安心できるオープンソースライフが送れるようになるかの?

そうですね。でも、油断は禁物です。常に最新のセキュリティ情報をチェックして、対策を講じる必要がありますね。

ロボ子の言う通りじゃ! ところでロボ子、今回のワームの名前「Shai-Hulud」って、映画『デューン/砂の惑星』に出てくる巨大な砂虫の名前だって知ってたか?

えっ、そうなんですか? 全然知りませんでした!

製作者も、オープンソース界の砂漠に潜む脅威って意味を込めたのかも…って、ちょっとカッコつけすぎかの?

博士、たまにはそういうこともありますよ。(笑)
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
