PHP - Як приховати X-Powered-by в HTTP заголовках
- Останнє оновлення: 3 Листопада 2023 р.
- Перегляди: 132
- Автор: Адмін
Колеги всім привіт.
У сьогоднішній статті ми поговоримо про те, як можна легко і швидко сховати версію вашого інтерпретатора PHP в заголовках HTTP.
Коли користувач надсилає якийсь запит на ваш сайт, цей запит спочатку обробляється вашим веб-сервером Apache або Nginx і потім веб-сервер цей запит перенаправляє на ваш інтерпретатор, у нашому випадку це PHP. Після того як PHP обробить запит він, поверне відповідь назад веб-серверу, а вже веб-сервер поверне весь результат користувачеві. У цьому самому результаті, а саме в HTTP заголовках крім всіх інформації про сервер ще й передається версія вашого PHP інтерпретатора яка на даний момент у вас встановлена на сервері, а це може бути вже небезпечно для безпеки вашого веб-додатку.
Приховувати версію вашого інтерпретатора PHP від зайвих очей може допомогти вам забезпечити безпеку вашого веб-додатку. Звертаю вашу увагу на те, що спосіб приховати версію вашого PHP інтерпретатора допоможе лише при деяких типах атак, коли роботом шукається певна версія з певною вразливістю.
За замовчуванням ваш веб-сервер Apache або Nginx передає номер версії PHP в заголовках HTTP. Ім'я заголовка який відповідає за версію PHP називається X-Powered-By .
Як бачимо зі скріншота, наш веб-сервер передає версію PHP, яка у нас встановлена.
Щоб приховати інформацію про нашого інтерпретатора PHP, вам потрібно змінити параметр expose_php, який знаходиться в основному конфігураційному файлі під назвою php.ini, який знаходиться в директорії /etc .
Відкриваємо конфігураційний файл php.ini будь-яким зручним для вас текстовим редактором.
$. sudo vim /etc/php.ini
Знаходимо у файлі параметр expose_php .
Змінюємо значення параметра з On на Off .
expose_php = Off
Після того, як ми змінили значення параметра expose_php, тепер потрібно перезапустити PHP інтерпретатор, використовуючи наступну команду:
$. sudo service php-fpm restart
Оновлюємо сторінку у браузері та дивимося на результат.
Як бачимо в результаті, інформація про нашого інтерпретатора PHP тепер не показується.
Дякую всім, я сподіваюся що вам моя стаття хоч чимось допомогла.