Bouton "supprimer"

Fermé
Justin - 19 avril 2010 à 00:15
 Justin - 19 avril 2010 à 09:01
Bonsoir,

J'ai un script de upload d'image et je souhaite ajouter une fonction qui permettrait à l'utilisateur de supprimer son image sur la page de résulta (la page qui dit que l'image est hébergé, le ou le lien est donné).

Donc il y a $id = rand() qui donne une ID à l'image, et j'utiliserais unlink($id) pour supprimer l'image.

Bien sur il y a plusieurs vérifications (if) pour vérifier si c'est bien une image.

Donc ma question, est ce que il y pourrait avoir des failles de sécurité ? (Perso, moi je vois pas du tout :s)

Merci d'avance.
A voir également:

1 réponse

creadiff Messages postés 445 Date d'inscription samedi 3 avril 2010 Statut Membre Dernière intervention 3 novembre 2011 57
19 avril 2010 à 00:21
Ca dépend:

- si $id est une valeur envoyée par le client (via un formulaire), alors il y a effectivement faille de sécurité

- par contre, si $id est stocké côté serveur (variable de session par exemple), aucun risque !
0
$id est généré automatiquement avec un rand() pour renommé l'image par exemple une image PNG (blabla.png) serra renommé en 15646156.png et donc le unlink serra unlink(15646156.png);

Donc il n'y a pas de faille ?
0
billwate Messages postés 48 Date d'inscription samedi 2 août 2008 Statut Membre Dernière intervention 19 avril 2010 28
19 avril 2010 à 00:30
Et que ferais-tu si la fonction rand() donne un numéro déjà occupée par une autre image précédemment stockée ?
0
creadiff Messages postés 445 Date d'inscription samedi 3 avril 2010 Statut Membre Dernière intervention 3 novembre 2011 57
19 avril 2010 à 00:41
Et surtout, comment retrouver l'image en question ? Base de données ? Si tel est le cas, mieux vaut utiliser un auto_increment sur l'identifiant de l'utilisateur, et donner à l'image le nom de l'identifiant généré.
0
Bon alors a la place d'un rand j'utilise un uniqid() comme sa pas de problème.

Sinon je peu utiliser unlink() il y aura pas de problème ?
0
creadiff Messages postés 445 Date d'inscription samedi 3 avril 2010 Statut Membre Dernière intervention 3 novembre 2011 57
19 avril 2010 à 01:23
Oui, pas de risque tant que le nom du fichier n'est pas une donnée envoyée par le client !
0