1.1、自己描述一下sql注入原理
SQL注入指web应用程序对用户输入数据的合法性没有判断,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。
1.2、注入分为那几类
1.数字型注入
2.字符型注入
3.搜索型注入: select * from 表名 where 字段名 like '%对应值%' or 1=1;
4.xx型注入 : select * from 表名 where 字段=('xx') or 1=1;
1.3、注入提交方式
get 提交
pos提交
cookie提交
1.4、注入攻击类型
1.union注入、
2.insert/update注入、
3.delete注入、
4.http header注入
先在pikachu平台打开Http Header注入模块,点击提示查看登录帐号和密码,登陆后去BurpSuite中找到登陆地GET请求,把请求发送到Repeater模块中。在进行注入。
image.png
5.盲注:
盲注,即在SQL注入过程中,SQL语句执行选择后,选择的数据不能回显到前端,我们需要使用一些特殊的方法进行判断或尝试,这个过程称为盲注
(1)布尔盲注
在命令行输入语句select ascii(substr(database(),1,1))>xx;通过对比ascii码的长度,判断出数据库表名的第一个字符。
注:substr()函数
substr(string,start,length)
string(必需)规定要返回其中一部分的字符串。start(必需)规定在字符串的何处开始。length(可选)规定被返回字符串的长度。
(2)时间盲注
如果猜测真确,那么就会响应延迟几秒,如果错误会立刻返回错误。输入命令
**
vince' and if(substr(database(),1,1)='p',sleep(10),null)#**
(3)报错盲注
6.cookie注入
i