Перейти до змісту

Перевірте сайт на застаріле ПЗ і відомі CVE

Ми визначаємо сервер, мову, CMS і бібліотеки, які ваш сайт показує назовні, читаємо їхні версії, де їх видно, і звіряємо з датами завершення підтримки та публічними базами вразливостей. Збіг - привід перевірити, а не доказ вразливості.

Як працює перевірка застарілого ПЗ і CVE

Сайти часто розповідають про своє ПЗ більше, ніж думають власники. Заголовок відповіді може містити X-Powered-By: PHP/8.3.12, сторінка WordPress - тег generator з версією, а назва файлу на кшталт jquery-3.4.1.min.js видає версію бібліотеки. Перевірка збирає ці ознаки з відповідей, які й так отримує.

  • Визначаємо технології: вебсервер, мову програмування, CMS, плагіни, фронтенд-бібліотеки й хмарні платформи.
  • Читаємо версію лише там, де сайт її показує, і оцінюємо, наскільки ми в ній певні. Вгадану чи суперечливу версію ніколи не звіряємо з базами вразливостей.
  • Порівнюємо версію з даними про життєвий цикл: власним переліком у коді й кешованою копією endoflife.date для мов і CMS.
  • Для PHP та інших мов звіряємо точний патч із безпековими релізами цієї гілки.
  • Шукаємо публічні повідомлення про вразливості цього продукту й версії в OSV, NVD і каталозі CISA Known Exploited Vulnerabilities, а якщо є, додаємо оцінку FIRST EPSS.

Що повідомляємо і якими словами

Сигнал Приклад Як це сформульовано у звіті
Підтримку завершено PHP 8.0 і старші, Node.js нижче 18, дуже старі гілки nginx чи Apache Гілка не отримує виправлень безпеки: заплануйте оновлення
Підтримка закінчується Гілка, безпекова підтримка якої завершується або щойно завершилася Порада оновитися
Є оновлення безпеки в тій самій гілці PHP/8.3.x нижче за останній безпековий реліз 8.3 Доступне оновлення безпеки, з кількістю виправлень
Патч невідомий Видно лише PHP/8.3 Не знаємо, який патч стоїть: перевірте самі
Відома вразливість для цієї версії CVE для цього продукту й діапазону версій Потенційна: збіг з відомою CVE за версією
Стара фронтенд-бібліотека jQuery нижче 3.5 в адресі скрипта Можливо, застаріла; з CVE не звірялася
Версія в заголовках Server: Apache/2.4.41 Версію бачить кожен

Збіг, внесений до каталогу CISA відомих експлуатованих вразливостей, отримує вищий рівень серйозності. EPSS додає оцінену ймовірність того, що CVE використають в атаках протягом 30 днів. Жодне з цього не означає, що ваш сайт атакували.

Перевірка версії PHP: чому важливий номер патча

Кожна гілка PHP отримує виправлення безпеки обмежений час. За даними php.net, 8.2 отримує їх до 31 грудня 2026 року, 8.3 - до 31 грудня 2027, 8.4 - до 31 грудня 2028, 8.5 - до 31 грудня 2029. Старіші гілки не отримують нічого.

Самої підтримуваної гілки замало. 21 жовтня 2026 року php.net випустив 8.2.35, 8.3.36, 8.4.27 і 8.5.12, щоб закрити дві критичні вразливості з віддаленим виконанням коду, і закликав усіх оновитися негайно. Сайт на ранішому патчі тієї самої гілки цих виправлень не має.

Якщо сайт показує точну версію PHP, перевірка звіряє її з виправленнями безпеки цієї гілки і каже, чи вийшов новіший безпековий реліз. Якщо видно лише 8.3, ми пишемо, що патч невідомий, а не вгадуємо. Як подивитися версію самостійно, пояснюємо в статті Як перевірити версію PHP.

Як читати збіг за версією

Визначена версія - ще не підтверджена вразливість. Дистрибутиви Linux часто переносять виправлення безпеки, не змінюючи номера версії; вразлива функція може бути вимкнена; проксі чи CDN перед сайтом може показувати власну назву сервера. Тому звіт пише «потенційна» і вказує, звідки взято версію: із заголовка, мета-тегу чи назви файлу.

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

Діє й навпаки: якщо сайт ховає версії, звіряти нема з чим, а прихована версія не доводить, що ПЗ оновлене.

Чого ця перевірка не робить

  • Бачить лише те, що показує сайт. ПЗ, яке не лишає слідів у публічних відповідях або ховає версію, не отримує знахідок за версією.
  • Не входить в адмінку, не читає списків пакетів і не запускає експлойтів, тож не може підтвердити, що вразливість досяжна на вашому сайті.
  • Читає головну сторінку й кілька відомих файлів, а не кожну сторінку. Плагіни й бібліотеки, що є лише на внутрішніх сторінках, можуть лишитися непоміченими.
  • Хмарні платформи на кшталт Shopify, Wix чи Webflow оновлює їхній постачальник; їхні CVE ми вашому сайту не приписуємо.
  • Дані про життєвий цикл і вразливості - кешовані копії, тож зовсім нове повідомлення може зʼявитися із затримкою.
  • Не шукає шкідливого коду і не перевіряє чорних списків.
  • Лише з підтвердженим правом власності: на такому сайті активна перевірка портів може прочитати й версії сервісів на відкритих портах, і бачить їх лише підтверджений власник. Для інших сайтів перевірка до цих портів не підключається.

Запитання

Чи знайдете ви версію PHP, якщо X-Powered-By вимкнено?

Зазвичай ні. Ми можемо бачити, що сайт працює на PHP (наприклад, бо це WordPress), але без версії звіряти нема з чим, і звіт не робить висновків про CVE. Прибрати заголовок радять OWASP і php.net, це корисна гігієна, але не виправлення: PHP однаково треба оновлювати.

Хостинг каже, що виправлення вже перенесене в їхній пакет. Чому збіг лишається?

Бо ззовні ми бачимо лише номер версії від розробників PHP. Попросіть у хостингу журнал змін пакета. Якщо там є ця CVE, збіг до вашого сервера не стосується.

Чим завершена підтримка відрізняється від пропущеного патча?

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

Якщо збігів немає, значить, вразливостей немає?

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

Джерела

  1. php.net: підтримувані версії (англійською) php.net
  2. php.net: новини 2026 року, безпекові релізи 21.10.2026 (англійською) php.net
  3. php.net: як приховати PHP (англійською) php.net
  4. NIST: Національна база вразливостей NVD (англійською) nist.gov
  5. FIRST: система прогнозування експлуатації EPSS (англійською) first.org
  6. OWASP: шпаргалка з HTTP-заголовків безпеки (англійською) cheatsheetseries.owasp.org

Знайдіть застаріле ПЗ на своєму сайті

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

Перевіряйте лише свої сайти або ті, на які маєте дозвіл. Як працює наш сканер