| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> web buuctf [CISCN2019 华北赛区 Day2 Web1]Hack World1 -> 正文阅读 |
|
[网络协议]web buuctf [CISCN2019 华北赛区 Day2 Web1]Hack World1 |
考点:盲注(布尔注入);异或的使用 1.输入1' 提示的是bool(错误),这里没有报错回显,只提示错误,其实就可以判断出是个布尔注入 2. 输入1' or '1=1'# 存在过滤,用bp抓包,fuzz进行爆破,看过滤了什么字符; (看回显,长度为482的都会提示sql注入,即被过滤的字符)这只能确定一部分,在实际操作中因为字符链接,字符本身都会产生新的过滤,注意一下 or的连接语句,空格等 3.根据提示 即从表flag的flag列内提取内容,根据前面的操作可知存在布尔注入,我简单说一下布尔注入,细致的可以百度关于布尔注入的讲解: 布尔注入本身就是判断对错进行猜测的注入形式,当你的注入语句与表的数据一致使就会提示正确,否则就会提示错误,这样就存在了猜测遍历的注入,包括二分法等,都是为了遍历优化的算法 4.判断正确的回显,因为是布尔注入非0即1,先尝试在输入框分别输0和1 分别输入0和1, 0: 1:? 1的话应该就是正确的回显,0的话是错误的回显 进行验证: if((ascii(substr((select(flag)from(flag)),1,1))=102),1,0) 可以把if语句里最后的0,1,替换进行验证判断正确和错误的回显 5.因为要遍历,那么我们开始写脚本
? flag{ec9278fb-1ac8-4bec-b07f-5a66b9 有可能是buuctf服务器设置的反爬,没事,我们把前面的i的范围在改成35,继续跑,跑出来剩下的 9800e0},两个合在一起就是flag{ec9278fb-1ac8-4bec-b07f-5a66b99800e0} ? ? ? |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 5:40:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |