Пентестер взломал популярные пакеты Packagist в надежде получить работу

Исследователь под псевдонимом “neskafe3v1” , что он взломал 14 популярных пакетов Packagist. В качестве доказательств специалист показал страницы Packagist для этих пакетов, на которых он изменил репозитории GitHub для каждого пакета на свой. На данный момент команда Packagist отменила все изменения и в исходный вид.

Взломанная страница Packagist для пакета “acmephp”

Для публикации пакетов на Packagist разработчику необязательно загружать двоичный файл непосредственно на Packagist.org. Достаточно просто создать учетную запись Packagist.org и указать ссылку на свой репозиторий GitHub для определенного пакета. Затем сканер Packagist посещает предоставленный репозиторий и собирает все данные для отображения на странице Packagist для этого пакета.

При загрузке пакетов с помощью Composer, инструмент по умолчанию выполняет поиск определенного пакета в Packagist извлекает URL-адрес GitHub, указанный на странице Packagist для этого пакета. Затем содержимое пакета загружается из репозитория GitHub.

Изменив страницу Packagist для каждого пакета, исследователь захватил рабочий процесс установки, используемый в средах Composer. Теперь разработчики будут получать содержимое пакета из репозитория “neskafe3v1” на GitHub, а не из репозитория проекта.

Чтобы заявить о том, что специалист ищет работу, он изменил файл “composer.json” в этих пакетах следующим образом:

Исследователь изменил файл “composer.json”, чтобы продемонстрировать взлом

Исследователь не раскрыл точный метод взлома, но заявил, что он не использовал 0day-уязвимость – взлом происходил с помощью “известной техники”. В результате специалист получил доступ к учетным записям Packagist сопровождающих и изменил URL-адреса GitHub пакетов на URL-адреса своих разветвленных репозиториев.

Затронутые пакеты

Команда Packagist заявила , что до сих пор не наблюдалось злонамеренного воздействия на платформу в результате взлома. Платформа подтвердила, что захват действительно произошел в результате компрометации учетных данных сопровождающих.

В Packagist сказали, что взлом не использовался в каких-либо злонамеренных целях и был ограничен несколькими старыми учетными записями с ненадёжными паролями и отсутствующей двухфакторной аутентификацией. Вероятно, учетные записи использовали общие пароли, просочившиеся в ходе инцидентов на других платформах.

Public Release.