Перевірте сайт на застаріле ПЗ і відомі 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, збіг до вашого сервера не стосується.
Чим завершена підтримка відрізняється від пропущеного патча?
Завершена підтримка означає, що вся гілка більше не отримує виправлень безпеки, і допоможе лише перехід на підтримувану гілку. Пропущений патч означає, що гілка підтримується, але у вас старіший її реліз: звичайне оновлення закриває розрив.
Якщо збігів немає, значить, вразливостей немає?
Ні. Це означає, що серед ПЗ, яке ми змогли побачити, застарілих версій не знайшлося. Власний код, приховані версії й усе, що за логіном, у цю перевірку не входять.
Джерела
- php.net: підтримувані версії (англійською) php.net
- php.net: новини 2026 року, безпекові релізи 21.10.2026 (англійською) php.net
- php.net: як приховати PHP (англійською) php.net
- NIST: Національна база вразливостей NVD (англійською) nist.gov
- FIRST: система прогнозування експлуатації EPSS (англійською) first.org
- OWASP: шпаргалка з HTTP-заголовків безпеки (англійською) cheatsheetseries.owasp.org
Знайдіть застаріле ПЗ на своєму сайті
Введіть адресу сайту. Звіт покаже визначені технології, їхні версії й кожен збіг із джерелом версії. Безкоштовно, без реєстрації, лише читання.
Перевіряйте лише свої сайти або ті, на які маєте дозвіл. Як працює наш сканер