Sta usando dirname (__ FILE__) una buona pratica?

1

Guardando il codice di Joomla vedo che nella prima riga dell'indice, definisce il percorso di base dell'installazione con dirname(__FILE__) .

Questo è un possibile rischio per il sito? Se un messaggio di errore non controllato mostra il percorso interno della directory di Joomla, a causa, ad esempio, di un inclusivo non riuscito, può essere usato per eseguire qualche tipo di attacco al sito? Se sì, è conveniente usare questa funzione?

    
posta webose 20.10.2012 - 01:10
fonte

2 risposte

1

Non dovresti mostrare i messaggi di errore PHP agli utenti in primo luogo. Quindi no, non è un rischio.

Inoltre, se l'unica misura di sicurezza sul server è quella di nascondere il percorso in cui si trova il codice sorgente, allora ... beh ... dovresti essere più preoccupato da altri rischi e mostrare il percorso agli utenti.

Infine, usando i percorsi relativi, stai potenzialmente introducendo ulteriori buchi nella sicurezza. Vedi ad esempio Prevenire l'attraversamento di directory in PHP ma permettendo i percorsi .

    
risposta data 20.10.2012 - 01:17
fonte
2

__FILE__ è una variabile globale nativa che contiene il percorso dello script che viene eseguito e dirname(__FILE__) restituirà la parte di directory di quel percorso. Non c'è assolutamente modo che questo fallirà, se il percorso in __FILE__ non esiste o non è valido, non avresti potuto comunque chiamare lo script in ogni caso.

In generale non dovresti lasciare che gli errori PHP (inclusi avvertimenti e notifiche) raggiungano l'utente, leggi error_reporting e display_errors .

    
risposta data 20.10.2012 - 01:24
fonte

Leggi altre domande sui tag