È pericoloso consentire all'utente di visualizzare una directory di file tramite browser web?

4

Ho un URL che visualizza tutti i file pdf in una determinata directory visitando la seguente posizione del sito:

link

Questo presenta qualche vulnerabilità di sicurezza?

    
posta blue-sky 25.07.2012 - 23:29
fonte

6 risposte

3

Se non ci sono file in là accanto a quelli che vuoi condividere di quanto sia ok. Ma assicurati di disabilitare l'indicizzazione per tutte le altre directory sul server.

Options -Indexes

L'indicizzazione è considerata una minaccia per la sicurezza.

Maggiori informazioni qui: link

    
risposta data 25.07.2012 - 23:45
fonte
8

Dipende da cosa c'è dentro.

Originariamente l'idea alla base del web era di fornire un catalogo di informazioni utili; ogni file in una directory pubblica contiene alcune informazioni e un indice viene generato automaticamente per rendere accessibili tali informazioni. L'intero motivo per cui il tuo file predefinito è tradizionalmente chiamato index.html è perché il file teoricamente dovrebbe essere un indice, proprio come quello generato automaticamente, ma forse formattato in modo diverso.

Se la directory non contiene nient'altro che file accessibili pubblicamente (come immagini, PDF, file HTML o what-have-you), l'indice generato automaticamente non è meno sicuro di un indice generato manualmente equivalente.

Ma se invece si ha una sorta di app web - e in particolare una scritta in PHP o ASP o ASP.NET o una lingua simile in cui i file dell'applicazione sono archiviati nella radice del documento mescolati con il media - allora il l'indice generato automaticamente può fornire collegamenti a file che non intendi rendere pubblici. Questo è ancora più vero se hai anche dei file "include". E in tal caso, questo indice automatico potrebbe facilitare la ricerca di file che potrebbero portare a una vulnerabilità.

Si noti che l'indice stesso è non una vulnerabilità ed è non un rischio per la sicurezza di per sé. Invece, potrebbe aiutare a localizzare e sfruttare qualche vulnerabilità di sicurezza altri sul sito. Se non si dispone di tali vulnerabilità, l'indice non aggiunge alcun rischio da solo.

Inoltre, tutte le pratiche che potrebbero rendere pericoloso un indice di directory sono, a loro volta, pratiche errate categoricamente e non sono rese sicure semplicemente rimuovendo la direttiva index.

Questo include in particolare l'inserimento di file di codice lato server nella root del documento. Per sicurezza, dovresti avere un file ( index.php ) all'interno della radice del documento e TUTTI gli altri file all'esterno. Il tuo file index.php non dovrebbe contenere altro che codice di bootstrap che carica ed esegue la tua webapp, mentre la webapp gestisce tutto il routing degli URL indipendentemente dalla struttura del tuo filesystem. A parte questo, la root del documento dovrebbe solo contenere file statici che siano sicuri per chiunque possa visualizzarli.

    
risposta data 26.07.2012 - 06:32
fonte
1

Se vuoi consentire la navigazione dei file in quel modo, perché non configurare un file server? Hai usato l'applicazione web di tag, che differisce dalla semplice fornitura di alcuni PDF. In tal caso vorrei andare con quello che ha dichiarato Tyler1.

    
risposta data 26.07.2012 - 06:54
fonte
1

No. Questo non presenta alcuna vulnerabilità di sicurezza. È una cosa assolutamente ragionevole da fare.

Assicurati che ogni file in quella directory sia in realtà destinato a essere reso disponibile al pubblico. Non mettere nessun file che vuoi tenere segreto sotto quella directory. (Ma di solito, dovresti evitare di mettere tali file ovunque nella tua web root, quindi probabilmente non ti sto dicendo niente di troppo nuovo.)

    
risposta data 31.07.2012 - 08:01
fonte
0

Sebbene probabilmente non vi siano problemi nel mostrare l'elenco di file in quella particolare posizione, il rischio principale che si incontra è quando il codice passa il nome della cartella come parametro, possibilmente dall'input dell'utente.

A quel punto, devi essere molto attento a filtrare il parametro della cartella per consentire solo le cartelle approvate, oppure un utente può specificare altre cartelle come / etc o il codice sorgente dell'app Web e leggere tutto tipi di dati sensibili come le password.

    
risposta data 31.07.2012 - 05:19
fonte
0

È meglio nasconderlo usando htaccess e visualizzare i file nella pagina html.

Options -Indexes

Le perdite di informazioni possono essere pericolose. alcuni esempi: -

  • Backup di file che utilizzano estensioni di nomi di file, come BAK, OLD o ORIG
  • File nascosti con nomi di file che iniziano con a. (Punto)
  • File temporanei che sono stati eliminati dal server, ma potrebbero comunque essere disponibili
  • Convenzioni di denominazione in cui l'utente malintenzionato può determinare in che modo il sito Web nomina directory o file
  • Account utente personali su un server Web in cui l'utente ha denominato la propria directory home con lo stesso nome del proprio account utente
  • Contenuto del file di configurazione che potrebbe contenere dati sul controllo dell'accesso e utilizzare estensioni del nome del file, come CONF, CFG o CONFIG
  • Indicizzazione dell'indice dei contenuti del cgi-bin che può consentire a un utente malintenzionato di scaricare o rivedere il codice dello script se le autorizzazioni non sono corrette

maggiori informazioni: link

    
risposta data 22.10.2016 - 06:33
fonte

Leggi altre domande sui tag