Перейти до основного вмісту
Усі випуски

Сканування пакетного ендпоінта REST API WordPress у нашій інфраструктурі зросло більш ніж утричі

У тиждень з 26 жовтня кількість джерел, які зверталися до нашої інфраструктури по пакетний ендпоінт REST API WordPress, точку входу ланцюжка вразливостей wp2shell, зросла в 3.3 раза порівняно з попереднім середнім тижневим показником. Сканери також частіше шукали резервні копії, сторінки налагодження та внутрішні компоненти застосунків.

У щотижневому звіті 291 Intercept ми розповідаємо, що саме автоматизовані сканери шукали в нашій власній інфраструктурі, щоб ви могли перевірити свої системи на те саме. Кожен випуск охоплює тиждень, який завершився щонайменше сім днів тому.

Найпомітнішою зміною в нашій інфраструктурі за тиждень з 26 жовтня став різкий ріст запитів до однієї адреси WordPress: /wp-json/batch/v1. До неї звернулися близько 40 джерел, у 3.3 раза більше за середній тижневий показник за попередні три тижні. Саме з цього ендпоінта починається wp2shell, ланцюжок із двох вразливостей у ядрі WordPress, який дає змогу зловмиснику без автентифікації виконати код на сайті.

Загалом тиждень видався активнішим: нашу інфраструктуру, доступну з інтернету, зондували приблизно 620 джерел, на 10% більше, ніж у середньому за попередні три тижні. WordPress залишався головною ціллю: 66% джерел атакували сторінки входу WordPress, XML-RPC або шляхи плагінів, а їхня кількість зросла на 20%. Сканери також частіше шукали ті частини застосунків, які мають залишатися закритими.

Що таке wp2shell

Шлях /wp-json/ є кореневим для REST API WordPress, а /wp-json/batch/v1 відповідає за пакетну обробку, тобто виконує набір запитів до API разом. За даними Rapid7, wp2shell поєднує дві вразливості. CVE-2026-63030 є логічною помилкою в цьому пакетному обробнику, а CVE-2026-60137 є SQL-ін'єкцією в ендпоінті записів. У зв'язці вони дають змогу будь-кому без облікового запису виконати код у WordPress версій від 6.9.0 до 6.9.4 та від 7.0.0 до 7.0.1.

Вразливість оприлюднили 17 липня 2026 року, а 21 липня, як повідомляє Rapid7, CISA додало її до свого каталогу Known Exploited Vulnerabilities. Виправлення містять випуски 6.9.5, 7.0.2 та 7.1 Beta 2.

Навіщо шукати вразливість, для якої вже є виправлення? Сканерам не потрібно, щоб уразливими були всі сайти, достатньо деяких. Запит їм майже нічого не коштує, а будь-який сайт, що досі працює на вразливій версії, вартий повторного візиту.

Звична сторона сканування WordPress

Скоординована група приблизно з 20 джерел у кількох країнах, що використовувала спільний інструментарій, перебирала один і той самий список із близько десяти шляхів. Вона запитувала той самий файл у багатьох каталогах, наприклад /wp/wp-includes/wlwmanifest.xml, /shop/wp-includes/wlwmanifest.xml та /wordpress/wp-includes/wlwmanifest.xml, а також /xmlrpc.php.

Файл wlwmanifest.xml є маніфестом Windows Live Writer, який присутній у стандартних інсталяціях WordPress, а запит до нього в типових каталогах є способом знаходити сайти на WordPress перед спробами експлуатувати вразливості плагінів чи тем. XML-RPC стає наступним кроком: ще у 2015 році дослідники з'ясували, що його метод system.multicall дає змогу зловмиснику перебрати сотні паролів одним запитом.

Забуті файли та внутрішні компоненти

Порівняно з попередніми трьома тижнями кількість джерел, які шукали резервні копії та дампи, зросла на 73%, тих, хто цікавився внутрішніми компонентами застосунків на кшталт Spring Boot actuator, на 63%, а тих, хто запитував діагностичні сторінки на зразок /phpinfo.php і /info.php, на 52%. Оскільки загальна кількість джерел теж зросла, їхні частки змінилися менше: частка діагностичних сторінок зросла з середніх 15% усіх джерел до 21%. На діаграмі нижче показано шість категорій цього тижня: для кожної наведено частку джерел цього тижня порівняно з її середнім значенням за попередні три тижні.

Цей тиждень порівняно із середнім за попередні тижні
Цей тижденьСереднє за попередні тижні (3)
Резервні копії та дампи баз даних
12%
9%
Службові ендпоінти керування застосунком
13%
9%
Сторінки налагодження та діагностики
21%
15%
Сторінки входу та файли WordPress
66%
61%
Публічно доступний вихідний код (Git, SVN)
29%
24%
Файли із секретами та конфігурацією
33%
33%

Частка від усіх окремих джерел, що атакували кожну ціль, у відсотках. Одне джерело може атакувати кілька цілей, тож сума часток перевищує 100%.

