同事说不要在js文件中拼接sql,说是为了防止注入,实在没想通

比如下图
image.png

这样做的坏处是什么?如何会造成注入的可能???

阅读 2.8k
3 个回答

在后端拼接sql都有可能造成注入漏洞,一般来说比如你的class_id参数,如果攻击者传一个字符串,包含一个分号结束sql语句,然后在分号后面可以加入攻击者喜欢的sql语句来操作你的数据库表。

当然,有些sql不那么容易注入攻击,但最好不要拼接sql语句,用参数化sql语句和占位符来代替。

拼个 “1 OR 1=1”,条件始终满足,是不是就被拖库了?

拼个 “; DELETE FROM users;”,是不是数据就被删了?

如果sql中有来自外部的输入,就很容易发生sql注入的情况
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题