点击tips

查看元素,也并没有有用的信息,联想到题目,include

想起了文件包含漏洞。

构造payload

?file=/../../../../../../flag.php

没有返回东西。看完wq学到了一个新姿势:

php伪代码

构造payload

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

得到base64加密后的flag.php文件,丢去解密得到flag。

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

【file://协议】

PHP.ini:

file:// 协议在双off的情况下也可以正常使用;

allow_url_fopen :off/on

allow_url_include:off/on

file:// 用于访问本地文件系统,在CTF中通常用来读取本地文件的且不受allow_url_fopen与allow_url_include的影响

使用方法:

file:// [文件的绝对路径和文件名]

http://127.0.0.1/cmd.php?file=file://D:/soft/phpStudy/WWW/phpcode.txt

【php://协议】

条件:

不需要开启allow_url_fopen,仅php://input、 php://stdin、 php://memory 和 php://temp 需要开启allow_url_include。

php:// 访问各个输入/输出流(I/O streams),在CTF中经常使用的是php://filter和php://input,php://filter用于读取源码,php://input用于执行php代码。

php://filter 读取源代码并进行base64编码输出,不然会直接当做php代码执行就看不到源代码内容了。

PHP.ini:

php://filter在双off的情况下也可以正常使用;

allow_url_fopen :off/on

allow_url_include:off/on

测试现象:

http://127.0.0.1/cmd.php?file=php://filter/read=convert.base64-encode/resource=./cmd.php

测试现象:

http://127.0.0.1/cmd.php?file=php://input

[POST DATA] <?php phpinfo()?>

标签:php,file,url,filter,漏洞,allow,include

来源: https://www.cnblogs.com/cmredkulaa/p/14008645.html

文件源码读取 php伪协议,include(文件包含漏洞,php伪协议)相关推荐

  1. vs code vue 语法提示不全_Vue造轮子必备*.vue文件源码读取并高亮展示

    相关依赖版本: node v10.15.0 npm v6.4.1 yarn v1.22.10 vue-cli v4.5.9 @vue/compiler v3.0.4 GitHub:  vue-sour ...

  2. 【PHP伪协议】源码读取、文件读写、任意php命令执行

    目录 一.简介 1.1.概述: 1.2.12个php支持的伪协议 1.3.前提: 二.示例 2.1.file:// 前提: 用法: 2.2.php:// 协议 前提: php://input php: ...

  3. include详解 shell_详解php文件包含原理(读取文件源码、图片马、各种协议、远程getshell等) ......

    详解php文件包含原理(读取文件源码.图片马.各种协议.远程getshell等) 作者是namezz (看完图相当于做了一轮实验系列) 现有文件代码如下 include和include_once.re ...

  4. php读取图片文件流,详解php文件包含原理(读取文件源码、图片马、各种协议、远程getshell等)...

    详解php文件包含原理(读取文件源码.图片马.各种协议.远程getshell等) 作者是namezz (看完图相当于做了一轮实验系列) 现有文件代码如下 1.png (21.16 KB, 下载次数: ...

  5. php并发取源码,PHP读取大文件源码示例-Swoole多进程读取大文件

    PHP读取大文件源码示例,通过PHP读取过大.超大型文件的思路及解决方案. 在日常读取文件时,若文件 不是很大,通常使用file_get_contents,将内容一次性载入的变量中,也可以远程加载网页 ...

  6. lfi读取php,php LFI读php文件源码以及直接post webshell

    php LFI读php文件源码以及间接post 网站shell 假如如下一个场景 (1) http://vulnerable/fileincl/example1.php?page=intro.php( ...

  7. WebRTC源码研究(4)web服务器工作原理和常用协议基础

    文章目录 WebRTC源码研究(4)web服务器工作原理和常用协议基础 前言 做WebRTC 开发为啥要懂服务器开发知识 1. Web 服务器简介 2. Web 服务器的类型 3. Web 服务器的工 ...

  8. C#技巧【调用线程无法访问此对象,因为另一个线程拥有该对象的问题的解决办法】【C#读写EXCEL源码提示“office检测到此文件存在一个问题。为帮助保护您的计算机,不能打开此文件”的解决】

    SYD8801是一款低功耗高性能蓝牙低功耗SOC,集成了高性能2.4GHz射频收发机.32位ARM Cortex-M0处理器.128kB Flash存储器.以及丰富的数字接口.SYD8801片上集成了 ...

  9. Hhadoop-2.7.0中HDFS写文件源码分析(二):客户端实现(1)

    一.综述 HDFS写文件是整个Hadoop中最为复杂的流程之一,它涉及到HDFS中NameNode.DataNode.DFSClient等众多角色的分工与合作. 首先上一段代码,客户端是如何写文件的: ...

最新文章

  1. 22个案例详解Pandas数据分析/预处理时的实用技巧,超简单
  2. 突发!贝壳董事长左晖因疾病意外去世
  3. 最新ZeuS僵尸网络敲响网银安全警钟
  4. 安装firefox 3.6.4 (ubuntu 10.04)
  5. mybatis转义符(亲测)
  6. 如何导出maven子项目_如何使用maven 轻松重构项目
  7. 使用Maven管理Eclipse Java项目(多modules编译)
  8. as3调用外部swf里的类的方法
  9. 微服务面试必问的Dubbo,这么详细还怕自己找不到工作?
  10. Oracle MySQL社区版与Oracle MySQL企业版特征对比
  11. 计算机一级2016版本ms,2016计算机等级一级《MS Office》试题与答案
  12. 条码生成 SDK - Zint 教程及示例
  13. Linux 在 M1 上跑起来了
  14. 不可描述⁄( ⁄•⁄ω⁄•⁄ )⁄!亚马逊用机器学习找有声书中情色片段
  15. VS2005向前向后定位图标
  16. 火影忍者里的忍术日文发音
  17. 处理BigDecimal字段, java.math.BigDecimal cannot be cast to [Ljava.lang.Object;
  18. 小米 2021 秋招面试总结
  19. 模电1.1 半导体基础知识
  20. 魔兽修改默认服务器,魔兽怎么设置默认服务器

热门文章

  1. mysql linux改密码忘记了怎么办_linux上mysql改密码忘了怎么办?
  2. 福师计算机在线作业一2,福师《计算机》在线作业二答案.doc
  3. android 贝塞尔曲线_OpenGL 实践之贝塞尔曲线绘制
  4. lvs工作在第几层_LVS 原理(调度算法、四种模式、四层负载均衡和七层 的区别)...
  5. pcl使用通道滤波器来滤波
  6. 按钮点击没有反应_时控开关按键没反应怎么办?
  7. python动态爬取知乎_python爬虫从小白到高手 Day2 动态页面的爬取
  8. java 采集 cms_开源 java CMS - FreeCMS2.3 Web页面信息采集
  9. 通通玩blend美工(8)——动态绘制路径动画,画出个萌妹子~
  10. 感谢Thunder团队