Lorsque vous testez du code qui interagit avec des bases de données, il est important d'empêcher les attaques par injection SQL en échappant correctement aux entrées de l'utilisateur. Cependant, se connecter à une base de données pour chaque test peut s’avérer inefficace. Existe-t-il un moyen d'échapper des chaînes sans connexion à une base de données active ?
Malheureusement, il est impossible d'échapper de manière fiable des chaînes sans connexion à la base de données. mysql_real_escape_string() et les instructions préparées reposent sur la connaissance de la base de données du jeu de caractères utilisé. Sans ces informations, il est possible de créer des séquences de caractères multi-octets qui contournent les mécanismes d'échappement et conduisent à des vulnérabilités d'injection SQL.
Si votre objectif est uniquement de tester, vous pouvez pensez à utiliser mysql_escape_string() pour sa rapidité et sa simplicité. Bien qu’il ne soit pas entièrement sécurisé, il est peu probable qu’il soit exploité dans un environnement de test. Cependant, notez que cela n'est pas recommandé pour le code de production.
Bien qu'il soit tentant de trouver un moyen d'échapper des chaînes sans connexion à une base de données, cela n'est en réalité pas réalisable. La seule façon de garantir l'intégrité des données est d'utiliser des techniques d'échappement appropriées en conjonction avec une connexion à une base de données.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3