Ciao a tutti, su una macchina con Fedora Core 8, httpd-2.2.9 e php-5.2, richiamando attraverso un browser, una pagina contenente codice in php riesco a visualizzare il contenuto di una directory che si trova ad un livello superiore rispetto alla home directory a cui fa riferimento il sito web virtuale configurato sulla macchina, per poter disabilitare questa possibilità mi basta usare:
<Location /domain1> Options -Indexes SetHandler server-status Order deny,allow Deny from all </Location>
Grazie e buon lavoro.
------ Salvatore.
Il giorno 09 settembre 2009 16.16, Sasa sasa@shoponweb.it ha scritto:
Ciao a tutti, su una macchina con Fedora Core 8, httpd-2.2.9 e php-5.2, richiamando attraverso un browser, una pagina contenente codice in php riesco a visualizzare il contenuto di una directory che si trova ad un livello superiore rispetto alla home directory a cui fa riferimento il sito web virtuale configurato sulla macchina
Spiegati meglio, che url richiami per caricare una pagina di una directory superiore alla root del virtualhost?
Salvatore. _______________________________________________ Fedora-it-list mailing list Fedora-it-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-it-list
Alle mercoledì 09 settembre 2009, Sasa ha scritto:
Ciao a tutti, su una macchina con Fedora Core 8, httpd-2.2.9 e php-5.2, richiamando attraverso un browser, una pagina contenente codice in php riesco a visualizzare il contenuto di una directory che si trova ad un livello superiore rispetto alla home directory a cui fa riferimento il sito web virtuale configurato sulla macchina, per poter disabilitare questa possibilità mi basta usare:
<Location /domain1> Options -Indexes SetHandler server-status Order deny,allow Deny from all
</Location>
Con php puoi leggere tutto il filesystem se vuoi per impedirlo dovresti togliere la possibilità all'utente con cui gira apache di sbirciare il naso dappertutto
Il giorno 09 settembre 2009 19.42, Leonardo leodav@tiscali.it ha scritto:
Alle mercoledì 09 settembre 2009, Sasa ha scritto:
Ciao a tutti, su una macchina con Fedora Core 8, httpd-2.2.9 e php-5.2, richiamando attraverso un browser, una pagina contenente codice in php riesco a visualizzare il contenuto di una directory che si trova ad un livello superiore rispetto alla home directory
Con php puoi leggere tutto il filesystem se vuoi per impedirlo dovresti togliere la possibilità all'utente con cui gira apache di sbirciare il naso dappertutto
Beh dipende se non hai impostato *"open_basedir"* in php.ini o nel .htaccess del virtual host
Fedora-it-list mailing list Fedora-it-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-it-list
On Wed, Sep 09, 2009 at 07:42:01PM +0200, Leonardo wrote:
Con php puoi leggere tutto il filesystem se vuoi per impedirlo dovresti togliere la possibilità all'utente con cui gira apache di sbirciare il naso dappertutto
Oppure far girare apache in un chroot, o anche utilizzare virtualizzazione a livello di sistema operativo (alias Containers/Jails/... ) ...
Lorenzo V.
"Guido Grazioli" wrote:
Beh dipende se non hai impostato *"open_basedir"* in php.ini o nel .htaccess del virtual host
..si avrei dovuto dare qualche info in più ! :-) In merito alla configurazione posso aggiungere che nel php.ini ho:
safe_mode=off ;open_basedir =
mentre in .htaccess Options -Indexes
Modificando il php.ini mettendo ad on il parametro 'safe_mode' e ponendo ad off il parametro 'open_basedir' posso risolvere il problema ? Potrei anche lavorare gestendo un utente (e relativi permessi) per ogni singolo sito web virtuale però in questo modo la gestione sarebbe un pò più complessa e vorrei cercare, ove possibile, di evitarla. Infine potrei gestire i permessi sulla dir /var/www/html che attualmente sono i seguenti:
drwxr-xr-x
In definitiva l'obiettivo è quello di fare in modo che non si possa 'uscire' dalla directory di appartenenza relativa ad ogni singolo sito web virtuale fosse anche solo la visualizzazione del contenuto relativo ai file presenti nella directory di livello superiore. Se servono altre info sono a disposizione ! Grazie.
------
Salvatore.
Il giorno 10 settembre 2009 12.38, Sasa sasa@shoponweb.it ha scritto:
In merito alla configurazione posso aggiungere che nel php.ini ho:
safe_mode=off ;open_basedir =
mentre in .htaccess Options -Indexes
Modificando il php.ini mettendo ad on il parametro 'safe_mode' e ponendo ad off il parametro 'open_basedir' posso risolvere il problema ?
Mi sembra che open_basedir non dipenda da safe_mode (e quest'ultimo verrà comunque abbandonato nelle prossime versioni di php), controlla la documentazione per sicurezza; open_basedir non prende on|off ma il path entro cui restringere l'accesso a php, per cui la soluzione in questo caso è impostare nel .htaccess di ogni virtualhost una direttiva
php_value openbase_dir <root_contesto>
Andando a memoria quanto dico potrebbe essere non sufficiente/errato, quindi in ogni caso -> http://php.net/
ciao
"Guido Grazioli" wrote:
Mi sembra che open_basedir non dipenda da safe_mode (e quest'ultimo verrà comunque abbandonato nelle prossime versioni di php), controlla la documentazione per sicurezza; open_basedir non prende on|off ma il path entro cui
..nel php.ini è riportato quanto segue:
; open_basedir, if set, limits all file operations to the defined directory ; and below. This directive makes most sense if used in a per-directory ; or per-virtualhost web server configuration file. This directive is ; *NOT* affected by whether Safe Mode is turned On or Off.
..secondo voi la strada migliore (ovviamente non in assoluto) è quella relativa alla gestione degli utenti o quella relativa alla modifica relative alla configurazione di httpd e php ? Ancora grazie !
------
Salvatore.
Alle giovedì 10 settembre 2009, Sasa ha scritto:
..secondo voi la strada migliore (ovviamente non in assoluto) è quella relativa alla gestione degli utenti o quella relativa alla modifica relative alla configurazione di httpd e php ?
controlla se questa direttiva puo essere modificata dagli utenti tramite ini_set() o attraverso htaccess. Se è cosi, per il tuo caso è praticamente inutile
-- Leonardo
it-users@lists.fedoraproject.org