Com amagar el número de versió de PHP a la capçalera HTTP


La configuració de PHP, per defecte, permet que la capçalera de resposta HTTP del servidor X-Powered-By mostri la versió de PHP instal·lada en un servidor.

Per motius de seguretat del servidor (tot i que no és una amenaça important per la qual preocupar-se), es recomana desactivar o amagar aquesta informació dels atacants que puguin estar dirigits al vostre servidor per saber si esteu executant PHP o no.

Suposant que una versió determinada de PHP instal·lada al vostre servidor té forats de seguretat i, d'altra banda, els atacants ho saben, els serà molt més fàcil explotar vulnerabilitats i accedir al servidor mitjançant scripts.

Al meu article anterior, he mostrat com amagar el número de versió d'apache, on heu vist com desactivar la versió instal·lada d'apache. Però si esteu executant PHP al vostre servidor web Apache, també heu d'amagar la versió instal·lada de PHP, i això és el que mostrarem en aquest article.

Per tant, en aquesta publicació, explicarem com amagar o desactivar la mostra del número de versió de PHP a la capçalera de resposta HTTP del servidor.

Aquesta configuració es pot configurar al fitxer de configuració PHP carregat. En cas que no coneixeu la ubicació d'aquest fitxer de configuració al vostre servidor, executeu l'ordre següent per trobar-lo:

$ php -i | grep "Loaded Configuration File"
---------------- On CentOS/RHEL/Fedora ---------------- 
Loaded Configuration File => /etc/php.ini

---------------- On Debian/Ubuntu/Linux Mint ---------------- 
Loaded Configuration File => /etc/php/7.0/cli/php.ini

Abans de fer qualsevol canvi al fitxer de configuració de PHP, us suggereixo que primer feu una còpia de seguretat del vostre fitxer de configuració PHP de la següent manera:

---------------- On CentOS/RHEL/Fedora ---------------- 
$ sudo cp /etc/php.ini /etc/php.ini.orig

---------------- On Debian/Ubuntu/Linux Mint ---------------- 
$ sudo cp /etc/php/7.0/cli/php.ini  /etc/php/7.0/cli/php.ini.orig  

A continuació, obriu el fitxer amb el vostre editor preferit amb privilegis de superusuari com aquest:

---------------- On CentOS/RHEL/Fedora ---------------- 
$ sudo vi /etc/php.ini

---------------- On Debian/Ubuntu/Linux Mint ---------------- 
$ sudo vi /etc/php/7.0/cli/php.ini

Localitzeu la paraula clau expose_php i establiu-ne el valor a Off:

expose_php = off

Desa el fitxer i surt. Després, reinicieu el servidor web de la següent manera:

---------------- On SystemD ---------------- 
$ sudo systemctl restart httpd
$ sudo systemctl restart apache2 

---------------- On SysVInit ---------------- 
$ sudo service httpd restart
$ sudo service apache2 restart

Finalment, però no menys important, comproveu si la capçalera de resposta HTTP del servidor encara mostra el vostre número de versió de PHP mitjançant l'ordre següent.

$ lynx -head -mime_header http://localhost 
OR
$ lynx -head -mime_header http://server-address

on les banderes:

  1. -head: envia una sol·licitud HEAD per a les capçaleres MIME.
  2. -mime_header: imprimeix la capçalera MIME d'un document obtingut juntament amb la seva font.

Nota: assegureu-vos que teniu instal·lat el navegador web de línia d'ordres lynx al vostre sistema.

Això és! En aquest article, vam explicar com amagar el número de versió de PHP a la capçalera de resposta HTTP del servidor per tal de protegir un servidor web de possibles atacs. Pots afegir una opinió a aquesta publicació o potser fer qualsevol pregunta relacionada mitjançant el formulari de comentaris a continuació.