Разработчики свободной системы управления контентом Plone сообщили о серьёзном инциденте безопасности: злоумышленники внедрили вредоносный код в несколько репозиториев проекта на GitHub.
Первые следы вмешательства были замечены 7 января - злоумышленники изменили JavaScript-файлы в репозитории, добавив туда скрытый вредоносный код. Как выяснилось, атака стала возможной после компрометации учётной записи одного из разработчиков: его токен доступа был украден через вредоносное ПО на рабочей машине.
Анализ инцидента показал, что заражён был не один, а несколько ключевых репозиториев Plone, включая plone/volto, plone/mockup и plone/plone.app.mosaic. В одном из них злоумышленники даже форс-сбросили (force push) ветку master, что позволило им подменить историю коммитов и замаскировать свои изменения под легитимные.
Внедрённый в скрипт код был скрыт в одну строку с нормальными операциями и размещён таким образом, что при стандартном просмотре GitHub его сложно было заметить без нажатия кнопки «Load Diff». Вредонос пытался запустить эксплойты для повышения привилегий, обеспечить автозапуск через стартовые скрипты и осуществлять сбор конфиденциальных данных, в том числе токенов доступа, профилей браузеров и ключей криптокошельков.
После обнаружения инцидента компрометированный аккаунт был заблокирован 14 января, а разработчики усилили правила безопасности в репозиториях, запретив операции «force push» в основные ветки и теги для предотвращения повторения подобных атак.
Инцидент подчёркивает растущую угрозу безопасности в open-source-экосистеме: даже проекты с активной поддержкой и сообществом могут пострадать из-за компрометации учётных данных участников и недостаточного контроля изменений.