Bonjour à tous,
Je développe actuellement un site qui permet l'upload de document via formulaire HTML.
Théoriquement on ne peut pas uploader de fichiers php. En effet je fais toute une série de vérifications et si le fichier uploadé s'avère être un fichier php, rien ne se passe.
Bien entendu après avoir uploadé les documents, les utilisateurs peuvent les télécharger via le site web.
J'aimerais renforcer encore un peu plus la sécurité.
Admettons qu'un individu arrive à uploader un fichier php : le_fichier_intrus.php.
Celui-ci se retrouve à l'endroit suivant :
Je me dis qu'une bonne pratique de sécurité serait la suivante : même si l'utilisateur arrive à uploader un fichier php, il ne faut pas qu'il puisse y accéder.
Code : Sélectionner tout - Visualiser dans une fenêtre à part http://site.com/documents/le_fichier_intrus.php
S'il n'y accède pas, le script ne s'exécute pas, donc pas de risques.
J'ai donc pensé à mettre dans le fichier .htaccess à la racine du site la directive suivante :
Sachant que lors de la navigation, l'utilisateur est toujours sur index.php. Cette règle ne gêne donc pas du tout la navigation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <Files ~ "[^index]\.php$"> Order Allow,Deny Deny from All </Files>
Donc en dehors de index.php, l'utilisateur ne peut demander aucun .php.
S'il décide d'essayer d'accéder à son fichier en tappant http://site.com/documents/le_fichier_intrus.php, il obtient une interdiction.
Donc le script n'est pas exécuté.
J'ai l'impression que cette méthode assure une très bonne sécurité.
Y-a-t-il un inconvénient / une faille que je ne vois pas à utiliser une telle méthode ?
Partager