Kako skriti številko različice PHP v glavi HTTP


Konfiguracija PHP privzeto omogoča odgovoru HTTP strežniške odzivne glave »X-Powered-By«, da prikaže različico PHP, nameščeno na strežniku.

Zaradi varnostnih razlogov strežnika (čeprav to ni glavna nevarnost, ki bi vas skrbela) je priporočljivo, da te podatke onemogočite ali skrijete pred napadalci, ki morda ciljajo na vaš strežnik, tako da želite vedeti, ali uporabljate PHP ali ne.

Ob predpostavki, da ima določena različica PHP, nameščena na vašem strežniku, varnostne luknje, na drugi strani pa napadalci to spoznajo, zato bodo veliko lažje izkoriščali ranljivosti in s skripti dobili dostop do severa.

V prejšnjem članku sem pokazal, kako skriti številko različice apache, kjer ste videli, kako izklopiti nameščeno različico apache. Če pa v spletnem strežniku apache uporabljate PHP, morate skriti tudi nameščeno različico PHP in to bomo pokazali v tem članku.

Zato bomo v tej objavi razložili, kako skriti ali izklopiti prikaz številke različice PHP v glavi odziva strežnika HTTP.

To nastavitev lahko nastavite v naloženi konfiguracijski datoteki PHP. Če ne poznate lokacije te konfiguracijske datoteke na strežniku, zaženite spodnji ukaz in jo poiščite:

$ 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

Pred kakršnimi koli spremembami v konfiguracijski datoteki PHP predlagam, da najprej naredite varnostno kopijo svoje konfiguracijske datoteke PHP tako:

---------------- 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  

Nato odprite datoteko s svojim najljubšim urejevalnikom s super uporabniškimi pravicami, kot so:

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

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

Poiščite ključno besedo expose_php in nastavite njeno vrednost na Off:

expose_php = off

Shranite datoteko in zapustite. Nato spletni strežnik znova zaženite na naslednji način:

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

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

Nenazadnje s spodnjim ukazom preverite, ali glava odziva strežnika HTTP še vedno prikazuje številko vaše različice PHP.

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

kjer so zastave:

  1. -head - pošlje zahtevo HEAD za glave mime.
  2. -mime_header - natisne glavo MIME pridobljenega dokumenta skupaj z njegovim izvorom.

Opomba: Prepričajte se, da je v vašem sistemu nameščen spletni brskalnik Lynx - ukazna vrstica.

To je to! V tem članku smo razložili, kako skriti številko različice PHP v glavi odziva strežnika HTTP, da zaščitimo spletni strežnik pred morebitnimi napadi. Lahko dodate mnenje k tej objavi ali morda zastavite katero koli povezano vprašanje prek spodnjega obrazca za komentar.