首页 > 其他分享 >XCTF-file_include

XCTF-file_include

时间:2023-11-29 11:13:38浏览次数:42  
标签:convert php UTF iconv filter file UCS include XCTF

根据题目描述应该是一个文件包含的题目,访问主页面

需要传入filename的参数,尝试使用php://filter协议读取check.php文件的内容

?filename=php://filter/read/=convert.base64-encode/resource=check.php


经过一些测试,得到过滤了php://filter/readbase64,这里无法使用php://filter/read协议了
我又测试了data://协议和php://input协议,都没有成功,在网上查找资料

因为php://filter协议可以使用,在网上查找到了convert.quoted-printable-encode这个方法也可以读取
尝试后发现quoted这个单词也被过滤了,但是还有下方还有另一个方法

  • convert.iconv.*方法:格式位:convert.iconv.<input-encoding>.<output-encoding>或者convert.iconv.<input-encoding>/<output-encoding>

其中input-encodingoutput-encoding有很多编码,详细可以看探索php伪协议以及死亡绕过

因为我们中文常用的方式是utf-8,所以input-encoding选择UTF-8*,然后output-encoding随便选择一个,浏览器显示正常解析即可
我测试了这几个可以正常解析:UCS-4*UCS-4LE*UCS-2UCS-2LEUTF-32*UTF-32LE*UTF-16*可以正常解析,还有很多可以自己尝试

传入payload

?filename=php://filter/convert.iconv.UTF-8*.UCS-4LE*/resource=check.php


可以看到check.php过滤的内容,/base|be|encode|print|zlib|quoted|write|rot13|read|string/i,不过已经不重要的

该题目没有提示flag文件的位置,尝试包含常见的flag.php

?filename=php://filter/convert.iconv.UTF-8*.UTF-16*/resource=flag.php

成功得到flag

标签:convert,php,UTF,iconv,filter,file,UCS,include,XCTF
From: https://www.cnblogs.com/Junglezt/p/17864127.html

相关文章

  • java 打包后jmeter使用Invalid signature file digest for Manifest main attributes
    ideal编写代码后,打包了一个jar是连关联的第三方jar一起打的用到jmeter后置处理器中报错:InvalidsignaturefiledigestforManifestmainattributes解决方案1:(手动删除文件) 通过压缩软件查看程序生成的jar包,可以看到META文件下有.SF,.DSA结尾的文件,手动删除后,再查看该......
  • 【mybatis <sql>,<include>标签】
    @[TOC]<sql>标签<sql>标签用于定义可重用的SQL片段,可以在多个地方引用。避免重复编写相同的SQL片段。示例:假设有一个SQL语句用于查询用户表中特定条件下的数据:<sqlid="userColumns">id,username,email</sql>在另一个地方,可以引用这个SQL片段:<selectid="selectU......
  • Dockerfile使用
    什么是Dockerfile?Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。命令注意:Dockerfile的指令每执行一次都会在docker上新建一层。所以过多无意义的层,会造成镜像膨胀过大。可以放在一起的命令尽量放在一起。FROMFROMnginx#FRO......
  • 使用Python中的tarfile :解决Mac和Linux 打包冲突问题
    Python对tar包的操作目的:兼容linux和macOS系统上都能正常打包和解包起初:在macOS上使用命令tar打得包在linux上根本无法解开。原因:https://blog.csdn.net/qq_44214671/article/details/127804905解决办法:python是兼容MacOS和Linux,直接用Python的tarfile操作tar包。https://do......
  • 【?】Web_XCTF_WriteUp | simple_php
    题目提示:小宁听说php是最好的语言,于是她简单学习之后写了几行php代码。题目:分析读代码:<?php//php脚本的开始部分show_source(__FILE__);//对当前文件进行php语法高亮显示include("config.php");//引用config.php文件$a=@$_GET['a'];//......
  • SQL Server Profiler基础使用
     一、简介一个图形界面工具,用于创建和管理跟踪并分析和重播跟踪结果 二、如何打开1、直接打开 2、MicrosoftSQLServerManagementStudio工具栏打开  三、配置跟踪如过滤出本机电脑执行的sql脚本 跟踪属性常规配置   找计算机名称  ......
  • Caddy设置try_files导致handle配置失效
    问题在Caddy中,请求路径默认会在Caddy的路径中查找。然而,如果是Vue项目,URI通常会是路由,如果此时刷新页面就可能导致页面出错。因此,我们可以使用try_files来在页面找不到时重定向到index.html。try_files{path}/index.html;然而,加入这种配置会导致handle的监听路径冲突,从......
  • Why I see scss file in my chrome inspector?
    WhyIseescssfileinmychromeinspector?BecausetherearemapfilesinyourCSSfolderlike*.css.mapand*.scss.map.Itbasicallyreversemapstheglobal.csswhichisbeingusedbythebrowsertotheconstituent.scssfiles.Theyaretherebecause......
  • XCTF-ics-05
    访问页面,似曾相识的页面,查看源代码,搜索php,找到index.php,访问index.php看不出什么,继续访问index.php的源代码获取到有用信息page=index的传参这应该是一个文件包含,尝试使用data://协议进行命令执行?page=data://text/plain,<?phpphpinfo();?>没有任何回显,可能是过滤了,接着......
  • Uboot顶层Makefile解析-1. defconfig过程分析
    1版本号TopMakefile的开头会有版本描述,VERSION是主版本号,PATCHLEVEL是补丁版本号,SUBLEVEL是次版本号,这三个一起构成了uboot的版本号,比如当前的uboot版本号就是“2016.03”。EXTRAVERSION是附加版本信息,NAME是和名字有关的,一般不使用这两个。2MAKEFLAGS有两个特......