以前对注入没有太注意
但后来网站给黑了一次,全部的数据都没用了所以现在下面是我对防注入的方法
大家看 这样做还有什么办法可以注入到1:不进行如sql="Select * from tab where name ='"+name+"'" //这种方法
全都改为传参sql="Select * from tab where name =@name" //这种方法
2: 过滤关键字
value="declare|exec|varchar|cursor|drop|creat|and|insert|select|delete|update|count|midmaster|truncate|'"
这是网上的方法,但因为这里的单词都是常用的,过滤是很不实际的,
那么就会替换的方法将上面的关键字全都做如下操作
如:Delete用正则替换为D-e-l-e-t-e
在数据库里面读取出来就用正则将D-e-l-e-t-e替换为Delete以上是我对数据库注入的解决方案
请大家提提意见 并说一下你的想法谢谢
但后来网站给黑了一次,全部的数据都没用了所以现在下面是我对防注入的方法
大家看 这样做还有什么办法可以注入到1:不进行如sql="Select * from tab where name ='"+name+"'" //这种方法
全都改为传参sql="Select * from tab where name =@name" //这种方法
2: 过滤关键字
value="declare|exec|varchar|cursor|drop|creat|and|insert|select|delete|update|count|midmaster|truncate|'"
这是网上的方法,但因为这里的单词都是常用的,过滤是很不实际的,
那么就会替换的方法将上面的关键字全都做如下操作
如:Delete用正则替换为D-e-l-e-t-e
在数据库里面读取出来就用正则将D-e-l-e-t-e替换为Delete以上是我对数据库注入的解决方案
请大家提提意见 并说一下你的想法谢谢
2.如果字符类型的参数,过滤单引号为两个单引号,使无法进行注入语句的构造,就成了~~其它的,还有什么能注?INSERT,UPDATE不存在注入点。