WEB:file_include

背景知识

php伪协议

文件包含漏洞

php包含漏洞函数

题目

由题目可知这个是文件包含的题目,先用常用的协议先查看一下

payload

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

出现了

发现filter,base64被过滤了

尝试其他协议

根据filter的绕过方法,可以使用iconv过滤器进行,这个过滤器需要 php 支持 iconv,而 iconv 是默认编译的。使用convert.iconv.*过滤器等同于用iconv()函数处理所有的流数据。

convery.iconv.*的使用有两种方法:

复制代码
convert.iconv.<input-encoding>.<output-encoding> 
convert.iconv.<input-encoding>/<output-encoding>

eg.convert.iconv.UCS-4*.UCS-4BE ---> 将指定的文件从UCS-4*转换为UCS-4BE 输出

这里并不清楚input-encoding和out-encoding具体是什么,可以简单猜想一下尝试,然后用bp抓包进行爆破

先设置尝试的payload

复制代码
?filename=php://filter/convert.iconv.UTF-8*.UCS-4LE*/resource=flag.php

设置目标

iconv支持的字符集有

复制代码
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*

得到flag

参考学习链接:

【愚公系列】2023年05月 攻防世界-Web(file_include)-腾讯云开发者社区-腾讯云

攻防世界-泰山杯-简单的文件包含 -- ZZ的IT部落

相关推荐
卓豪终端管理3 分钟前
【无标题】
java·服务器·前端
修炼的dance8 分钟前
一条命令查清 WebM 有没有透明通道,默认解码会骗你
前端
小灰灰搞电子11 分钟前
Rust+Slint 实现动态流光边框源码分享
开发语言·前端·rust·流光边框
niucloud-admin17 分钟前
NIUCLOUD PHP SAAS上门家政使用文档:机构报表
前端·人工智能
枣把儿37 分钟前
开源!全套公众号写作、封面、发布自动化工具包!
前端·命令行
陶醉的松鼠40 分钟前
前端容易忽略的 debugger 调试技巧
前端
我命由我1234541 分钟前
6-3.Python 异常处理 - 异常处理进阶(else 块与 finally 块、异常传递、自定义异常)
开发语言·前端·数据库·后端·python·学习·java-ee
龙九山1 小时前
我的 10 个 npm 插件,差点被 AI 判了死刑
前端·开源
deli0071 小时前
键盘按键测试:按下就点亮,keydown 延迟精确到 1 毫秒
前端
Amos_Web1 小时前
通过 Rspack 源码学 Rust(三):用 Default 与 std::mem::take 取出字段所有权
前端