Come nascondere le cartelle all'interno di webroot per essere identificati?

1

Ho una libreria all'interno del mio webroot:

link

Accedere all'URL tramite un browser mi dà l'errore negato previsto. Tuttavia, voglio assicurarmi che i client non sappiano nemmeno che la libreria esiste.

La soluzione che ho pensato è stata semplicemente rinominare la libreria in una stringa casuale. Quindi, l'URL della mia libreria ora è simile a questo:

link

C'è un modo per un utente malintenzionato, senza accesso al mio server, per identificare che tale cartella esiste sul mio server web e se sì, qual è il modo migliore per nascondere la cartella?

Grazie mille!

    
posta Tim von Känel 05.07.2018 - 21:38
fonte

1 risposta

1

Probabilmente dipenderà dal server in uso e dal sistema operativo, ma questo è un esempio di come gestirlo.

È possibile acquisire la risposta all'errore e inviarli a un'altra pagina invece di restituire i codici di errore.

Se dovessi implementarlo, invierei tutti gli errori alla tua pagina indice. In questo modo l'attaccante non sa se qualcosa è limitato, non lì, rotto, ecc. Questo rende anche la scansione bruteforce con dirb dirbuster e wfuzz un dolore poiché sfruttano i codici di risposta per identificare le pagine. Quindi, se si restituisce sempre un codice di stato 200, si interrompe effettivamente l'utilizzo di tali strumenti.

Custom error documents are configured using the ErrorDocument directive, which may be used in global, virtualhost, or directory context. It may be used in .htaccess files if AllowOverride is set to FileInfo.

- ErrorDocument 500 "Sorry, our script crashed. Oh dear"
- ErrorDocument 500 /cgi-bin/crash-recover
- ErrorDocument 500 http://error.example.com/server_error.html
- ErrorDocument 404 /errors/not_found.html
- ErrorDocument 401 /subscription/how_to_subscribe.html

The syntax of the ErrorDocument directive is: ErrorDocument <3-digit-code> where the action will be treated as: A local URL to redirect to (if the action begins with a "/").

An external URL to redirect to (if the action is a valid URL). Text to be displayed (if none of the above). The text must be wrapped in quotes (") if it consists of more than one word.

When redirecting to a local URL, additional environment variables are set so that the response can be further customized. They are not sent to external URLs.

Per ulteriori informazioni consulta la documentazione

link

Questa non è una soluzione valida per la bruteforcing web. Non ho scritto molto tempo fa uno script che sfrutta la lunghezza del contenuto anziché il codice di stato. Puoi vedere come funziona su GitHub

Per sconfiggere gli scanner per la lunghezza dei contenuti probabilmente inserirò una stringa casuale nascosta con una lunghezza variabile nel mio indice o nella pagina di errore.

    
risposta data 05.07.2018 - 21:57
fonte

Leggi altre domande sui tag