Разработчики PHP опубликовали отчёт о компрометации репозитория

Появился первый отчёт о компрометации Git-репозитория PHP. Ранее туда добавили вредоносный коммит с бэкдором. Сначала аналитики пришли к выводу, что сам сервер, на котором разместили репозиторий, не взломали. Проблема была в базе данных с учётными записями разработчиков.

Возможно хакеры загрузили базу пользователей из СУБД на сервере master.php.net. Содержимое сервера уже перенесли на другой, пароли сбросили и попросили поменять их через эту форму. Репозитории git.php.net и svn.php.net работают только в режиме чтения.

Когда вредоносный коммит обнаружили, разработчик Никита Попов отменил изменения и блокировал право коммита для записи Расмуса Лердорфа. Позже он понял, что это не имело смысла: без цифровой подписи любой с доступом к php-src мог написать любое имя и внести изменения.

Потом злоумышленники отправили новый коммит от имени Никиты. Через сервис gitolite пострадавшие пытались вычислить внёсшего изменения участника, но логи оказались пустыми. Так они пришли к выводу, что скомпрометирована была инфраструктура, а не сервер.

git.php.net отключили, а начальный репозиторий перевели на GitHub. Из-за спешки упустили тот момент, что кроме SSH с gitolite можно было подключиться и через HTTPS. И действительно, вредоносные комиты добавили через HTTPS.

Разработчики изучили логи и поняли, что хакеры знали пароли Лердорфа и Попова, но не знали логины. Если у них был доступ к СУБД, то трудно объяснить почему они не использовали логин оттуда. В итоге все склоняются к тому, что взломан был master.php.net: там была старая кодовая база и ОС давно не обновляли.

В PHP приняли меры и сейчас всё в норме. Анализ инцидента продолжается.

Залишити відповідь

Дякуємо, що поділились