GitHub introduces 2FA and quality of life improvements for npm
2022/07/27 BleepingComputer — GitHub は、npm (Node Package Manager) に対して、3つの重要な改良点の提供を発表したが、それにより、npm 利用が安全かつ管理しやすくなる。新機能の概要は、より合理化されたログインおよび公開エクスペリエンスと、Twitter/GitHub アカウントの npm リンク、そして、パッケージ署名の検証システムの追加などである。さらに GitHub は、2022年5月に導入された2要素認証プログラムのベータが終了し、すべての npm ユーザーも利用できるようになるとも述べている。

GitHub 傘下にある npm プラットフォームは、JavaScript コーダーのためのパッケージ・マネージャーとリポジトリで構成されており、毎日 50億個のパッケージがダウンロードされ、さまざまな開発者のプロジェクトで使用されている。
最近の GitHub は、数百のアプリや Web サイトに影響を与える、大規模なセキュリティインシデントに見舞われており、セキュリティ強化計画の策定と、迅速な実施を余儀なくされていた。
npm の新機能
新しい npm のログインと公開システムでは、認証を Web ブラウザで処理できるようにするために、同一セッションで有効な認証トークンを、最大で5分間保持できるようになった。

この変更は、2FA システムの導入によるものであり、開発者に対してアクションのたびに新しいワンタイム・パスワードの入力を要求するという、これまでの問題を解消するものとなっている。
GitHub と Twitter のアカウントを、npm に接続するための新しいオプションは、身元確認の役割を果たすことで信頼性を高め、たとえば npm アカウントを悪用した成りすましなどの防止を目的としている。
すことができないよう、

この新しいシステムは、必要に応じたアカウント回復にも対応し、プロセスの信頼性を高め、面倒を減らし、将来における自動化の基礎を築くものになる。
さらに、新しい署名監査システムが提供され、これまでの多段階かつ複雑な PGP プロセスに代わり、開発者による npm パッケージへの容易な署名が確認できるようになった。
ユーザーは、npm CLI の新しい “npm audit signatures” コマンドを用いて、ローカルでパッケージのソースを検証できるようになった。

それと同時に、このプラットフォームでは、すべてのパッケージに ECDSA (楕円曲線暗号) アルゴリズムでの再署名が可能となり、鍵管理に HSM を使用することでセキュリティがさらに強化される。
重要なアカウントでの 2FA
npm レジストリの安全性を確保するための次のステップは、週間のダウンロード数が 100万回以上、または、依存関係が 500以上のパッケージを管理する、すべてのアカウントに 2FA 認証が導入されることである。
GitHub によると、本人確認フォームを追加して、アカウント回復プロセスを改善した後に実施されるとのことだ。現時点では、次のステップということ以外に、厳密なスケジュールは提示されていない。
OSS リポジトリの安全性が問題となり、5月3日の「GitHub が 2FA への完全移行を 2023 年末まで実施:ソフトウェア・サプライチェーンを攻撃から守る」や、6月9日の「PyPI の Critical プロジェクトで 2FA が義務化:突然の決定に反発する開発者も」といった動きが目立つようになってきました。ただ、その背景にあるのは、それらのリポジトリの惨憺たる状況です。よろしければ、GitHub で検索、PyPI で検索、npm で検索も、ご利用ください。

You must be logged in to post a comment.