• 文件包含是Web攻击中利用率比较高的一个漏洞。

  • 普通文件包含,包含函数获取变量。

  • 截断本地文件包含:

    • %00(0字节截断),php<5.3,magic_quote_gpc=off 才有效。
    • 长文件名截断。
      • Windows:260
      • Linux:4096
      • Windows在文件名后加/. 或 .都是可以的。
    • 查询符伪截断。
  • 远程文件包含

    • allow_url_include=On;allow_url_fopen=On开启。(php.ini)

    • 利用伪协议(data:// 或者 php://input 可以在 allow_url_include 关闭的情况下包含自定义数据 php<5.0

    • php://filter 利用主要是利用了 resource 和 vonvert,这样可以读取到 php 的代码。

      1
      
      readfile("php://filter/convert.base64-encode/resource=test.txt");