Бесплатно Экспресс-аудит сайта:

14.06.2022

Пакеты PyPI содержат бэкдор

Пакеты PyPI «keep», «pyanxdns», «api-res-py» содержат бэкдор из-за наличия вредоносной зависимости «request».

Большинство версий пакета «keep» используют запросы (requests) Python модуля для выполнения HTTP-запросов, пакет «keep» v.1.2 содержит «request» (без s ), который является вредоносным ПО. Вредоносная зависимость «request» также была обнаружена в некоторых версиях PyPI-пакетов «pyanxdns» и «api-res-py».

В мае пользователь GitHub duxinglin1 заметил, что уязвимые версии содержат зависимость «request» с ошибкой, а не законную библиотеку запросов (requests).

Были выявлены следующие уязвимости:

  • CVE-2022-30877 — пакет «keep» версии 1.2 содержит «запрос» бэкдора;
  • CVE-2022-30882 — затронут пакет «pyanxdns» версии 0.2;
  • CVE-2022-31313 — затронут пакет «api-res-py» версии 0.1.


Разработчик пакета «pyanxdns» Марк Эгебек подтвердил, что ситуация произошла из-за опечатки, а не из-за компрометации учетной записи. Видимо, авторы пакетов «keep» и «api-res-py» также случайно ввели «request» вместо правильного «requests» из-за опечатки. Разработчик повторно загрузил новую версию в PyPI и удалил версию, которая ссылается на вредоносную зависимость «request».