SQL 注入攻击

78 篇文章 0 订阅
23 篇文章 0 订阅

如何防止 SQL 注入攻击

SQL 注入:就是通过把 SQL 命令插入到 Web 表单递交或输入域名或页面请求的查询字符
串,最终达到欺骗服务器执行恶意的 SQL 命令。具体来说,它是利用现有应用程序,将(恶
意)的 SQL 命令注入到后台数据库引擎执行的能力,它可以通过在 Web 表单中输入(恶
意)SQL 语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行 SQL
语句。
防止的方法:
(1) 永远不要信任用户的输入,要对用户的输入进行校验,可以通过正则表达式,
或限制长度,对单引号和双"-"进行转换等。

(2) 永远不要使用动态拼装 SQL,可以使用参数化的 SQL 或者直接使用存储过程
进行数据查询存取。

(3) 永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数
据库连接。
(4) 不要把机密信息明文存放,请加密或者 hash 掉密码和敏感的信息。
(5) 应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始
错误信息进行包装,把异常信息存放在独立的表中。

如何防止 SQL 注入攻击

利用新对象 PreparedStatement 对象完成,先将 SQL 骨架发送给数据库服务器,然后再
将参数单独发给服务器,并将参数中的关键字当做一个普通字符串来处理,进而起到防止
SQL 注入的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值