Quanto è importante l'utilizzo di open_basedir su un server con più siti Web PHP diversi?

2

Su un server web Apache con più VirtualHost che eseguono diversi siti Web PHP su domini diversi, quanto è importante impostare open_basedir per ogni VirtualHost?

In realtà aiuterà a isolare i diversi VHosts l'uno dall'altro o è possibile aggirare la restrizione?

Quanto è grande un difetto di sicurezza è non impostare open_basedir nelle circostanze descritte?

    
posta user40974 10.01.2017 - 18:14
fonte

2 risposte

2

Aggiunge una protezione aggiuntiva in caso di vulnerabilità di attraversamento di directory. Ad esempio, considera un file PHP simile a questo:

readfile($_GET['thumbnail_path']);

Senza open_basedir , questa pagina può essere utilizzata per leggere qualsiasi file sul filesystem. L'impostazione open_basedir lo impedisce, in modo che solo i file in alcune directory specifiche possano essere letti.

Tuttavia, open_basedir non protegge da qualcuno che può eseguire codice (PHP) sul server. Ad esempio, semplicemente l'esecuzione di system('cat /etc/passwd') ignorerà l'impostazione basata su. Inoltre, non tutte le funzioni che gestiscono i file controllano il percorso rispetto all'impostazione open_basedir .

    
risposta data 11.05.2017 - 13:54
fonte
0

open_basedir fondamentalmente limita le operazioni a uno spazio utente, una directory nel filesystem e precisamente la loro home directory. Puoi impostarlo su più directory, se necessario.

L'impostazione

open_basedir impedisce l'accesso / modifica di una posizione al di fuori dello spazio specificato sia intenzionale o accidentale.

Se esiste una vulnerabilità in uno script PHP o in uno script php dannoso nello spazio utente, limita l'accesso agli script dannosi alle directory / directory. Rendere difficile per loro estrarre file come passwd, file shadow o qualsiasi altra area sensibile.

    
risposta data 11.01.2017 - 09:43
fonte

Leggi altre domande sui tag