SQL注入

sql注入

Web应用程序没有仔细的过滤用户输入的数据,攻击者构建恶意的sql语句插入到web应用程序之中,通过执行正常的sql语句而执行攻击者所要执行的语句,进而入侵服务系统。

 

Sql注入的方式可以分成两种

一、平台层注入:不安全的数据库配置和数据库漏洞所致

二、代码层注入:web应用程序未对用户输入的非法数据进行仔细的过滤

 

Sql注入防护

  1. 永远不信任用户的输入:对用户输入的数据进行校验,正则表达式、限制长度、对单引号和双引号进行转换
  2. 永远不使用动态拼接sql,使用参数化的sql、直接使用存储过程进行数据数据查询存取
  3. 不使用管理权限的数据库连接,为每个应用使用单独权限的数据库连接
  4. 不把机密信息直接存放:加密或hash掉密码和敏感的信息
  5. 对应用的异常信息应该给出尽可能少的提示,如必要,使用自定义的错误提示
posted @ 2018-12-03 15:00  小草csm  阅读(72)  评论(0)    收藏  举报