Ich bin derzeit einwenig unsicher wie ich sicher herrausfinden kann ob auf einen Server PHP als CGI oder FastCGI eingebunden ist.
Derzeit untersuche ich für einen bekannten einen Server wo er sich unsicher ist ob er es als CGI oder FCGI laufen lässt (aus gegebenen Anlass der aktuellen PHP Sicherheitslücke).
Auf meiner Debian 6 Maschine (welcher mit FCGI läuft) finde ich u.a. folgendes
Ausgaben welche mit FCGI / CGI zu tun haben:
ps aux - die Prozesse
apache2ctl status
apache2ctl fullstatus
phpinfo
Vhosts
- angaben zu FCGI Wrapper zu jeder Seite
Bei meinen Bekannten ist es ein Debian5, noch mit PHP 5.2 (leider) und es gibt lediglich als Ausgabe folgendes zu finden. Mich wundert hier insbesonderes die Ausgabe von apache2ctl und ps aux.
ps aux - die Prozesse
apache2ctl status
apache2ctl fullstatus
--- keinerlei ausgabe das irgendwas mit FCGI läuft oder mit CGI ---
phpinfo
Vhosts
- angaben zu FCGI Wrapper zu jeder Seite
Woran kann ich nun wirklich erkennen das PHP über FCGI geladen wird bzw. wie würde es bei CGI aussehen?
Derzeit untersuche ich für einen bekannten einen Server wo er sich unsicher ist ob er es als CGI oder FCGI laufen lässt (aus gegebenen Anlass der aktuellen PHP Sicherheitslücke).
Auf meiner Debian 6 Maschine (welcher mit FCGI läuft) finde ich u.a. folgendes
Ausgaben welche mit FCGI / CGI zu tun haben:
ps aux - die Prozesse
PHP:
/usr/bin/php-cgi -c /var/www/php-fcgi-scripts/.....
apache2ctl status
PHP:
Server Version: Apache/2.2.16 (Debian) mod_fcgid/2.3.6 mod_ssl/2.2.16 OpenSSL/
apache2ctl fullstatus
PHP:
Process: php-fcgi-starter (/var/www/php-fcgi-scripts/...
phpinfo
PHP:
Server API CGI/FastCGI
Configuration File (php.ini) Path /etc/php5/cgi
Loaded Configuration File /var/www/php-fcgi-scripts/....../php.ini
Scan this dir for additional .ini files /etc/php5/cgi/conf.d
--- cgi-cfgi ---
cgi.check_shebang_line 1 1
cgi.discard_path 0 0
cgi.fix_pathinfo 1 1
cgi.force_redirect 1 1
cgi.nph 0 0
cgi.redirect_status_env no value no value
cgi.rfc2616_headers 0 0
fastcgi.logging 1 1
--- enviroment ---
PHP_FCGI_MAX_REQUESTS 100000
PATH /usr/local/bin:/usr/bin:/bin
PHPRC /var/www/php-fcgi-scripts/...../
PHP_FCGI_CHILDREN 0
PWD /var/www/php-fcgi-scripts/.....
--- PHP Variables ---
_SERVER["PHPRC"] /var/www/php-fcgi-scripts/....../
_SERVER["PHP_FCGI_CHILDREN"] 0
_SERVER["PWD"] /var/www/php-fcgi-scripts/....
_SERVER["FCGI_ROLE"] RESPONDER
Vhosts
- angaben zu FCGI Wrapper zu jeder Seite
Bei meinen Bekannten ist es ein Debian5, noch mit PHP 5.2 (leider) und es gibt lediglich als Ausgabe folgendes zu finden. Mich wundert hier insbesonderes die Ausgabe von apache2ctl und ps aux.
ps aux - die Prozesse
PHP:
/usr/bin/php-cgi
apache2ctl status
PHP:
Server Version: Apache/2.2.9 (Debian) mod_ssl/2.2.9 OpenSSL/0.9.8g
apache2ctl fullstatus
--- keinerlei ausgabe das irgendwas mit FCGI läuft oder mit CGI ---
phpinfo
PHP:
Server API CGI/FastCGI
Virtual Directory Support disabled
Configuration File (php.ini) Path /etc/php5/cgi
--- cgi-fcgi ---
cgi.check_shebang_line 1 1
cgi.fix_pathinfo 1 1
cgi.nph 0 0
cgi.rfc2616_headers 0 0
fastcgi.logging 1 1
--- PHP Variables ---
_ENV["PHPRC"] /var/www/scripts/...
_ENV["PATH"] /usr/local/bin:/usr/bin:/bin
_ENV["PWD"] /var/www/scripts
_ENV["SHLVL"] 0
_ENV["FCGI_ROLE"] RESPONDER
Vhosts
- angaben zu FCGI Wrapper zu jeder Seite
Woran kann ich nun wirklich erkennen das PHP über FCGI geladen wird bzw. wie würde es bei CGI aussehen?