1、解决SQL注入漏洞的关键就是对用户输入数据进行严格检查,对数据的配置使用最小权限原则。
2、在所有的查询语句中都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是用户输入变量嵌入到SQL语句当中。
3、对进入数据的特殊字符进行转义处理,或者进行编码转换。
4、确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的储存字段必须对应int型。
5、数据库长度应该严格规定,能在一定程度上防止较长的SQL注入语句无法正确执行。
6、网站每个数据层的编码统一,建议全部使用utf-8编码,上下层编码不一致可能导致一些过滤模型被绕过。
7、严格限制数据库的操作权限,给用户提供仅仅能满足其工作权限,从而最大限度的减少注入攻击对数据的危害。
8.避免网站显示SQL数据信息,比如类型错误,字段不匹配等,防止攻击者利用这些错误信息进行一些判断。