#SQL注入#
解决方案
1. 解决SQL注入漏洞的关键是对所有来自用户输入的数据进行严格检查、对数据库配置使用最小权限原则
2. 所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。
3. 对进入数据库的特殊字符('<>&*;等)进行转义处理,或编码转换。
4. 确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。
5. 数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。
6. 网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。
7. 严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。
8. 避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。
9. 在网站发布之前建议使用一些专业的SQL注入检测工具进行检测,及时修补这些SQL注入漏洞
#SQL注入#
转:
漏洞描述:
1、SQL注入攻击就是攻击者通过欺骗数据库服务器执行非授权的任意查询过程。
2、SQL注入攻击就其本质而言,它利用的工具是SQL的语法,针对的是应用程序开发者在编程过程中的漏洞,当攻击者能够操作数据,向应用程序中插入一些SQL语句时,SQL注入攻击就发生了。实际上,SQL注入攻击是攻击者通过在应用程序中预先定义好的查询语句结尾加上额外的SQL语句元素,欺骗数据库服务器执行非授权的任意查询。SQL注入漏洞是目前互联网最常见也是影响非常广泛的漏洞。
漏洞危害:
1、网页被篡改。
2、数据被篡改。
3、核心数据被窃取。
4、数据库所在服务器被攻击变成傀儡主机。
修复方案:
建议过滤用户输入的数据,切记用户的所有输入都要认为是不安全的。