NPM リポジトリには、最も人気のある 500 個の NPM パッケージを維持するアカウントに対する必須の XNUMX 要素認証が含まれています。 依存パッケージの数が人気の基準として使用されました。 リストされたパッケージのメンテナは、Authy、Google Authenticator、FreeOTP などのアプリケーションによって生成されたワンタイム パスワード (TOTP) を使用したログイン確認を必要とする XNUMX 要素認証を有効にした後でのみ、リポジトリ上で変更関連の操作を実行できます。ハードウェア キーと生体認証スキャナー、WebAuth プロトコルをサポートします。
これは、アカウント侵害に対する NPM の保護を強化する第 100 段階です。 最初の段階では、XNUMX 要素認証が有効になっていないすべての NPM アカウントを、高度なアカウント検証を使用できるように変換する必要がありました。これには、npmjs.com にログインするか、npm で認証された操作を実行しようとするときに、電子メールで送信されたワンタイム コードを入力する必要があります。ユーティリティ。 第 XNUMX フェーズでは、最も人気のある XNUMX 個のパッケージに対して必須の XNUMX 要素認証が有効になりました。
2020 年に実施された調査によると、アクセスを保護するために 9.27 要素認証を使用したのはパッケージ管理者のわずか 13.37% であり、12% のケースで、開発者は新しいアカウントを登録する際に、既知のパスワードに表示された侵害されたパスワードを再利用しようとしたことを思い出してください。パスワードの漏洩。 パスワード セキュリティのレビュー中に、「13」などの予測可能で簡単なパスワードの使用により、NPM アカウントの 123456% (パッケージの 4%) がアクセスされました。 問題のあるアカウントの中には、最も人気のあるパッケージのトップ 20 に含まれる 13 つのユーザー アカウント、パッケージのダウンロード数が月間 50 万回を超えるアカウントが 40 アカウント、月間ダウンロード数が 10 万回を超えるアカウントが 282 アカウント、月間ダウンロード数が 1 万回を超えるアカウントが 52 アカウントでした。 依存関係のチェーンに沿ったモジュールの読み込みを考慮すると、信頼できないアカウントの侵害は、NPM の全モジュールの最大 XNUMX% に影響を与える可能性があります。
出所: オープンネット.ru