Le installazioni di PHP che utilizzano l’interprete in modalità CGI (ma non in modalità FastCGI) sono esposte ad una possibile vulnerabilità.
Lo sfruttamento di questo baco è già in giro per Internet; se nei log http vi trovate qualcosa tipo
GET /index.php?-s HTTP/1.1 POST /?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input HTTP/1.1
è qualche simpaticone che sta tentando di vedere se il vostro server è vulnerabile.
Per dissuadere gli attaccanti su un server Apche, indipendentemente dalla modalità con cui lavora PHP, basta aggiungere questi parametri nel file .htaccess
o in un posto analogo
RewriteEngine on RewriteCond %{QUERY_STRING} ^[^=]*$ RewriteCond %{QUERY_STRING} %2d|\- [NC] RewriteRule .? – [F,L]
Da notare che Facebook non solo non è vulnerabile all’attacco, ma se provate a chiedere la pagina https://facebook.com/?-s vi risponde con un invito…
5 risposte a “Vulnerabilità di PHP CGI”
Spiritosi e pronti a cogliere l’opportunita`, quelli di Facebook.
[…] HTTP/1.1 è qualche simpaticone che sta tentando… Continua a leggere la notizia: Vulnerabilità di PHP CGI Fonte: […]
Questa vulnerabilita` non colpisce mod php di apache, giusto?
Se hai da qualche parte nella configurazione una cosa tipo:
LoadModule php5_module modules/libphp5.so
e’ come modulo di Apache.
Se invece hai qualcosa tipo
ScriptAlias /local-bin /usr/local/bin
AddHandler application/x-httpd-php5 php
Action application/x-httpd-php5 /local-bin/php-cgi
inizia a preoccuparti…
Io ho sempre usato il modulo e mai il CGI, a meno di qualche motivo astruso che richiedesse il CGI… cosa che mi pare non si sia mai verificata. Pero` ammetto che ho troppi server per ricordarmi la configurazione esatta di tutti.