Опубликован эксплойт для уже закрытой pre-auth RCE в vBulletin

· Безопасность
Исследователи раскрыли CVE-2026-61511 — уязвимость в шаблонизаторе vBulletin, позволяющую выполнить код без авторизации. Патч вышел почти за месяц до публикации эксплойта, но многие форумы всё ещё не обновились.

cover.svg

27 июля SSD Secure Disclosure опубликовала технический разбор и рабочий proof-of-concept для уязвимости CVE-2026-61511 — неаутентифицированного удалённого выполнения кода в форумном движке vBulletin. Атака не требует ни учётной записи, ни административного доступа, ни участия другого пользователя: достаточно одного HTTP-запроса, который в итоге достигает функции PHP eval() и выполняет команду на непропатченном сервере.

Как устроена уязвимость

Уязвимый код находится в /includes/vb5/template/runtime.php, в методе vB5_Template_Runtime::runMaths(), обрабатывающем встроенные математические выражения в шаблонах. Функция вырезает все символы вне разрешённого набора, а остаток передаёт прямо в eval(). Фильтр блокирует буквы, но пропускает цифры, скобки, конкатенацию, арифметические и битовые операторы, включая XOR. Этого достаточно, чтобы без единой буквы собрать строки и имена вызываемых функций — приём, который в отчёте называют «phpfuck».

Добраться до уязвимого кода можно через публичный маршрут ajax/render/pagenav: штатный шаблон подставляет присланное посетителем значение pagenav[pagenumber] в тег {vb:math}, откуда оно и попадает в runMaths(). В PoC этот механизм используется для восстановления функции system и выполнения команды ОС с возвратом вывода в HTTP-ответе.

«Zero-day», который уже закрыт

Баннер эксплойта именует находку zero-day, однако это преувеличение. Патчи для веток 6.2.1, 6.2.0 и 6.1.6 вышли в конце июня, а исправленная версия 6.2.2 — 1 июля, почти за четыре недели до публикации. Затронуты, по данным SSD, версии 6.2.1 и ниже, а также 6.1.6 и ниже; нижнюю границу авторы не указывают. Облачные сайты vBulletin, по заявлению вендора, уже защищены.

Авторство SSD приписывает неназванному исследователю, но опубликованный код подписан «EgiX» — это псевдоним Эгидио Романо, ранее раскрывшего цепочку выполнения кода через шаблонизатор vBulletin в 2025 году. Любопытная деталь: в скрипте есть опечатка — буква вместо цифры, из-за которой он не запускается без правки. Ошибка тривиальна и на саму уязвимость не влияет. The Hacker News воспроизвела логику фильтрации локально: с исправленной опечаткой безобидная тестовая нагрузка strlen() отработала, без неё PHP оставался синтаксически невалидным.

Признаков эксплуатации в реальных атаках на 27 июля не зафиксировано, в каталоге CISA KEV уязвимость не значится, официального балла CVSS нет — NVD ранее в этом году перестала штатно обогащать новые CVE оценками.

Знакомый сценарий

Это уже не первая pre-auth RCE в том же углу vBulletin: майская цепочка 2025 года (CVE-2025-48827 и CVE-2025-48828) эксплуатировала шаблонизатор иным путём и подверглась атакам через считанные дни после раскрытия. Схема повторяется из раза в раз: сначала тихий патч, через несколько недель — рабочий эксплойт, а к этому моменту множество доступных из интернета форумов по-прежнему работают на уязвимых сборках. Основной риск сейчас сосредоточен именно в самостоятельно размещённых, не обновлённых установках — администраторам следует накатить патч своей ветки или перейти на 6.2.2.


Источник: The Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.