BUUCTFweb部分题解

前一段时间没有发现比较基础的的平台去做题,直到上个星期我发现了一个比较基础的平台供我刷题,所以就继续更新wp了。废话不多说现在开始写题解。

题目名称

  • [SUCTF 2019]EasySQL
  • [ACTF2020 新生赛]Include
  • [极客大挑战 2019]Secret File
  • [极客大挑战 2019]EasySQL
  • 写在最后

[SUCTF 2019]EasySQL

先进入题目BUUCTFweb部分题解_第1张图片
因为题目的名称已经提示是SQL注入了,所以我们先进行尝试1’ or 1 = 1;#
BUUCTFweb部分题解_第2张图片
提交发现
BUUCTFweb部分题解_第3张图片
我当时的第一反应是布尔盲注所以我尝试了一下判断数据库的名称构造如下的payload

1' or (ascii(substr(database(),1,1))>32);#

进行注入
BUUCTFweb部分题解_第4张图片
无事发生。
那我们尝试一下堆叠注入,我们逐个进行尝试,最后我们发现只有两个可以用

show tables
show databases

BUUCTFweb部分题解_第5张图片
BUUCTFweb部分题解_第6张图片
BUUCTFweb部分题解_第7张图片
在这里插入图片描述
到这一步我的思路就基本没了,以为我理解的注入语句其实就这么多,所以万事不会问大佬,我就去查看别人的wp发现这是个通过前端的注入的情况分析出后端的的代码语句进行的解题。

$sql = "select ".$post['query']."||flag from Flag"

这个怎么猜的我也不清楚,可能这就是大佬吧。下面我们按照知道了源码进行解题,我们的思路就是把中间的||去除,让他执行后面的的操作,所以存在两种方式让他把操作忽略,第一种通过构造*,1语句就变成了

select *,1 from Flag

根据sql的语法可知select 1其实就是将查询到的东西新建一列单独放置跟select * 作用相似,这样我们便得出Flag表中的所有信息。
第二种是通过设置将||的含义转变为连接字符。语句就是下面的

1;set sql_mode=PIPES_AS_CONCAT;select 1

在oracle 缺省支持 通过 ‘ || ’ 来实现字符串拼接。
但在mysql 缺省不支持。需要调整mysql 的sql_mode
模式:pipes_as_concat 来实现oracle 的一些功能。
这样就解决了。

[ACTF2020 新生赛]Include

BUUCTFweb部分题解_第8张图片
一样打开页面,发现可以点击,点击进入。
BUUCTFweb部分题解_第9张图片
我们观察URL发现是个很显然的文件包含漏洞,但是我们这个本来就是flag.php我们已经包含过了,没有出现flag,我们猜测这个我呢见应该是在flag.php的源码中。查看源码根据我们前几天所总结的文件包含漏洞的利用方法我们想到64编码再查看源代码,所以我们抱着试一试的态度进入。payload如下

?file=php://filter/read=convert.base64-encode/resource=flag.php

在这里插入图片描述
在这里插入图片描述

[极客大挑战 2019]Secret File

这个是我认为这几题最好玩的一题,等我学成我也要做一个类似的。进入题目。
BUUCTFweb部分题解_第10张图片
网页一片空白,所以我们查看源代码。
BUUCTFweb部分题解_第11张图片
发现有个链接藏在这里,点击进入。
BUUCTFweb部分题解_第12张图片
有个按钮点击。
BUUCTFweb部分题解_第13张图片
这。。我刚开始来回点击好几次,并且看了看网页的源代码,发现没有用。这时我想到,只要不让数据包发过去,就可以达到做够慢。下面请出神器。
BUUCTFweb部分题解_第14张图片
发现有个php的名称进入。
BUUCTFweb部分题解_第15张图片
就是一个简单的代码审计,因为没有过滤file的文件查看的协议,我们直接64位编码查看
BUUCTFweb部分题解_第16张图片
现在的直接解码
BUUCTFweb部分题解_第17张图片
其实到这flag就出来了,不过我好奇网址的内容是啥,我就把源代码创建了一个网页打开。
BUUCTFweb部分题解_第18张图片
这个我是直接查看源代码,终于发现了
BUUCTFweb部分题解_第19张图片
秘密是他想要个女朋友。瞬间破攻防,单身狗的无奈。

[极客大挑战 2019]EasySQL

进入题目
BUUCTFweb部分题解_第20张图片
题目提示SQL注入,所以很容易想到万能密码。我们去百度查找万能密码如下。直接引用别人的博客里面还有关于CTF中的SQL注入lgin页面的解决方法,直接阅读即可。这里输入用户名admin直接用万能密码登录BUUCTFweb部分题解_第21张图片
直接登录得FLAG,基本没难度。

写在最后

这几题总的来说都没有难度,我这种水平都能做出来,只是简单的入门,所以我先立个FLAG,争取下一年开学,能够做出正规比赛得几道题,自己也要努力。

你可能感兴趣的:(BUUCTFweb部分题解)