文章目录
bugku
web5
web8
得到这一段源码后,代码审计。由于底子不牢,审了个寂寞。去查后才知道。_REQUEST是超全局变量,可以往里面存一些乱七八糟的东西。eval是输出的意思。
整段代码的意思是包含了一个flag.php文件,我们需要得到一个hello赋值为a,然后再输出a的内含的各种东西。
所以只需要给hello赋值为flag.php即可
出flag
web9
首先得知,flag在变量里
代码审计
包含了一个flag1.php文件,然后get到一个变量arg,然后搜索==/^\w+$/==这些符号。如果有直接报错。这个时候就需要我们使用什么东西代替这些东西
看了wp后发现是这样的
我不知道为啥,然后百度一手
意思就是,这个变量中包含了所有的变量。刚好开头就提示了变量,着直接打印出来所有变量应该就会有flag了
web11
这一关需要应御剑扫描·
第一次写需要御剑的题,就记录一下。
然后登录shell页面
用burp爆破即可
密码是hack,这取决于你字典的长度。
web12
这道题费了我老鼻子劲了,因为我burp没有伪造ip的插件,我又去各种下
插件名字叫fackip,自行下载安装。也可以用X-Forwarded-For方法
在查看源码的时候,发现了base64
解密后是
不是密码就是用户名。虽然我知道这个,但是还是不出所料地卡在了这里。问题就在于这道题的IP伪造
本地管理员,试试127.0.0.1,出flag
web 13
查看源码
一看就是url编码
经过它提示的方式解码·得到下图
可以看到,一个返回1,一个返回0,一个是levelQuest,全都试试,得到flag
web14
这是一道文件包含和php伪协议的题
可以看到?file=show.php,典型的文件包含
这个时候就需要利用伪协议来看根目录的一些文件
用filetr为协议
构造payload
http://114.67.246.176:11192/index.php?file=php://filter/read=convert.base64-encode/resource=index.php
得到一串base64解码
得到flag。
吐个槽,bugku解个题需要四个金币,解完题得到俩金币,wnm,抢呢?
buu
极客大挑战 2019]Secret File
又是一个文件包含和伪协议的题
首先是个这个页面
看了源码,扫了后台,啥都没有
然后用·burp抓包
我以为问题会出在这里,结果没有。
然后我就卡这里了
看了wp才知道,在F12
这警告我们要细心
然后有后缀了
点击
、
emmm,抓包
发现了这个
得到一点源码,过滤了一些input data等伪协议
但是没有过滤fileter
刚好使用fileter转换base64
<html>
<title>secret</title>
<meta charset="UTF-8">
<?php
highlight_file(__FILE__);
error_reporting(0);
$file=$_GET['file'];
if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){
echo "Oh no!";
exit();
}
include($file);
//flag放在了flag.php里
?>
</html>
构造payload
secr3t.php?file=php://filter/convert.base64-encode/resource=flag.php
然后base64解码
[GXYCTF2019]Ping Ping Ping
这是一道关于RCE的题,有关的知识,我会再出一篇内容的。
最开始的页面入上图
没有地方更改输入的地方,就盲猜是不是get或者是post,
是post个屁
get型
先查看根目录所含的文件。
把空格给过滤了。
<
<>
%20(space)
%09(tab)
$IFS$9
${IFS}
$IFS
$IFS$1
这些都能替换空格
查看flag.php
报错
猜测要么过滤了cat 要么过滤了flag
没本事绕过去了,我没思路了,看了wp
说是先看index.php的
我不明白,明明$IFS没有报错,但是为什么查看index.php的时候,只能用 $IFS$1
查看代码
可以知道过滤了空格,bash,flag,等东西
然后大佬就变量覆盖a了
(变量覆盖又是一个小知识点)
我觉得是因为有print_r
构建payload
说实话,我没理解
回头再问问
?ip=1;a=g;cat$IFS$1fla$a.php;
这一题还有更多的解法
带佬博客内敛绕过和base64编码绕过,我觉得都应该学一下。还有变量覆盖。
内敛绕过
payload
?ip=127.0.0.1;cat$IFS$1`ls`
内敛执行绕过
``将反引号内命令的输出作为输入执行 ls将ls出来的文件作为输入 cat ls
总结
文件包含和php伪协议和RCE漏洞,我也只学了点皮毛,真的是,应该系统的学习一下,但是文件包含的时候报错是真的烦
努力吧!!
冲冲冲!!!