PyPI

Python Package Index (PyPI) は、プラットフォーム上でプロジェクトを管理するすべてのアカウントに 2 要素認証 (2FA) を年末までに有効にすることを義務付けると発表しました。

PyPI は、Python プログラミング言語で作成されたパッケージのソフトウェア リポジトリです。このインデックスには 200,000 のパッケージがホストされているため、開発者はさまざまなプロジェクト要件を満たす既存のパッケージを見つけて、時間と労力を節約できます。

PyPI チームは、すべてのアカウントに 2FA を必須とする決定は、プラットフォーム上のセキュリティを強化するという長期的な取り組みの一環であり、侵害された資格情報のブロックや API トークンのサポートなど、その方向で講じられた以前の対策を補完すると述べています。

2FA 保護の利点の 1 つは、サプライ チェーン攻撃のリスクが軽減されることです。この種の攻撃は、悪意のある攻撃者がソフトウェア管理者のアカウントを制御し、さまざまなソフトウェア プロジェクトで依存関係として使用されるパッケージにバックドアやマルウェアを追加するときに発生します。

パッケージの人気の程度によっては、このような攻撃は何百万ものユーザーに影響を与える可能性があります。開発者にはプロジェクトの構成要素を徹底的に検査する責任がありますが、PyPI の対策により、この種の問題を最小限に抑えることが容易になります。

さらに、Python プロジェクト リポジトリは、過去数か月間、横行するマルウェアのアップロード、有名なパッケージのなりすまし、ハイジャックされたアカウントを使用した悪意のあるコードの再送信の被害を受けています。

この問題は非常に大きくなり、PyPIは先週、効果的な防御ソリューションが開発され実装されるまで、新規ユーザーとプロジェクトの登録を一時的に停止しなければならなかった。

2FA 保護は、アカウント乗っ取り攻撃の問題を軽減するのに役立ちます。また、停止されたユーザーが悪意のあるパッケージを再アップロードするために作成できる新しいアカウントの数にも制限を設定する必要があります。

2FAへの道

すべてのプロジェクトおよび組織のメンテナー アカウントに 2FA を設定するという要件の期限は 2023 年末までです。

今後数か月間、影響を受けるユーザーは、ハードウェア キーまたは認証アプリを使用して追加のセキュリティ対策を準備し、有効にすることが推奨されます。

「準備としてできる最も重要なことは、セキュリティ デバイス(推奨) または認証アプリを使用してアカウントの 2FA をできるだけ早く有効にし、信頼できる発行元 (推奨) または API トークンの使用に切り替えることです。 PyPI にアップロードします。」 – PyPI

PyPI チームは、「 Trusted Publishing 」の導入など、これまでの数か月間行ってきた準備作業と、開発者が 2FA 要件に慣れるのに役立つGitHubなどのプラットフォームからの並行した取り組みを組み合わせることで、今年がこの措置を導入する絶好の機会になると述べています。