Qual è il danno effettivo nella lista delle directory aperte? Cosa può fare un attaccante qui?

2

Ci sono momenti in cui le directory vengono lasciate pubblicamente accessibili intenzionalmente. Qual è il danno qui? Come mai questo è considerato un difetto?

So che può rivelare informazioni sensibili dal server, perché a volte vengono lasciate intenzionalmente accessibili al pubblico?

    
posta Ashwin 14.06.2018 - 22:24
fonte

3 risposte

2

Perché ha senso farlo quando ha senso farlo. La solita pratica è disabilitarla e abilitarla solo per le directory che specificamente vogliono per evitare la divulgazione accidentale delle informazioni, ma ovviamente ... non avere una lista di directory non impedisce loro di accedere il tuo /admin/err.log o qualsiasi altra cosa perché puoi ancora indovinare i percorsi dei file. Ad esempio, potresti avere una directory in cui memorizzi le immagini dei tuoi dipendenti con nomi di file casuali per evitare che le persone scarti il tuo sito web (ma permetti comunque loro di accedere a singole foto quando necessario). Se non si disattiva l'elenco delle directory (e di solito non si ha index.html), un utente malintenzionato potrebbe facilmente ottenere un elenco di tutti gli impiegati in quel modo.

    
risposta data 15.06.2018 - 11:04
fonte
1

Poche cose sono sempre buone o sempre cattive. Dipende dal contesto.

Se i file nella tua directory sono solo file statici che desideri possano essere scaricati dagli utenti, l'attivazione dell'elenco di directory va bene. Questo è abbastanza comune per es. distribuzioni software, dove potresti avere cartelle diverse per versioni diverse, sistemi operativi, ecc. Lasciare che l'utente curiosare in queste non sia dannoso, probabilmente è il caso d'uso per cui hai costruito il sito.

D'altra parte, se stai ospitando qualcosa di più complesso come un'applicazione web dinamica, attivare l'elenco di directory è probabilmente una cattiva idea. Si rischia di esporre la struttura interna dei programmi o anche peggio di tutti i tipi di file di configurazione o di registro contenenti dati sensibili. È facile perdere inavvertitamente la password del DB in questo modo.

Un altro aspetto da tenere in considerazione è che l'elenco delle directory probabilmente telegraph il server web che stai usando, e forse anche quale versione. Si può o non può importare di questo.

Quindi, la linea di fondo è questa: assicurati che l'elenco delle directory sia disattivato, a meno che tu non sappia cosa stai facendo, stai solo servendo file statici non sensibili e hai un caso d'uso specifico che deve essere acceso.

    
risposta data 15.06.2018 - 11:11
fonte
0

(presumo che stiamo parlando dell'accesso HTTP qui - segnalandolo come un'applicazione web confonde un po 'il problema)

Se qualcosa è fatto intenzionalmente, non è un difetto. Come altri hanno già detto, potrebbe aver inavvertitamente esposto informazioni che non si desidera rendere pubbliche, o potrebbero farlo in futuro . La decisione di creare o meno una directory disponibile si basa su un semplice insieme di domande:

  1. L'uso legittimo del servizio richiede la possibilità (in questo caso una directory leggibile pubblicamente)
  2. La struttura migliora l'utilizzo del servizio
  3. È richiesto per il supporto / la manutenzione del servizio?
  4. Migliora il supporto / la manutenzione del servizio?
  5. Quali sono i costi / i rischi di cambiare il comportamento? per esempio. l'installazione di un file manager basato sul web potrebbe rimuovere la necessità di mod_autoindex, ma richiede molto tempo per installare / configurare e aumentare significativamente la superficie di attacco

Oltre al rischio di esporre informazioni riservate, aumenta anche il rischio di pubblicare i dettagli del codice dell'applicazione nei motori di ricerca. Ciò significa che qualcuno che ha un exploit per alcune applicazioni deve semplicemente rivolgersi a Google per trovare gli host vulnerabili cercando per nome file e dimensione file. Anche se non hai mai informazioni di alcun valore sul tuo sito, un exploit, la macchina connessa a Internet è una risorsa preziosa per qualsiasi aggressore.

Al contrario, una persona che si rivolge specificamente al tuo server potrebbe essere in grado di fare un riferimento incrociato ai nomi file / filesizzati esposti contro vulnerabilità note senza sondare il tuo sito alla ricerca di vulnerabilità (e quindi di intervenire sui meccanismi di protezione).

In Apache e nginx, attivare e disattivare questa funzionalità (o applicarla selettivamente) è molto economica. Quindi la pratica è semplicemente un'estensione del principio del privilegio minimo.

    
risposta data 15.06.2018 - 13:42
fonte

Leggi altre domande sui tag