Prévention des injections SQL : échappement de caractères pour une sécurité maximale
La prévention des injections SQL est cruciale pour protéger les bases de données contre les attaques malveillantes. Lors de l'utilisation de la fonction mysql_real_escape_string(), les caractères , n, r, \, ', " et Z sont échappés pour empêcher les tentatives d'injection.
Cependant, la bibliothèque de sécurité ESAPI d'OWASP.org inclut des caractères supplémentaires pour l'échappement, y compris b (retour arrière) et t (tabulation). La question se pose : pourquoi ces caractères sont-ils inclus et sont-ils vraiment nécessaires ?
Caractères de tabulation et de retour arrière dans la prévention des évasions
L'inclusion des caractères b et t dans le mécanisme d'échappement ESAPI est probablement liée à la possibilité de tentatives d'injection utilisant ces caractères. Considérons le scénario suivant :Un attaquant envoie un e-mail contenant un fichier texte en pièce jointe avec ce qui suit. requête :INSERT INTO students VALUES ("Bobby Tables",12,"abc",3.6);
DROP TABLE students;\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b
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!