Купили ли пакеты PIP? Безопасно ли устанавливать их?

В пакетах Debian или Ubuntu существует некоторый контроль качества. Является ли PIP похожим, или это полный бесплатный для всех? Может ли кто-нибудь загрузить любой код, который они хотят, под любым именем, которое они хотят?

Кажется, есть некоторые пакеты нежелательной почты, такие как https://pypi.python.org/pypi/opencv/0.0.1, который имеет то же имя, что и очень популярная система видения компьютера.

Ответ 1

Нет, нет никаких сторонних проверок кода, загружаемого в PyPI (Индекс пакета Python, где pip загружает пакеты, если явно не указано иное). Единственное ограничение заключается в том, что после того, как имя пакета существует, только сопровождающий (-ы) может загружать пакеты с этим именем (т.е. Вы не можете отправить вредоносное обновление кому-то другому, используя одно и то же имя). Разработчик должен убедиться, что все, что они делают на PyPI, не содержит вредоносных программ, если только они не намерены использовать его в качестве вредоносного ПО, и каждый отдельный разработчик должен знать, что они загружают с помощью pip.

Это было использовано в исследовательском проекте, исследующем "typosquatting" . Исследователь загрузил некоторые "имитационные вредоносные программы" (в основном безвредные) для PyPI под именами, которые были с ошибками в версиях популярных имен пакетов, чтобы собирать данные о том, как часто устанавливались эти пакеты с ошибками. Если хакер-хакер сделал то же самое, они могли бы использовать гораздо более злонамеренный код.

См. также этот вопрос о безопасности стека в той же теме.