最新消息:文章中包含代码时,请遵守代码高亮规范!

【原创】关于SQL注入与预防SQL注入

MySQL sherri 496浏览 0评论

SQL注入:

SQL注入主要类型有数字注入以及字符串注入。

1、数字注入:比如通过get方式传id值给后台,检索文章信息。正常的传id值可以正确的进行检索。但是如果后台没有对传过去的id值进行验证,那么黑客可以通过传类似于 id = -1 OR 1=1,这样的一段代码,使得服务器端的SQL语句不是按照我们原有的方式去执行,导致后面的where语句一直为真,从而查出了所有的文章信息。

2、字符串注入:主要出现于表单提交,比如登陆页。如果后台没有对传入的用户名和密码进行校验,则会发生SQL注入。黑客通过 ’, /, #等特殊字符,将服务器端的SQL语句关于密码验证的那段代码注释掉,从而达到绕过密码验证,直接登录该账号的效果。

 

SQL注入的预防:

对于SQL注入的预防有很多方法,比如后端对传输的数据进行验证,错误消息的处理,数据的加密,确保数据库的安全等等。

像symfony框架里面就有自带的预编译机制,即使用?这个占位符来代替要判断的字段,防止了特殊字符对SQL语句的影响。

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/23598.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者sherri的打赏,我们会更加努力!    如果您想成为作者,请点我

您必须 登录 才能发表评论!