Problème de traitement d'un formulaire [RÉSOLU] - PHP - Programmation
Marsh Posté le 07-06-2019 à 17:33:51
Merci B4X pour ta réponse ! J'avais pas pensé à ça...
Je regarde ce soir pour corriger ça
Quand tu dis que mon code est vulnérable aux injections sql, comme c'est pas des input text, mais des selects (en gros le navigateur peut rien taper au clavier) c'est ok non ?
Marsh Posté le 07-06-2019 à 18:09:20
Buandflu a écrit : Quand tu dis que mon code est vulnérable aux injections sql, comme c'est pas des input text, mais des selects (en gros le navigateur peut rien taper au clavier) c'est ok non ? |
Ah ben non, ça prend 3 lignes de script pour créer une requête qui va fou... en l'air ta base de données. Il faut TOUJOURS nettoyer ses données entrantes.
edit: Même aucune ligne de code avec les outils intégrés à Firefox!
Marsh Posté le 07-06-2019 à 19:15:01
Pour faire de l'injection SQL on n'utilise pas ta page HTML, on envoie directement une requête POST à ton fichier.php, à partir de là tu écries ce que tu veux dans ta requête POST afin de réécrire la requête SQL.
Néanmoins je vais mesurer les propos apportés, normalement, ton fichier n'est accessible que sur identification puisqu'il fait parti du backoffice, ce qui doit limiter les risques. Normalement le risque est présent si tu as différents niveaux d'autorisation dans le backoffice, à ce moment là, un utilisateur avec des droits faibles pourrait outrepasser ses autorisations avec une injection SQL.
Marsh Posté le 09-06-2019 à 18:51:41
MaybeEijOrNot a écrit : Néanmoins je vais mesurer les propos apportés, normalement, ton fichier n'est accessible que sur identification puisqu'il fait parti du backoffice, ce qui doit limiter les risques. Normalement le risque est présent si tu as différents niveaux d'autorisation dans le backoffice, à ce moment là, un utilisateur avec des droits faibles pourrait outrepasser ses autorisations avec une injection SQL. |
Oui il faut bien sûr être connecté pour arriver sur delete.php.
Marsh Posté le 09-06-2019 à 18:52:42
ReplyMarsh Posté le 09-06-2019 à 19:59:50
Buandflu a écrit : |
Comme google lilo est mon ami, du coup j'ai mis des prepare statement (je sais pas comment on dit en Français). Ça donne ça :
Code :
|
Ça marche bien. Vous voyez d'autre trucs pour éviter les injections les plus communes ?
Marsh Posté le 10-06-2019 à 11:40:55
Pas fou ça ! Merci B4X
J'ai une question qui me vient à l'esprit concernant les injections. Quelque chose comme ça est-il sûr ?
$stmt = $pdo->query("requête sql" )
J'arrive pas à trouver de réponse claire sur google lilo...
Marsh Posté le 10-06-2019 à 14:03:18
Une injection SQL n'est possible que quand on passe une variable non "nettoyée" dans une rêquete SQL. Si tu passes par le PDO normalement c'est bon, idem si tu fais une rêquete sans paramètres. Sans garantie, je ne parle pas PHP ni SQL.
Marsh Posté le 07-06-2019 à 11:46:46
Bonjour !
Je suis en train de devenir fou avec mon site... J'essaye de supprimer des éléments dans ma base de données depuis un backoffice que je suis en train de coder.
Voici mon html :
Voici mon php :
Quelque chose ne tourne pas rond, mais je n'arrive pas à voir quoi. Le code peut supprimer seulement une animation. Le reste il n'y arrive pas...
Est-ce que quelqu'un pourrait me dépanner ?
Un grand merci d'avance !
Message édité par Buandflu le 10-06-2019 à 11:48:30
---------------