Никогда не было и вот опять. https://www.opennet.ru/opennews/art.shtml?num=58416
Для совершения вредоносных действий атакующие воспользовались методом подмены зависимостей и загрузили в репозиторий PyPI пакет torchtriton, имеющий то же имя, что и пакет, размещённый в собственном репозитории PyTorch-nightly. Метод основан на том, что при использовании дополнительных репозиториев пакетный менеджер pip пытается загрузить внутренние зависимости и из публичных репозиториев, учитывая номер версии. Таким образом, при установке ночных сборок PyTorch пакетный менеджер pip обнаруживал более новый пакет torchtriton в репозитории PyPI и устанавливал его, вместо одноимённого пакета из репозитория PyTorch-nightly.
В опубликованную атакующими версию torchtriton был добавлен код для запуска исполняемого файла («PYTHON_SITE_PACKAGES/triton/runtime/triton»), который осуществлял поиск и отправку конфиденциальных данных с систем, работающих под управлением Linux. Среди прочего злоумышленникам отправлялась информация о системе (/etc/resolv.conf, /etc/hosts, /etc/passwd, переменные окружения, данные об учётной записи), а также содержимое $HOME/.gitconfig, $HOME/.ssh/* и первых 1000 файлов в домашнем каталоге, размером менее 100 КБ. Данные передавались через туннель, организованный поверх DNS (отправлялись шифрованные DNS-запросы к DNS-серверу атакующих).
Если кто не понял, на пальцах объяснение: в репозитории программы PyTorch был пакет torchtriton, необходимый для ее работы. С ним все нормально. Злоумышленники же загрузили в другой репозиторий - в PyPI, вредоносный вариант этого torchtriton. А менеджер установки софта радостно обнаружил более новую версию и загрузил ее сразу.
Это уже не первый случай компрометации через подмену зависимостей в программе, которые автоматические подкачиваются, в том числе и как новые обновления. Это уже стиль сложился, особенно в разных новых модных молодежных языках и фреймворках. Целая экосистема в том, что постоянно подкачиваются новые обновления библиотек, а оффлайн разработка оказывается затруднена.