Соискатель взломал популярные PHP-пакеты Packagist, чтобы получить работу

Соискатель взломал популярные PHP-пакеты Packagist, чтобы получить работу

Соискатель взломал популярные PHP-пакеты Packagist, чтобы получить работу

Исследователь в области кибербезопасности взломал более десятка пакетов Packagist, часть которых насчитывает сотни миллионов установок. Забавной оказалась причина такого поступка: специалист просто хотел получить работу в сфере ИБ.

Интересный соискатель действует под псевдонимом neskafe3v1. Он сам вышел на связь с BleepingComputer, заявив, что ему удалось получить контроль над 14 Packagist-пакетами, у одного из которых счётчик установок превышает 500 миллионов.

Для тех, кто не в курсе: Packagist представляет собой основной реестр PHP-пакетов, которые можно установить с помощью инструмента Composer. Packagist выступает больше в качестве хранилища или каталога метаданных.

Список взломанных пакетов с соответствующим количеством установок выглядит так:

Имя пакета Число установок
acmephp/acmephp 124,860
acmephp/core 419,258
acmephp/ssl 531,692
doctrine/doctrine-cache-bundle 73,490,057
doctrine/doctrine-module 5,516,721
doctrine/doctrine-mongo-odm-module 516,441
doctrine/doctrine-orm-module 5,103,306
doctrine/instantiator 526,809,061
growthbook/growthbook 97,568
jdorn/file-system-cache 32,660
jdorn/sql-formatter 94,593,846
khanamiryan/qrcode-detector-decoder 20,421,500
object-calisthenics/phpcs-calisthenics-rules 2,196,380
tga/simhash-php (aka tgalopin/simhashphp) 30,555

 

Исследователь предоставил BleepingComputer доказательство своей работы: затронутые страницы Packagist были модифицированы, чтобы продемонстрировать наличие доступа neskafe3v1 к пакетам.

Тут стоит отметить, что метод публикации пакетов в Packagist отличается от репозиториев вроде npm или PyPI. Разработчику не надо загружать бинарники на Packagist.org, вместо этого он создаёт аккаунт в системе Packagist и отправляет ссылку на свой репозиторий на GitHub.

У Packagist есть специальный робот-краулер, который просканирует данные и отобразит их на странице каталога.

Интересно, что в сообщении neskafe3v1 содержатся русские слова, что, конечно же, позволяет зарубежным коллегам отнести его к «российским хакерам»:

«Pwned by neskafe3v1.... Ищу работу на позиции Application Security, Penetration Tester, Cyber Security Specialist».

30-летняя уязвимость в libpng поставила под удар миллионы приложений

Анонсирован выпуск libpng 1.6.55 с патчем для опасной уязвимости, которая была привнесена в код еще на стадии реализации проекта, то есть более 28 лет назад. Пользователям и разработчикам советуют как можно скорее произвести обновление.

Уязвимость-долгожитель в библиотеке для работы с растровой графикой в формате PNG классифицируется как переполнение буфера в куче, зарегистрирована под идентификатором CVE-2026-25646 и получила 8,3 балла по шкале CVSS.

Причиной появления проблемы является некорректная реализация API-функции png_set_dither(), имя которой было со временем изменено на png_set_quantize(). Этот механизм используется при чтении PNG-изображений для уменьшения количества цветов в соответствии с возможностями дисплея.

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

Эту ошибку можно использовать с целью вызова состояния отказа в обслуживании (DoS). Теоретически CVE-2026-25646 также позволяет получить закрытую информацию или выполнить вредоносный код, если злоумышленнику удастся внести изменения в структуру памяти до вызова png_set_quantize().

Уязвимости подвержены все версии libpng, с 0.90 beta (а возможно, и с 0.88) до 1.6.54. Ввиду широкого использования библиотеки пользователям настоятельно рекомендуется перейти на сборку 1.6.55 от 10 февраля 2026 года.

RSS: Новости на портале Anti-Malware.ru