CTF/CTF练习平台-flag在index里【php //filter的利用】

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

原题内容:

http://120.24.86.145:8005/post/


Mark一下这道题,前前后后弄了两个多小时,翻了一下别的博主的wp感觉还是讲的太粗了,这里总结下自己的理解:


首先打开这道题,页面只给你click me? no

点击进去显示test5


第一步,查看源代码,无果

第二步bp,无果

结合到题目,flag在index里,大胆尝试http://120.24.86.145:8005/post/index.php,可惜和之前一样

注意到了传值为http://120.24.86.145:8005/post/index.php?file=show.php

file这个变量应该是关键,可惜无果


参考到别的博主的wp:

file传值为

php://filter/read=convert.base64-encode/resource=index.php


结果如下:

CTF/CTF练习平台-flag在index里【php //filter的利用】_第1张图片

base64解密下就得到flag了


可能很多人到这里并不太理解,这里我做具体解释:
首先来解释下这段代码的意思:

即以base64加密的方式读取resource的内容


然后我们来看一下php://filter的限制

要求将传进来的参数进入include();在这题即是$file //这里就打乱了我的胡思乱想,哈哈哈,还以为所有题目都可以呢

这点要求在后来拿到的题目源码中也可确认:

    Bugku-ctf     error_reporting(0); if(!$_GET[file]){echo 'click me? no';} $file=$_GET['file']; if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){  echo "Oh no!";  exit(); } include($file); //flag:flag{edulcni_elif_lacol_si_siht}?>


下面演示通过php://filter读取本包含漏洞脚本的源码

CTF/CTF练习平台-flag在index里【php //filter的利用】_第2张图片

接下来只要将base64编码后的字符串通过base64解码就可得到PHP文件的源码了

CTF/CTF练习平台-flag在index里【php //filter的利用】_第3张图片

看到一个大佬的博客讲的特别棒,我已转载至我的博客,大家可以前去一看

谈一谈php://filter的妙用



参考原文

http://blog.csdn.net/qq_35078631/article/details/69488266

http://www.freebuf.com/articles/web/14097.html










           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

CTF/CTF练习平台-flag在index里【php //filter的利用】_第4张图片

你可能感兴趣的:(CTF/CTF练习平台-flag在index里【php //filter的利用】)