JeuWeb - Crée ton jeu par navigateur
[Résolu] Faille Formulaire - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Faille Formulaire (/showthread.php?tid=3991)

Pages : 1 2


[Résolu] Faille Formulaire - Arduinna - 20-05-2009

Bonsoir,

J'ai un soucis avec des valeurs dans un formulaire, je vais essayer d'expliquer le plus clairement possible mon problème :

- Le joueur veut faire un combat contre un autre joueur, ils s'attaquent tour par tour et à la fin il y a un bouton "Retour" qui renvois les données du combat dans un formulaire, ce formulaire est ensuite traité et les données sont envoyés à la BDD, le problème c'est que cette après midi, quelqu'un m'as informé de la possibilité de modifié les valeurs du formulaire à l'aide d'une extension Firefox nommée "Tamper Data" ( il y en a surement d'autre qui font la même chose )

Donc j'aimerai savoir comment faire pour que ce logiciel ne soit plus utilisable, j'entends par là l'utilisation de sécurité empêchant la modification des valeurs du formulaire.

Schéma rapide du script :

- Choix d'une attaque
- Modification d'une valeur avec javascript
- Modification des gains en fonction de l'attaque portée
- Envois du formulaire
- Enregistrement dans la BDD


Le gros problème c'est que par exemple si le "pirate" change la valeur du gains ça lui permet de gagner ce qu'il a inscrit avec l'extension au lieu de gagner ce qu'il aurait vraiment du avoir.


Merci


RE: Faille Formulaire - Allwise - 21-05-2009

Il sera toujours possible de modifier les infos de tes formulaires. Ce que tu dois faire, c'est vérifier côté serveur, si les données reçues sont valides. Tu vérifies si le joueur peut jouer, le max qu'il peut gagner, s'il peut envoyer l'attaque... Et une fois que tout ça est vérifié et validé, alors tu insères les infos dans ta BDD.


RE: Faille Formulaire - Arduinna - 21-05-2009

Donc en fait je continue avec mon formulaire mais entre le moment ou le joueur clique sur "Valider" et le moment ou j'entre les données dans la base de donnée je fait un peu comme une "simulation" du combat et je regarde si chaque valeurs de mon formulaire est possible par rapport au joueurs ?

C'est vrai qu'en inscrivant ce message je me rend compte que j'aurais du y penser plus tôt, ça devrait être faisable et ça m'éviterai pas mal de soucis :p


RE: Faille Formulaire - Argorate - 21-05-2009

Effectivement, règle d'or pour ce qui est de la sécurité : tout controler coté serveur, pour pas avoir de mauvaise surprise! Wink

EDIT: C'est toi le serveur! c'est toi qui pocede les données, a toi de les vérifier!

C'est comme si une banque se fié seulement au client pour un retrait d'argent sans verifier dans ses données si le montant n'est pas au dessus du solde du compte...


RE: Faille Formulaire - Arduinna - 21-05-2009

C'est vrai que le jour où ma banque fera ça je serais le premier au distributeur lol

Bon bin je te remercie, sur ce bonne nuit Wink


RE: Faille Formulaire - rorchar - 21-05-2009

Salut Argorate alors tu vas peut être rigoler mais figure toi qu'à lorient c'est arrivé les gens demandé 20E et la machine leur en sortait 40E ainsi le CMB de lorient a perdu 10000E en une demi-heure!!! BOn c'est une défaillance et un sacrée coup de chance!!
PS: désolé ça n'a pas de rapport avec la demande!!
A++


RE: Faille Formulaire - Arduinna - 21-05-2009

Oui j'ai vu ça aux informations c'était y a quelques jours, moi je pense que du coup pour éviter le favoritisme il devrait faire la même chose à tout les distributeurs de France pendant quelques heures =D


RE: Faille Formulaire - Argorate - 21-05-2009

Pour info, j'ai aussi vu ça sur TF1: La banque a le tracé numérique de quel compte a retiré combien; Celle-ci a repris tout le surplus d'argent que le distributeur a donné Wink


RE: Faille Formulaire - Arduinna - 21-05-2009

Ah bon, ça je ne l'ai pas entendu, il me semblait plutôt qu'ils n'avaient pas le droit de faire ça. Dans ce cas ... tampis :hahahaha:


RE: Faille Formulaire - Arduinna - 22-05-2009

Pour en revenir à mon sujet il y a quand même quelque chose qui m'intrigue ... ( je viens de me réveiller rien qu'a cause de ça )

J'explique Wink :

- Lors du combat le joueur choisit tel ou tel attaque, il y a des éléments pour les attaques, les grands classiques feu,eau,terre,vent.
Si un joueur utilise son attaque de feu et l'adversaire son attaque d'eau alors l'attaque feu fera moins de dégâts ( logique oui oui (h) )

- Donc une fois que le combat est fini et que le joueur valide les résultats, toujours avec mes données passant par un formulaire, j'ai changer mon script pour qu'il y ai une vérification au niveau des sorts du joueur pour connaitre la puissance minimum et la puissance maximum de son attaque et ensuite c'est avec cela que je calcul l'expérience gagné et l'argent gagné grâce au combat.
Dans la théorie cette fois les utilisateurs de logiciels tel que celui cité dans mon premier message ne pourront pas mettre n'importe quoi mais pourrait toujours dire qu'ils ont fait des attaques maximum à chaque attaque ce qui leur permettrait de toujours gagner le combat et donc de monter plus rapidement que les joueurs n'utilisant pas ce genre de logiciels.

Donc certes maintenant il ne peut plus mettre 100000000 dans expérience gagné mais il peut toujours mettre un chiffre compris entre son attaque minimum et son attaque maximum ... :pleure2: