Ai-je besoin d'une protection contre les injections SQL pour les listes déroulantes ?
Bien que la sagesse traditionnelle déconseille de faire aveuglément confiance aux entrées des utilisateurs en raison des risques d'injection SQL, il est naturel se demander si cela s'applique également aux listes déroulantes. Après tout, les listes déroulantes présentent un ensemble limité d'options prédéfinies aux utilisateurs.
Cependant, la présence d'une liste déroulante n'élimine pas le besoin d'une protection contre les injections SQL. Considérez ce qui suit :
Manipulation de la console du développeur
À l'aide de la console du développeur Firefox, il est possible de manipuler le code HTML pour transformer une option de liste déroulante en une instruction d'injection SQL (comme démontré dans l'image ci-dessous).
[Image : console de développement Firefox affichant une valeur déroulante modifiée pour devenir une DROP TABLE déclaration]
Requêtes HTTP personnalisées
Même si le comportement de la liste déroulante est restreint sur la page, les utilisateurs avancés peuvent simplement désactiver ces restrictions ou utiliser des outils comme curl pour créer des requêtes HTTP personnalisées qui imitent les soumissions de formulaires. La commande curl suivante montre comment soumettre une injection SQL même en utilisant une liste déroulante :
curl --data "size=%27%29%3B%20DROP%20TABLE%20*%3B%20--" http://www.example.com/profile/save
Conclusion
La clé à retenir est qu'il ne faut jamais faire confiance aux entrées de l'utilisateur. est crucial. Implémentez toujours la protection contre les injections SQL quelle que soit la méthode de saisie, qu'il s'agisse de formulaires, de listes déroulantes ou de toute autre source. N'oubliez pas :
En suivant cette règle, vous pouvez sauvegarder votre base de données et prévenir les attaques malveillantes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!