Цей тиждень порівняно із середнім за попередні тижні
Цей тижденьСереднє за попередні тижні (3)
Резервні копії та дампи баз даних12%9%
Службові ендпоінти керування застосунком13%9%
Сторінки налагодження та діагностики21%15%
Сторінки входу та файли WordPress66%61%
Публічно доступний вихідний код (Git, SVN)29%24%
Файли із секретами та конфігурацією33%33%

Ендпоінт /actuator/env привернув близько 40 джерел, у 2.4 раза більше за попереднє середнє. У Spring Boot він показує конфігураційні властивості застосунку. Документація Spring зазначає, що за замовчуванням через HTTP доступний лише health, а значення env за замовчуванням маскуються, але якщо розробники відкривають цей ендпоінт без обмеження доступу, він може розкрити облікові дані, ключі API та внутрішні налаштування. Кількість джерел, що шукали /wp-config.php.bak, забуту резервну копію конфігурації WordPress, подвоїлася до приблизно 40.

Друга група приблизно з 20 джерел зі своїм інструментарієм поєднала ці інтереси в одному проході: /.env, /.git/config, /info.php, /config.json, /server-status та /debug/default/view. Останній шлях належить налагоджувачу Yii 2, який показує дані сесій, змінні середовища та запити до бази даних. Посібник Yii зазначає, що зазвичай він доступний лише з localhost, проте CVE-2026-103475, оприлюднена 30 вересня, стосується yii2-starter-kit до версії 4.2.0 включно, де стандартна конфігурація відкриває налагоджувач для всіх IP-адрес.

Повертаючись до минулого тижня

У попередньому випуску ми відзначали, що сканери частіше шукають файли .env у підкаталогах. Ця тенденція продовжилася. До /v2/.env та /old/.env звернулися приблизно по 60 джерел, що приблизно вдвічі більше за попереднє середнє, до /production/.env звернулися 50 джерел, а до /storage/.env 40. Загалом 200 джерел шукали файли із секретами та конфігурацією, на 16% більше, що приблизно відповідає загальному зростанню кількості джерел, тож їхня частка трималася на рівні 33%. Для розуміння масштабу: у лютому дослідники повідомили про 12,088,677 IP-адрес, з яких віддавалися публічно доступні файли на зразок .env.

Зондування Git, з якого ми починали минулий звіт, за часткою послабшало, але залишилося вищим за попередній рівень. Загалом 170 джерел шукали репозиторії з вихідним кодом, на 20% більше за середнє за три тижні, хоча їхня частка серед усіх джерел знизилася з 37% до 29%.

Хто надсилав запити

Понад половина джерел (55%) походила з мереж хмарних і хостинг-провайдерів, причому на DigitalOcean і Google Cloud припадало по 20%, а 85% усіх джерел з'являлися лише протягом одного дня. Більшість також намагалася видавати себе за людей: 82% надсилали рядки User-Agent звичайних браузерів, проте 85% поводилися як автоматизовані інструменти, тож маскування доволі поверхове.

Що затихло

Запити до /wp-content/plugins/hellopress/wp_filemanager.php, які в середньому надходили приблизно від 20 джерел на тиждень, майже зникли, скоротившись на 79%. Поки зарано казати, чи сканери переключилися на інші цілі. Інтерес до файлів хмарних ключів, як-от /service-account.json, залишився приблизно на тому ж рівні: близько 70 джерел.

Що робити

  • Перевірте версію WordPress. Якщо у вас версія від 6.9.0 до 6.9.4 або від 7.0.0 до 7.0.1, негайно оновіться до 6.9.5 або 7.0.2.
  • Повністю приберіть файли .env з публічного каталогу, зокрема зі старих релізів і підкаталогів із версіями. Безпечне місце для них розташоване на рівень вище кореневого каталогу сайту.
  • Видаліть резервні копії та дампи, як-от /database.sql чи /wp-config.php.bak, з усіх місць, доступних через браузер.
  • Закрийте доступ до внутрішніх компонентів. Обмежте доступ до ендпоінтів Spring Boot actuator і не вимикайте маскування env, видаліть тестові сторінки phpinfo, а налагоджувач Yii залиште доступним лише з localhost.
  • Вимкніть XML-RPC, якщо він не потрібен жодному компоненту вашого сайту.

Про ці спостереження

Цей звіт створює 291 Heat Seeker One, система моніторингу безпеки 291 Group, що працює на 291 Crossband, нашій пропрієтарній платформі для операцій безпеки. Він охоплює лише трафік до власної інфраструктури 291 Group, доступної з інтернету.

Дані округлено; частки та зміни розраховано за кількістю окремих джерел, а не запитів; до звіту включено лише закономірності, які спостерігалися щонайменше від 20 окремих джерел. Країна означає місце розташування серверів джерел, а не обов'язково місце перебування тих, хто ними керує. Тип мережі визначається її оператором; ми називаємо лише великих, добре відомих провайдерів.