Платформа с открытым исходным кодом Qinglong, предназначенная для автоматизации фоновых задач, подверглась активным атакам. Киберпреступники эксплуатируют две критических уязвимости, которые позволяют обойти аутентификацию и получить полный контроль над панелью управления. В результате они разворачивают на серверах программы для скрытого майнинга криптовалют, загружая процессор почти на сто процентов.
Детали уязвимостей
Qinglong - это самоуправляемая система для управления задачами. Разработчики используют её для автоматизации скриптов на Python, JavaScript, Shell и TypeScript. Платформа чрезвычайно популярна среди китайских программистов: на GitHub у неё более 19 тысяч звезд. Обычно её запускают в облачных средах или на домашних серверах через контейнеры Docker. Однако именно такая распространенность делает уязвимости особенно опасными.
Обе проблемы затрагивают версии Qinglong до 2.20.1 включительно. Их причина - несоответствие между маршрутизацией Express.js и внутренними механизмами безопасности приложения. При этом первая уязвимость, зарегистрированная как CVE-2026-3965, связана с перезаписью URL. Отправив специальный запрос на открытый эндпоинт без какой-либо аутентификации, злоумышленник может принудительно сбросить пароль администратора. Таким образом он получает полный доступ к панели управления.
Вторая уязвимость, CVE-2026-4047, еще опаснее. Она позволяет удаленно выполнять код без необходимости сбрасывать учетные данные. Механизм атаки основан на различии в обработке регистра символов. Слой безопасности Qinglong проверяет только пути в нижнем регистре, тогда как сервер Express.js обрабатывает запросы без учета регистра. Поэтому запрос на путь /aPi/ вместо /api/ полностью обходит проверки. Затем злоумышленник может запустить вредоносные системные команды.
Эксплуатация уязвимостей началась в начале февраля 2026 года. Системные администраторы заметили необычную активность, когда нагрузка на процессоры их серверов внезапно подскочила почти до ста процентов. После проникновения хакеры изменяли конфигурационный файл Qinglong, чтобы загрузить вредоносный бинарный файл с внешнего домена. Этот файл сохранялся под именем .fullgc и был скрытым. Злоумышленники намеренно выбрали такое название, чтобы имитировать "полную сборку мусора" - обычный фоновый процесс в среде Java. Таким образом они пытались избежать обнаружения со стороны занятых администраторов.
Вредоносное ПО нацелено на различные архитектуры, включая Linux и macOS. Оно содержит собственный скрипт для закрепления в системе. Если администратор попытается остановить процесс майнера, скрипт автоматически перезапускает его. Это делает удаление угрозы особенно сложным.
Первоначально сообщество пыталось блокировать конкретные вредоносные вводы скриптов. Однако такой подход не решал коренную проблему - уязвимости контроля доступа. Разработчики проекта выпустили официальные обновления, исправляющие логику промежуточного ПО (middleware). Теперь пользователям необходимо немедленно обновить контейнеры Docker с Qinglong до последней версии.
Кроме того, администраторам стоит активно искать угрозы: проверить наличие скрытого файла .fullgc и просмотреть конфигурации на предмет подозрительных внешних доменов. Важно понимать, что выставлять самоуправляемые планировщики задач напрямую в интернет крайне опасно. Командам следует всегда защищать административные веб-панели с помощью виртуальной частной сети (VPN) или защищенного туннеля.
В целом атаки на Qinglong демонстрируют, как даже популярные проекты с открытым исходным кодом могут содержать серьезные ошибки безопасности. Особенно уязвимы решения, которые разработчики разворачивают самостоятельно и не уделяют должного внимания сегментации сети. Использование типовых уязвимостей обхода аутентификации становится все более распространенным приемом злоумышленников. Они комбинируют такие лазейки с программами-майнерами, чтобы извлекать финансовую выгоду из чужих ресурсов.
Специалистам по информационной безопасности стоит немедленно проверить свои инвентаризации активов на наличие Qinglong. Если система используется, необходимо не только установить патч, но и пересмотреть политику доступа к панели. Лучший способ защиты - никогда не открывать такие интерфейсы в глобальную сеть без дополнительной аутентификации на уровне VPN. В противном случае последствия могут быть серьезными: от перегрузки инфраструктуры до утечки данных, если злоумышленники получат доступ к внутренним скриптам.
Рекомендации для пользователей остаются простыми, но критически важными. Обновление до актуальной версии закрывает обе уязвимости. Проверка на наличие скрытых файлов и аномальных процессов поможет обнаружить уже проведенные атаки. А использование сетевых экранов и VPN сократит поверхность атаки. Не стоит полагаться на то, что атакующие не найдут ваш сервер: они активно сканируют интернет на предмет уязвимых экземпляров Qinglong.
В итоге инцидент служит напоминанием: любые самоуправляемые сервисы, особенно с веб-интерфейсом, требуют тщательной настройки безопасности. Разработка с открытым кодом не гарантирует отсутствия ошибок. Ответственность за защиту лежит на каждом администраторе, который разворачивает такое ПО.
Ссылки
- https://nvd.nist.gov/vuln/detail/CVE-2026-3965
- https://nvd.nist.gov/vuln/detail/CVE-2026-40471
- https://snyk.io/blog/qinglong-task-scheduler-rce-vulnerabilities/