[Silence is Gold] Regola nelle directory del server web
Il server web avrà alcuni nomi di file predefiniti (in ordine di priorità) come index.php, index.html ecc. se digiti l’URL di una cartella web invece di un file specifico. Tuttavia, se non ci sono tali file predefiniti, probabilmente elencherà i nomi dei file (con collegamenti) nella directory corrente nel browser o, un’impostazione migliore e più sicura sarebbe quella di disabilitarlo e mostrare 403 permessi di errore proibiti.
Con le cartelle wordpress, in particolare le cartelle dei plugin in cui gli URL non dovrebbero essere visitati direttamente nel browser, troverai molti index.php contenenti qualcosa del genere:
O in un altro formato simile:
Naturalmente, ci sono molti altri possibili contenuti che disabilitano tutti silenziosamente la navigazione delle cartelle. Se i file sono elencati, probabilmente verranno esposti alcuni file contenenti informazioni riservate.
Un modo migliore, secondo me, è avere un index.php che abbia quanto segue:
In questo modo, mostrerà un errore 404 non trovato, che sembra reale, fuorviando i potenziali hacker.
In alcuni file inclusi, a cui non si dovrebbe accedere direttamente, puoi trovare alcuni controlli all’inizio:
if (!defined('IN_PHPBB'))
exit;
// don't load directly
if (!defined('ABSPATH')) die('-1');
In questo modo si evita la possibile perdita di informazioni sensibili in caso di visualizzazione di errori di script nel browser. Per le cartelle che non dovrebbero essere completamente esposte, puoi aggiungere le seguenti righe nel file .htaccess
order allow,deny
deny from all
In questo modo, non sarà possibile accedere a nessun file nell’URL pubblico. Ad esempio, le cartelle di registro e di backup per la sicurezza di Plugin itheme sono impostate su questo.