Повідомлення про безпеку ARVE
Якщо ви отримали від мене лист із посиланням на цю сторінку, то це тому, що ваш сайт,
вочевидь, використовує версію Advanced Responsive Video Embedder (плагін WordPress, який
зазвичай відображається як ARVE, тека advanced-responsive-video-embedder), опубліковану
з бекдором усередині. Ця сторінка пояснює, що сталося, як перевірити, яка у вас версія, і
що з цим робити.
Цей випадок відрізняється від звичайного повідомлення «будь ласка, оновіться» двома важливими моментами, тож перш ніж щось робити, прочитайте два наступні абзаци.
Консоль не запропонує вам виходу. Жоден випуск цього не виправляє, а WordPress.org закрив плагін 28 липня 2026 року, а отже служба оновлень більше на нього не відповідає: у консолі WordPress буде написано, що оновлень немає, тоді як код із бекдором далі завантажується на кожен запит до вашого сайту. Сайт виглядає цілком здоровим, але таким не є. Чиста версія, яку можна встановити вручну, існує (це 10.8.9, про неї нижче), але саме по собі ніщо не прийде, і натискання «оновити» до неї не дістанеться.
Допомагає такий крок: вимкнути або видалити плагін. Це зупиняє завантаження коду. Усе інше на цій сторінці випливає з нього.
Проблему відстежують як 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 є тим самим чистим кодом, виданим наново. 3 серпня 2026 року версію 10.8.6 без змін опублікували повторно під вищим номером 10.8.9. Вона нічого не виправляє: обидві побайтово однакові, окрім рядків із версією, і про це прямо сказано у списку змін самого плагіна. Але оскільки 10.8.9 стоїть вище за два погані випуски, її встановлення є звичайним оновленням, а не зниженням версії. Саме на неї й варто переходити.
Що робить бекдор
Викладено з тим рівнем подробиць, який корисний вам як власникові сайту, і не далі:
- Він встановлює безумовний обробник запитів, тобто код, який переглядає кожен запит до вашого сайту, зокрема від відвідувачів, які не виконали вхід.
- Коли запит несе певне значення, обробник виконує вхід цього відвідувача як адміністратора вашого сайту WordPress. Це значення виводиться із загальнодоступної інформації про сайт, тож воно не є секретом, унікальним для конкретного сайту, який зловмисникові довелося б спершу викрасти.
- Він також надсилає адресу вашого сайту та версію плагіна на сторонній сервер (вузол
fontswp[.]com, записаний тут із дужками, щоб ніхто не зайшов на нього випадково).
Я свідомо не публікую ані точного значення, ані коду, який його породжує. Уражені архіви досі доступні для завантаження, і готовий рецепт допоміг би не тим людям швидше, ніж допоміг би вам.
Чи стосується це мене?
Усе зводиться до одного питання: яка версія ARVE встановлена? Вірити мені на слово не треба, перевірити можна двома способами.
У панелі адміністрування WordPress (головне джерело):
- Увійдіть до консолі WordPress (зазвичай
вашдомен.ua/wp-admin). - Перейдіть до Плагіни, потім Встановлені плагіни.
- Знайдіть ARVE або Advanced Responsive Video Embedder, запис, тека якого
називається
advanced-responsive-video-embedder, і подивіться версію, показану під назвою.
З публічного маніфесту (без входу): відкрийте у браузері
вашдомен.ua/wp-content/plugins/advanced-responsive-video-embedder/readme.txt. Рядок
Stable tag: ближче до початку і є версією, про яку повідомляє ваша інсталяція; саме цей
публічний файл я й читав.
Далі застосуйте правило:
- 10.8.7 або 10.8.8: уражена. Виконайте кроки нижче.
- 10.8.6 або старша: чиста, якщо говорити про бекдор. Ніщо з написаного тут вас не стосується, але зверніть увагу на зауваження про закриття плагіна.
- 10.8.9: чиста. Це 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.9. Цей випуск чистий і доступний для завантаження:
https://downloads.wordpress.org/plugin/advanced-responsive-video-embedder.10.8.9.zip
sha256 faedfcb8502f5e92be1cae5d8fee063c8c599812afc79aac758dd1e9d090718f
Установіть його через Плагіни, потім Додати плагін, потім Завантажити плагін. Це саме завантаження файлу, а не натискання кнопки, оскільки плагіна більше немає в каталозі. Якщо ви маєте таку змогу, перед встановленням перевірте контрольну суму sha256 завантаженого файлу.
Варто чітко розуміти, чим є 10.8.9, бо номер вводить в оману: це не виправлення. Це версія 10.8.6 (останній випуск, що вийшов до того, як це сталося), повторно опублікована без змін під вищим номером. Якщо ви порівняєте два архіви, то не знайдете жодних відмінностей, окрім рядків із версією, і це очікувано. Причина віддати перевагу їй, а не 10.8.6, суто практична: вона встановлюється як звичайне оновлення, а деякі керовані хостинги відмовляються встановлювати старішу версію поверх новішої.
Якщо ви волієте встановити саму 10.8.6, вона так само чиста й досі доступна для завантаження:
https://downloads.wordpress.org/plugin/advanced-responsive-video-embedder.10.8.6.zip
sha256 39770f49365ef2c60a4d074ae13389bc7ccbf6c1a5f33c52b418e4b15943c83f
Хай там як, майте на увазі, що поки плагін лишається закритим, він не отримає жодних подальших оновлень, тож сприймайте його як спосіб зберегти працездатність сторінок на час пошуку заміни, а не як постійне рішення.
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
Я звертаюся з такими питаннями винятково для того, щоб допомогти операторам захистити свої сайти. Якщо ви волієте більше не отримувати від мене листів, просто скажіть, і я це врахую.
Джерела
Офіційні бюлетені та відстеження
Розробник / плагін