Процессор загружен на 100%? Проверьте, нет ли в системе процесса .fullgc — теперь так майнеры захватывают системы
NewsMakerКак заставить тысячи людей майнить вам крипту, просто изучив документацию Express.js.
Популярный инструмент для автоматизации задач внезапно начал «жечь» процессоры по всему миру. Владельцы серверов жаловались на загрузку ЦП под 100%, а причина оказалась банальной и неприятной: злоумышленники массово устанавливали скрытый майнер через уязвимости удалённого выполнения команд.
В центре инцидента оказался проект Qinglong – панель для планирования задач, которую часто разворачивают на своих серверах. Платформа поддерживает сценарии на Python, JavaScript и других языках и особенно популярна среди китайских разработчиков. Многие запускают её на облачных виртуальных машинах или домашних серверах и открывают доступ через интернет.
Первые тревожные сигналы появились 7–8 февраля 2026 года. Пользователи начали замечать странный процесс с именем «.fullgc», который загружал процессор на 85–100%. Позже стало ясно, что через панель управления злоумышленники разворачивают майнер криптовалюты. При этом англоязычное сообщество почти не обратило внимания на происходящее – обсуждение шло в основном на китайских форумах и в GitHub.
Корень проблемы вскрылся только в конце февраля. В версии 2.20.1 и более ранних нашли сразу две уязвимости обхода аутентификации , получившие идентификаторы CVE-2026-3965 и CVE-2026-4047 . Обе позволяли выполнять команды на сервере без входа в систему.
Первая ошибка возникла из-за некорректной обработки адресов в серверной части на Express.js. Приложение переписывает запросы, и злоумышленник мог воспользоваться этим, чтобы сбросить учётные данные администратора одной командой. После такого сброса панель полностью переходила под контроль атакующего.
Вторая уязвимость оказалась ещё проще. Проверка доступа учитывала регистр символов в адресе, а сам сервер – нет. Достаточно было изменить написание части URL, чтобы обойти защиту и сразу отправить команду на выполнение. Пароль при этом вообще не требовался.
Через уязвимость злоумышленник менял конфигурационный файл, добавляя вредоносный сценарий. Тот скачивал бинарный файл с удалённого сервера, сохранял его под скрытым именем «.fullgc», запускал в фоне и добавлял механизм автозапуска. Название выбрали не случайно – в среде Java термин «Full GC» часто ассоциируется с нагрузкой на процессор, поэтому администратор мог списать проблему на обычные процессы.
Сообщения о заражениях приходили от пользователей с разными конфигурациями, включая серверы за обратными прокси и с включённым шифрованием. Облачные провайдеры, например Alibaba Cloud, начали помечать такие системы как участвующие в майнинге. В одном случае злоумышленники через ту же панель получили доступ к системе мониторинга и увидели сразу сотни машин.
Попытки закрыть дыру сначала пошли по неверному пути. В проекте предложили блокировать подозрительные команды вроде curl и wget в заданиях. Такой подход не решает проблему, потому что уязвимость находится глубже – в механизме проверки доступа. В итоге разработчик сосредоточился на исправлении именно этой логики, что и стало правильным решением. Владельцам систем стоит проверить свои серверы на следы «.fullgc», обновить версии и пересоздать контейнеры из чистых образов. Одного удаления контейнера недостаточно – вредоносный код сохраняется в подключённых томах.
Ситуация напоминает, что любой сервис с доступом из интернета становится целью. Даже нишевые инструменты вроде планировщиков задач привлекают злоумышленников, если позволяют выполнять команды. При этом майнинг криптовалюты – один из самых простых способов монетизации взлома: нагрузка заметна, но источник часто ищут слишком долго.
Популярный инструмент для автоматизации задач внезапно начал «жечь» процессоры по всему миру. Владельцы серверов жаловались на загрузку ЦП под 100%, а причина оказалась банальной и неприятной: злоумышленники массово устанавливали скрытый майнер через уязвимости удалённого выполнения команд.
В центре инцидента оказался проект Qinglong – панель для планирования задач, которую часто разворачивают на своих серверах. Платформа поддерживает сценарии на Python, JavaScript и других языках и особенно популярна среди китайских разработчиков. Многие запускают её на облачных виртуальных машинах или домашних серверах и открывают доступ через интернет.
Первые тревожные сигналы появились 7–8 февраля 2026 года. Пользователи начали замечать странный процесс с именем «.fullgc», который загружал процессор на 85–100%. Позже стало ясно, что через панель управления злоумышленники разворачивают майнер криптовалюты. При этом англоязычное сообщество почти не обратило внимания на происходящее – обсуждение шло в основном на китайских форумах и в GitHub.
Корень проблемы вскрылся только в конце февраля. В версии 2.20.1 и более ранних нашли сразу две уязвимости обхода аутентификации , получившие идентификаторы CVE-2026-3965 и CVE-2026-4047 . Обе позволяли выполнять команды на сервере без входа в систему.
Первая ошибка возникла из-за некорректной обработки адресов в серверной части на Express.js. Приложение переписывает запросы, и злоумышленник мог воспользоваться этим, чтобы сбросить учётные данные администратора одной командой. После такого сброса панель полностью переходила под контроль атакующего.
Вторая уязвимость оказалась ещё проще. Проверка доступа учитывала регистр символов в адресе, а сам сервер – нет. Достаточно было изменить написание части URL, чтобы обойти защиту и сразу отправить команду на выполнение. Пароль при этом вообще не требовался.
Через уязвимость злоумышленник менял конфигурационный файл, добавляя вредоносный сценарий. Тот скачивал бинарный файл с удалённого сервера, сохранял его под скрытым именем «.fullgc», запускал в фоне и добавлял механизм автозапуска. Название выбрали не случайно – в среде Java термин «Full GC» часто ассоциируется с нагрузкой на процессор, поэтому администратор мог списать проблему на обычные процессы.
Сообщения о заражениях приходили от пользователей с разными конфигурациями, включая серверы за обратными прокси и с включённым шифрованием. Облачные провайдеры, например Alibaba Cloud, начали помечать такие системы как участвующие в майнинге. В одном случае злоумышленники через ту же панель получили доступ к системе мониторинга и увидели сразу сотни машин.
Попытки закрыть дыру сначала пошли по неверному пути. В проекте предложили блокировать подозрительные команды вроде curl и wget в заданиях. Такой подход не решает проблему, потому что уязвимость находится глубже – в механизме проверки доступа. В итоге разработчик сосредоточился на исправлении именно этой логики, что и стало правильным решением. Владельцам систем стоит проверить свои серверы на следы «.fullgc», обновить версии и пересоздать контейнеры из чистых образов. Одного удаления контейнера недостаточно – вредоносный код сохраняется в подключённых томах.
Ситуация напоминает, что любой сервис с доступом из интернета становится целью. Даже нишевые инструменты вроде планировщиков задач привлекают злоумышленников, если позволяют выполнять команды. При этом майнинг криптовалюты – один из самых простых способов монетизации взлома: нагрузка заметна, но источник часто ищут слишком долго.