Уведомление о безопасности ARVE
Если вы получили от меня письмо со ссылкой на эту страницу, значит ваш сайт, по всей
видимости, использует версию Advanced Responsive Video Embedder (плагин WordPress,
который обычно отображается как ARVE, папка advanced-responsive-video-embedder),
опубликованную с бэкдором внутри. На этой странице описано, что произошло, как
проверить, какая у вас версия, и что с этим делать.
Этот случай отличается от обычного уведомления «пожалуйста, обновитесь» двумя важными моментами, поэтому, прежде чем что-либо предпринимать, прочитайте следующие два абзаца.
Обновление это не исправит. Исправленного выпуска не существует. WordPress.org закрыл плагин 28 июля 2026 года, а значит служба обновлений больше на него не отвечает: в консоли WordPress будет написано, что обновлений нет, тогда как код с бэкдором продолжает загружаться при каждом запросе к вашему сайту. Сайт выглядит совершенно здоровым, но таковым не является.
Помогает следующий шаг: отключить или удалить плагин. Это останавливает загрузку кода. Всё остальное на этой странице следует из этого.
Проблема отслеживается как CVE-2026-18072.
Это письмо настоящее?
Да. Это добросовестное уведомление в рамках ответственного раскрытия от независимого исследователя безопасности. Я не прошу у вас денег, паролей или доступа к сайту и не пытался в него проникнуть, что-либо ему отправить или что-либо эксплуатировать.
Я лишь посмотрел общедоступные файлы, которые ваш сайт отдаёт любому посетителю (так же, как публична ваша главная страница), и отметил номер версии, который публикует плагин ARVE. Всё, что мне известно о самом бэкдоре, получено из сравнения официальных архивов выпусков плагина на WordPress.org друг с другом, а не из вашего сайта (подробнее ниже, в разделе Что я делал и чего не делал).
Если вы хотите убедиться, кто я, контактные данные приведены внизу этой страницы и на странице Обо мне.
Что произошло
ARVE является давним плагином для встраивания видео: он много лет находится в официальном каталоге и разрабатывается открыто. Причиной случившегося была не ошибка в коде плагина: произошла компрометация канала выпусков. Кто-то получил возможность публиковать выпуски под именем плагина.
28 июля 2026 года вышло два таких выпуска:
- 10.8.7, опубликован примерно в 13:00 UTC.
- 10.8.8, опубликован примерно тремя часами позже. 10.8.8 не является исправлением. Он содержит тот же бэкдор, переписанный так, чтобы находиться внутри легитимных файлов плагина, а не в отдельном, бросающемся в глаза файле. В списке изменений версия 10.8.8 вообще не упоминается.
Именно из-за этого второго выпуска данное уведомление написано так, как написано. Естественная реакция на «10.8.7 плохая» состоит в переходе на следующую версию, а здесь следующая версия является той же самой проблемой в более приличной одежде.
- 10.8.6 является последним чистым выпуском и единственным чистым выпуском.
- Версии 10.8.9 не существует. Более нового выпуска, на который можно перейти, нет.
Что делает бэкдор
Изложено с той степенью подробности, которая полезна вам как владельцу сайта, и не более того:
- Он устанавливает безусловный обработчик запросов, то есть код, который просматривает каждый запрос к вашему сайту, включая запросы от посетителей, не выполнивших вход.
- Когда запрос несёт определённое значение, обработчик выполняет вход этого посетителя как администратора вашего сайта WordPress. Это значение выводится из общедоступной информации о сайте, поэтому оно не является секретом, уникальным для конкретного сайта, который злоумышленнику пришлось бы сначала похитить.
- Он также отправляет адрес вашего сайта и версию плагина на сторонний сервер (узел
fontswp[.]com, записанный здесь со скобками, чтобы никто не зашёл на него случайно).
Я намеренно не публикую ни точное значение, ни код, который его порождает. Затронутые архивы всё ещё доступны для скачивания, и готовый рецепт помог бы не тем людям быстрее, чем помог бы вам.
Затронут ли я?
Всё сводится к одному вопросу: какая версия ARVE установлена? Верить мне на слово не нужно, проверить можно двумя способами.
В панели управления WordPress (главный источник):
- Войдите в консоль WordPress (обычно
вашдомен.ru/wp-admin). - Перейдите в Плагины, затем Установленные плагины.
- Найдите ARVE или Advanced Responsive Video Embedder, запись, папка которой
называется
advanced-responsive-video-embedder, и посмотрите версию, указанную под названием.
Из публичного манифеста (без входа): откройте в браузере
вашдомен.ru/wp-content/plugins/advanced-responsive-video-embedder/readme.txt. Строка
Stable tag: ближе к началу и есть версия, о которой сообщает ваша установка; именно
этот публичный файл я и читал.
Затем примените правило:
- 10.8.7 или 10.8.8: затронута. Выполните шаги ниже.
- 10.8.6 или старше: чистая, если говорить о бэкдоре. Ничего из написанного здесь к вам не относится, но обратите внимание на замечание о закрытии плагина.
- Варианта «10.8.9 или новее» не существует. Таких версий нет.
Вы можете проверить ситуацию самостоятельно, не полагаясь на мои слова: страница плагина в официальном каталоге, Advanced Responsive Video Embedder, показывает, что он закрыт.
Что делать
1. Отключите или удалите плагин. В разделе Плагины, затем Установленные плагины, отключите ARVE. Если можете, лучше ещё и удалить его. Именно этот шаг останавливает выполнение кода, и занимает он несколько секунд. Сделайте это до всего остального.
В командной строке WP-CLI делает то же самое:
wp plugin deactivate advanced-responsive-video-embedder
wp plugin delete advanced-responsive-video-embedder
2. Не пытайтесь выйти из положения обновлением. Я сказал это в начале и повторю, потому что именно к этой ошибке подталкивает ситуация. Выпуска, исправляющего проблему, нет, плагин закрыт, поэтому обновление предлагаться не будет, а надпись «обновлений нет» в консоли не является доказательством того, что всё в порядке.
3. Если видеовставки вам действительно нужны, вернитесь на 10.8.6. Этот выпуск чистый и по-прежнему доступен для скачивания:
https://downloads.wordpress.org/plugin/advanced-responsive-video-embedder.10.8.6.zip
sha256 39770f49365ef2c60a4d074ae13389bc7ccbf6c1a5f33c52b418e4b15943c83f
Установите его через Плагины, затем Добавить плагин, затем Загрузить плагин. Это понижение версии, то есть противоположность обычному совету, поэтому стоит прямо сказать, что оно сделано намеренно: в этом единственном случае более старый выпуск является безопасным. Если у вас есть такая возможность, перед установкой проверьте контрольную сумму sha256 скачанного файла. Учтите, что пока плагин остаётся закрытым, 10.8.6 не получит никаких дальнейших обновлений, поэтому воспринимайте его как способ сохранить работоспособность страниц на время поиска замены, а не как постоянное решение.
4. Считайте сайт потенциально скомпрометированным. Поскольку этот код выдаёт права администратора любому, кто попросит нужным образом, и поскольку он работал на вашем сайте всё то время, пока была установлена затронутая версия, разумно исходить из того, что кто-то мог этим воспользоваться. Я не утверждаю, что в ваш сайт проникли: у меня нет такой информации, и я не смотрел. Это мера предосторожности и обычная реакция на бэкдор, который работал у всех на виду.
Если вы хотите провести полноценное расследование, сделайте полную резервную копию и сохраните журналы доступа веб-сервера до того, как что-либо менять, поскольку отключение плагина и смена учётных данных перезапишут часть того, что захотел бы увидеть специалист.
Затем:
- Перегенерируйте секретные ключи и «соли» в
wp-config.php. Новые значения находятся в одном клике в официальном генераторе секретных ключей. Их замена делает недействительными все существующие сеансы входа, включая те, которыми располагает злоумышленник. - Сбросьте пароли всех учётных записей администраторов.
- Просмотрите список учётных записей администраторов на предмет незнакомых. Обратите
особое внимание на имена пользователей, начинающиеся с
wpsvc_,developer_,dev_илиwp_update_: код 10.8.7 намеренно пропускал учётные записи с такими именами, когда выбирал, под какой из них войти, а это позволяет предположить, что их присутствие ожидалось. - Поищите всё остальное незнакомое: учётные записи с любой ролью, плагины, которые вы не устанавливали, и запланированные задачи (записи WP-Cron), которых вы не узнаёте.
Если ваш хостинг-провайдер предлагает проверку на вредоносный код или аудит безопасности, сейчас разумный момент этим воспользоваться.
Что я делал и чего не делал
Чтобы полностью прояснить, на чём основано моё письмо: я читал только публичные файлы,
которые ваш сайт и так отдаёт каждому посетителю, а именно публичный файл readme.txt
плагина ARVE и вашу главную страницу. Я не обращался ни к панели управления WordPress, ни
к базе данных, ни к какой-либо закрытой части сайта. Я не отправлял на ваш сайт ни
триггерное значение бэкдора, ни что-либо ещё.
Всё, что мне известно о содержимом выпусков с бэкдором, получено путём скачивания официальных архивов выпусков плагина с WordPress.org и их сравнения друг с другом. Я нигде не запускал этот код, не тестировал его и не эксплуатировал.
Это наблюдение по версии: ваш сайт сообщает версию, которая была опубликована с бэкдором внутри. Это не утверждение о том, что ваш сайт был взломан, и это не отчёт об инциденте на вашем сайте.
У меня нет вебмастера / я не справляюсь
Если сайтом занимаетесь не вы, перешлите, пожалуйста, эту страницу тому, кто им занимается (вашему разработчику, агентству или хостинг-провайдеру). Шаги выше он узнает сразу, а шаг 1 является срочным.
Если вы ведёте сайт сами и застряли, я с удовольствием подскажу направление бесплатно. Напишите по контактам ниже.
Контакты
Evan Harris, исследователь безопасности
- Эл. почта: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Я обращаюсь по таким вопросам исключительно ради того, чтобы помочь операторам защитить свои сайты. Если вы предпочитаете больше не получать от меня писем, просто сообщите, и я это учту.
Источники
Официальные бюллетени и отслеживание
Разработчик / плагин