结构化查询语言(SQL)是一种用来和数据库交互的文本语言。SQL Injection就是利用某些数据库外部接口将用户数据插入到实际的数据库操作语言(SQL)当中,从而达到入侵数据库乃至操作系统的目的。它的产生主要是由于程序对用户输入的数据没有进行严格的过滤,导致非法数据库查询语句的执行。
SQL注入(SQL Injection)攻击具有很大的危害,攻击者可以利用它读取、修改或者删除数据库内的数据,获取数据库中的用户名和密码等敏感信息,甚至可以获得数据库管理员的权限,而且,SQL注入很难防范。网站管理员无法通过无法通过安装系统补丁或者进行简单的安全配置进行自我保护,一般的防火墙无法拦截SQL Ijection攻击。