前言 本文主要讲解php filter伪协议,文件包含漏洞 php://filter伪协议是PHP中独有的一种协议,它是一种过滤器,可以作为一个中间流来过滤其他的数据流。通常使用该协议来读取或者写入部分数据,且在读取和写入之前对数据进行一些过滤,例如base64编码处理、rot13处理等。ph
这里它利用了filter伪协议,该协议刚好就能够查看文件包含的漏洞,所以当我们利用该协议查看flag.php时,会将它的源代码爆出来,但是因为base64的加密原因,所以我们还需要进行一次base64解密 paylod为:?file=php://filter/convert.base64-encode/resource=flag.php 结果进行base64解码 压缩过滤器 主要有两类,zlib和bzip2...
PHP Filter 伪协议一、PHP Filter 是什么?php://filter是一种元封装器,是PHP中特有的协议流,设计用于数据流打开时的筛选过滤应用,作用是作为一个“中间流”来处理其他流。官方解释如下:php://filter 是一种元封装器,设计用于数据流打开时的筛选过滤应用。这对于一体式(all-in-one)的文件函数非常有用,类似 ...
3. 使用filter伪协议进行字符串过滤: 在URL中使用filter伪协议进行字符串过滤时,可以使用filter_var函数。例如,我们可以使用filter_var函数过滤一个字符串中的HTML标签: “`php $string = ‘ 这是一个测试字符串 ‘; $filteredString = filter_var(‘filter://’ . $string, FILTER_SANITIZE_STRING); echo $...
PHP伪协议的妙用 filter协议的简单利用 php://filter是一种元封装器, 设计用于数据流打开时的筛选过滤应用。这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、 file() 和 file_get_contents(), 在数据流内容读取之前没有机会应用其他过滤器。
filter协议的进阶利用 利用filter伪协议绕过死亡之die、死亡之exit 假设我们有以下代码: <?php 这几行代码允许我们写入文件,但是当我们写入文件的时候会在我们写的字符串前添加exit的命令。这样导致我们即使写入了一句话木马,依然是执行不了一句话的。 分析这几行代码,一共需要我们传两个参数,一个是POST请求的content...
filter协议的进阶利用: 利用filter伪协议绕过死亡之die、死亡之exit 假设我们有以下代码: <?php$content = $_POST['content'];file_put_contents($_GET['filename'], "<?php exit; ?>".$content); 这几行代码允许我们写入文件,但是当我们写入文件的时候会在我们写的字符串前添加exit的命令。这样导致我们即...
常见协议 file:// — 访问本地文件系统 php:// — 访问各个输入/输出流(I/O streams) zlib:// — 压缩流 data:// — 数据(RFC 2397) phar:// — PHP 归档 No.5 常见利用方式 php:// php://filter/read=convert.-encode/resource=index.php (常用于读取源码) ...
我们使用了data伪协议将file_get_contents()想要读取的内容变成了data伪协议输入的内容。 php://filter过滤器分类 根据php://filter官方说明,php://filter协议的过滤器大致分为以下四类: 1、字符串过滤器 2、转换过滤器 3、压缩过滤器 4、加密过滤器 ...
php:// 协议 条件: allow_url_fopen:off/on allow_url_include :仅php://input php://stdin php://memory php://temp 需要on 作用:php:// 访问各个输入/输出流(I/O streams),在CTF中经常使用的是php://filter和php://input,php://filter用于读取源码,php://input用于执行php代码。 说明:PHP 提供...