我正在学习mysql,它涉及的主题之一是处理用户输入时的安全问题 - 一个问题是注入攻击。我试图复制本书演示的攻击,如添加查询$query = "select * from temp_table; drop table temp_table
,我使用了mysqli_query($connection,$query)
。什么都没发生。我改为使用mysqli_multi_query()
并发现它执行了两个语句。最后我发现mysqli_query
每次只运行一个查询。SQL注入攻击 - 使用mysqli_multi_query()
我的问题是,如果我用mysqli_query
,从理论上讲,系统不应该担心额外的语句注入攻击吗?或者,即使服务器正在使用mysqli_query
,用户仍然可以运行其他任何方式?
感谢您的帮助和建议!
“系统不应该担心额外的语句注入攻击?” ---这是正确的。这就是关于“小桌子”的漫画是乌托邦式的原因。 – zerkms
请阅读此答案:http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php –
非常感谢你! :) – ming