Вымогательская группировка Clop перенесла свой сайт для публикации данных на новый Tor-адрес после того, как подтвердила, что прежний сервер был взломан и подвергся дефейсу через неисправленную уязвимость в системе управления контентом Grav CMS. BleepingComputer установила, что проблема представляет собой ранее не задокументированную уязвимость обхода путей, для эксплуатации которой требуется доступ к сайту без аутентификации.
Взлом произошёл ранее в сентябре, когда группа вымогателей ShinyHunters загрузила на сайт небольшой текстовый файл, а затем заменила его содержимое полноценной страницей дефейса с логотипом персонажа Umbreon из Pokémon и ссылкой на свой сайт утечек. Позже группа заявила, что украла исходный код, плагины Grav, журналы сервера и закрытые ключи, использовавшиеся для обслуживания Tor-сервиса Clop, и потребовала выкуп за непубликацию файлов.
Что произошло на сервере Clop?
Clop признала, что установка Grav на сервере не была полностью обновлена, но отрицала, что на серверах содержались важные операционные или финансовые данные. Группа заявила, что сервер содержал только материалы сайта, а также отрицала наличие отношений или продолжающихся переговоров с ShinyHunters. Согласно сообщению, ShinyHunters позже убрала имя Clop со своего сайта, не предоставив дополнительных объяснений.
На сервере работала Grav 1.7.43. Согласно сведениям, представленным ShinyHunters, был использован способ обработки загрузки файлов в Grav через передачу небезопасного значения в параметре __unique_form_id__. Это значение использовалось для создания временного пути в формате tmp/forms/<session_id>/<unique_id> без предварительной проверки того, что оно является безопасным компонентом пути к файлам.
С помощью вставки последовательностей обхода, таких как ../../../shhq, Grav можно было заставить создать путь за пределами каталога, предназначенного для загружаемых файлов, что позволяло записать загруженный файл в другое место внутри установки системы.
Подтверждение проблемы и выпуск исправления
Grav рассмотрела технические сведения, которыми поделилась BleepingComputer, и разработчики системы подтвердили точность описания проблемы, данного атакующим. Уязвимость получила идентификатор CVE-2026-42608 и представляет собой уязвимость обхода путей, которая сначала была исправлена в Grav 2.0, в тестовом выпуске 2.0.0-beta.2; рекомендация по безопасности была опубликована 27 апреля.
В исправлении добавлена функция sanitizeId(), принимающая только идентификаторы, соответствующие списку разрешённых значений [A-Za-z0-9,_-]{1,64}. Grav пояснила, что проблема находится в ядре системы, а не в плагине Form; поэтому версия плагина, включая упомянутую в этом случае версию 7.3.0, не определяет, уязвим ли сайт.
Что меняется на практике?
Текущие версии Grav 2.x были защищены уже несколько месяцев, однако исправление ещё не было перенесено в ветку 1.7, которую по-прежнему используют многие сайты. После передачи разработчикам сведений об эксплуатации Grav выпустила версию 1.7.53.4 для ветки 1.7 и призвала пользователей этой ветки обновиться до неё.
Этот случай показывает, что использование более старой ветки системы управления контентом может оставить известную уязвимость в основном компоненте, даже если связанный с функцией плагин обновлён. Перенос сайта утечек на новый адрес устраняет последствия взлома для работы Clop, но сам по себе не подтверждает, содержали ли файлы, которые, по заявлению ShinyHunters, были украдены, действительно конфиденциальные данные; Clop это отрицала, а источник не представил независимых доказательств, способных окончательно разрешить этот спор.