Ho letto qui link e la domanda è correlata con il testo vicino
However, if the attacker is able to upload files, even outside the web root, and he knows the name and location of the uploaded file, by including his uploaded file he can run arbitrary code on the server.
The solution for that is to prevent the attacker from knowing the name of the file. This can be done by randomly generating file names and keeping track of them in a database.
Non comprendo completamente i rischi per la sicurezza. Come ho capito
- l'utente malintenzionato carica file dannoso
- Al momento il mio codice php converte il nome del file in qualcosa di casuale e con quel nome casuale memorizza in una particolare directory. Ma l'utente malintenzionato può vedere quel nome casuale, ad esempio con il tasto destro del mouse
Copy location
e vederehttps://domain.com/images/2014-05-16/339442/VH4AGExjRlw=/something_random.jpg
. Quindi la creazione di un nome casuale non aiuta? - Come capire in mysql è necessario registrare il vero nome del file e il nome che l'utente può vedere in url?
Impossibile capire completamente. Lo scopo è prevenire la situazione in cui l'utente carica il file e quindi conoscendo il nome del file, può accedere al file?