Exploitation de faille par menu déroulant ?

Fermé
palouse Messages postés 1 Date d'inscription mercredi 20 août 2008 Statut Membre Dernière intervention 20 août 2008 - 20 août 2008 à 12:48
macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 - 20 août 2008 à 14:06
Bonjour,

Je suis propriétaire d'un site de simulation d'élevage d'animaux multi player de masse (en humble amateur), et je rencontre actuellement un petit soucis. Récemment, certains de mes membres ont vu leur animal changer de numéro ID (numéro d'identification en auto-increment attribué à la création de l'animal et immuable par la suite) pour devenir ID 0, et leur énergie être utilisée comme si elle l'était par le propriétaire.
Or :
- A chaque action, il y a un INSERT dans ma table historique pour identifier le joueur, l'animal et l'action faite. Or là, rien n'a été inséré.
- Je fonctionne beaucoup par menu déroulant, sélectionnant uniquement l'animal dont le joueur est propriétaire. Me reposant là dessus, j'ai à tord négligé de mettre les vérification d'usage.

Je vous écrit donc aujourd'hui pour savoir, de deux choses l'une :
Est-ce possible de "forcer" un menu déroulant, par exemple d'y inclure le nom d'un animal qui ne nous appartient pas (vu qu'il n'y avait pas de vérification de faite à ce niveau), ce qui pourrait expliquer le ID 0 ? Ou est-ce que le problème est ailleurs ?

Si c'est bien un soucis de menu déroulant, est-ce que de simples vérification par des IF et des redirections pourraient régler le problème ?
A voir également:

1 réponse

macgawel Messages postés 664 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 1 novembre 2008 89
20 août 2008 à 14:06
Bonjour.

Difficile de trouver d'où vient le problème sans le code - ou au moins le site. Mais bon...

Le problème n'est pas, en soi, le menu déroulant.
Le problème doit plutôt résider dans les contrôles que tu fais à réception des commandes.

Il est relativement simple de modifier le comportement d'une page pour envoyer - dans ton cas - le nom de l'animal que l'on veut.

Principe de base de la programmation Web : Il y aura toujours un utilsateur malveillant, donc il faut toujours vérifier, du côté serveur, que les données que l'on reçoit correspondent à ce qu'on attend.
1