1.什么是sql注入呢?
所谓 SQL注入就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令
2.SQL注入攻击原理。
SQL注入是目前比较常见的针对数据库的一种攻击方式。在这种攻击方式中,攻击者会将一些恶意代码插入到字符串中。然后会通过各种手段将该字符串传递到SQLServer数据库的实例中进行分析和执行。只要这个恶意代码符合SQL语句的规则,则在代码编译与执行的时候,就不会被系统所发现
3.sql注入的攻击方式。
一是直接将代码插入到与SQL命令串联在一起并使得其以执行的用户输入变量。由于其直接与SQL语句捆绑,故也被称为直接注入式攻击法。
二是一种间接的攻击方法,它将恶意代码注入要在表中存储或者作为原书据存储的字符串。在存储的字符串中会连接到一个动态的SQL命令中,以执行一些恶意的SQL代码。
4.sql注入的分类
个人所知:(union联合注入)(报错注入)(布尔盲注)(时间盲注)(宽字节注入)几种目前主流的注入漏洞
5.如何防范sql注入漏洞(这里只是简单的防范)。
1.表单要对用户的输入进行校验,限制字符的长度,并限制某些敏感字符的输入。
2.不要使用动态拼接sql语句,使用带参数的sql。
3.不要使用管理员权限连接数据库,可以使用一些个人创建的用户进行连接。
4数据库的异常不要出现报错信息,不然会从这些信息里获取到关键数据
5.要对重要的明文进行加密,base64,url编码等
以上就是最基础的理解,算是自己学完后的一个总结吧