Échapper des chaînes sans connectivité à la base de données
Question :
Comment puis-je échapper des chaînes avec précision sans établir une connexion à une base de données ? J'ai besoin de cette fonctionnalité à des fins de tests secs pour éviter les vulnérabilités d'injection SQL.
Réponse :
Malheureusement, il n'est pas possible d'échapper des chaînes en toute sécurité sans se connecter à une base de données. mysql_real_escape_string() et les instructions préparées s'appuient sur une connexion à une base de données pour adapter le mécanisme d'échappement au jeu de caractères spécifique de la base de données cible. Négliger cette connexion expose votre application à des attaques par injection SQL, en particulier celles impliquant des caractères multi-octets.
Considérations relatives aux tests :
Si votre objectif principal est de tester, vous pouvez recourir vers mysql_escape_string(). Bien qu’il ne soit pas infaillible contre les attaques par injection SQL, il reste une option viable en raison du manque d’alternatives plus sécurisées sans connexion à une base de données. Cependant, il est fortement déconseillé d'utiliser mysql_escape_string() dans des environnements de production.
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!