• php://filter协议在任意文件读取漏洞(附例题)


    php://filter

    php://fiter 中文叫 元器封装,咱也不知道为什么这么翻译,目前我的理解是可以通过这个玩意对上面提到的php IO流进行处理,及现在可以对php的 IO流进行一定操作。

    过滤器:及通过php://filter 对php 的IO流进行的具体操作

                  格式为:php://filter / [read|write =] 过滤器 / resource= 目标文件 
            解释:对目标文件的IO流的输出流(read)或输入流(write)进行 过滤器的操作处理 

    过滤器的分类

    1. string filter(字符过滤器)
    2. string.rot13 (对字符串执行 ROT13 转换)
    3. 例:php://filter/string.rot13/resource=flag.php
    4. string.toupper (转大写)
    5. 例:php://filter/string.toupper/resource=flag.php
    6. string.tolower (转小写)
    7. string.strip_tags (去除 HTML 和 PHP 标记,尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果)
    8. 例:php://filter/string.strip_tags/resource=flag.php
    9. conversion filter (转换过滤器)
    10. convert.base64-encode & convert.base64-decode (base64加密 base64解密)
    11. 例:php://filter/convert.base64-encode/resource=flag.php
    12. convert.quoted-printable-encode & convert.quoted-printable-decode(在字符串后加=0A,及恢复)
    13. compression filter(压缩过滤)
    14. zlib.deflate & zlib.inflate(压缩 解压)
    15. 例:php://filter/zlib.deflate/resource=flag.php
    16. php://filter/zlib.inflate/resource=flag.php
    17. bzip2.compress & bzip2.decompress(zip 压缩 解压)
    18. encryption filter(加密过滤器)

    题目:[SWPUCTF 2021 新生赛]include

    打开题目,发现传一个file,发现flag在flag.php中

    因为allow_url_include 状态为on,可知php伪协议,用filter读取flag.php里面的信息

    /?file=php://filter/read=convert.base64-encode/resource=flag.php

    发现是一段编码,base64解密

    得到答案!

  • 相关阅读:
    多线程06:条件变量
    阿里云RDS关系型数据库详细介绍_多版本数据库说明
    自制操作系统日记(6):静态桌面初步
    iOS17适配指南-新版
    JVM类加载机制、双亲委派和SPI机制
    Excel-VBA 快速上手(十一、字符串常用操作)
    [RoarCTF 2019]Easy Calc
    机械工程基础笔记整理
    Redis缓存穿透,背八股文 居然没用!!!
    构造函数和析构函数的顺序问题
  • 原文地址:https://blog.csdn.net/lkbzhj/article/details/132700682