这篇文章为一个导航文章,用于记录关于SQL注入的学习过程。学习SQL注入,最好的实验环境就是sqli-lab,因此也是以这个环境来进行学习。
一、sqli-lab介绍和安装
1、sqli-lab
Sqli-labs是一个印度程序员写的,用来学习sql注入的一个游戏教程。主要包括的内容有:
- 基于错误的注入(Union Select)
- 基于误差的注入(双查询注入)
- 盲注入(01、基于Boolian数据类型注入, 02、基于时间注入)
- 更新查询注入(update )
- 插入查询注入(insert )
- Header头部注入(01、基于Referer注入, 02、基于UserAgent注入,03、基于cookie注入)
- 二阶注入,也可叫二次注入
- 绕过WAF
- 绕过addslashes()函数
- 绕过mysql_real_escape_string()函数(在特殊条件下)
- 堆叠注入(堆查询注入)
- 二级通道提取
上网搜索的,有待验证
安装好以后大概是这样的:
Page-1(Basic Challenges)
Page-2(Adv Injections)
Page-3(Stacked Injections)
Page-4(Challenge)
2、sqli-labs下载和安装
sqli-labs下载和安装链接:https://www.cnblogs.com/tangjf10/p/12582896.html
二、Page-1(Basic Challenges)
1、less1~4
通过学习和操作发现这四个思路差不多,都是带有回显的注入。主要介绍了字符、整型、单引号括号、双引号括号这几种注入方式,并且可以使用union联合注入来利用漏洞获得敏感信息。具体的操作如下:
less1:字符型注入和UNION联合查询注入演示
less2:整型注入演示
less3:单引号括号')的字符型注入演示
less4:双引号括号")的字符型注入演示