В Packagist исправлена опасная уязвимость
Поле «Submit Package» для добавления новых пакетов PHP через домашнюю страницу Packagist позволяло запускать вредоносные команды.
Разработчики Packagist, крупнейшего репозитория пакетов в экосистеме PHP, исправили на своем официальном сайте опасную уязвимость, позволявшую взломать сервис. Проблема была обнаружена исследователем безопасности Максом Юстичем (Max Justicz). По словам исследователя, поле «Submit Package», предназначенное для добавления новых пакетов PHP через домашнюю страницу Packagist, позволяло атакующему запускать вредоносные команды в формате «$ (MALICIOUS_COMMANDS)».
Проблема заключалась в том, что сервис Packagist ожидал добавления в поле «Submit Package» URL-ссылки на репозиторий Git, Perforce, Subversion или Mercurial. Как обнаружил Юстич, при проверке, ведет ли ссылка на репозитории Perforce/Subversion, Packagist неправильно пропускал введенные символы и дважды выполнял вредоносные команды – при проверке Perforce и проверке Subversion. Достаточно умелый хакер мог воспользоваться этим, с легкостью взломать сервер Packagist и осуществить целый ряд вредоносных действий.
Packagist является не менеджером пакетов PHP, а только хостингом для них. Packagist – хостинг по умолчанию, используемый популярнейшим менеджером пакетов Composer, а также самый крупный хостинговый сервис в экосистеме PHP. Только в июле текущего года на его долю пришлось свыше 435 млн установок пакетов.