riesumo questa mia discussione perchè mi è saltata la pulce all'orecchio riguardo un aspetto non trascurabile in fatto di sicurezza: i file e i campi moduli di upload.
Io personalmente nel mio sito ho un form per l'invio e l'inserimento di immagini da parte degli utenti. Essendo una cosa "fatta in casa" il controllo che viene eseguito si limita alla sola estensione dei files.
Se la stringa che contiene il nome del file non finisce in .gif, .jpeg/.jpg, .png allora crea un messaggio di errore (e cancella il file dal server). Se invece il file viene reputato valido procede alla creazione di miniature.
La mia domanda è: e se qualcuno carica un file php cambiandogli l'estensione? Diventa "prova.jpg" e la prima volta che provo ad eseguirlo dovrebbe caricarmi il file php al posto dell'immagine.
Il mio hosting è su piattaforma linux, e x quanto lo utilizzi da poco anche a casa so che non bada troppo alle estensioni ma si affida agli header dei files. Questa caratteristica potrebbe ritorcersimi contro? Oppure il modulo di Apache utilizza le estensioni e carica solo quelle?
E poi un'altra curiosità: è possibile tramite qualche programma tipo webcopy che qualcuno riesca a scaricare dal mio server script php as-is senza che il server li interpreti?
Grazie a tutti e scusate la longevità di questo post![]()