PHP 伪协议是 PHP 支持的协议与封装协议,几个 PHP 支持的伪协议如下。 例如在 allow_url_include = on 时服务器上有个文件叫 index.php,且存在文件包含漏洞,这个时候就能用 php 伪协议直接把文件显示出来。 Copy Highlighter-hljs ?file=php://filter/read=convert.base64-encode/resource=index.php 稍微解释...
上传成功后会返回一个文件名,直接访问是没有用的,使用蚁剑进行连接。 连接之后在 html 目录下有个 flag.php,打开就能看到 flag 了。 例题:攻防世界-Web_php_include# 打开网页,看到一段 PHP 代码如下,观察到这段代码有 include() 函数,因此这题要考虑文件包含漏洞。strstr() 函数查找字符串首次出现的位置,然...
CTF-攻防世界-Web_php_include(PHP⽂件包含)题⽬ 从给出的代码来看,参数名是page,并且过滤了php协议。正好之前学过⽂件包含漏洞,看能不能学以致⽤。。。解题过程 输⼊:http://111.198.29.45:54883/index.php?page=data:text/plain,%3C?php%20phpinfo();?%3E 返回phpinfo页⾯,并找到了...
协议头(php://filter)+/read(write)=过滤器(可选)+/resource=文件名(必须) 2.2php://input协议 php://input可以访问请求的原始数据的只读流,将post请求的数据当作php代码执行。当传入的参数作为文件名打开时,可以将参数设为php://input,同时post想设置的文件内容,php执行时会将post内容当作文件内容。 其用法...
allow_url_include = on(是否允许 include/require 远程文件) allow_url_fopen = on(是否允许打开远程文件) 1. 2. 伪协议 PHP 伪协议 PHP 伪协议是 PHP 支持的协议与封装协议,几个 PHP 支持的伪协议如下。 例如在 allow_url_include = on 时服务器上有个文件叫 index....
访问HTTP(s) 网址,可以获取远程的内容,返回到本地,也可以用包含函数包含远程文件,可以直接读取远程的php文件在本地执行,RCE。注意:包含远程文件需在php.ini中将allow_url_include设置为On。 ftp:// 默认21端口,进行文件传输的协议 php:// 访问各个输入/输出流(I/O streams),在CTF中经常使用的是php://filter...
1: 程序写法为 include $_GET[file] . ‘.xxx’; 针对这一种情况,我们可以fuzz后缀到底是什么,然后再进行读源码或包含一系列操作。 2: 显然这一条路是比较离谱的,也就是说,根据题目名为phar,是否考点为phar反序列化?或者这里存在一个辅助的class.php文件,只是我们不知道class的文件名而已,但是由于这里的hint...
php://data协议是PHP中的一种特殊协议,可以在包含函数中被用来执行一些特殊的操作。它没有条件限制,但仅能用于在CTF(Capture The Flag)中读取本地文件,且不受allow_url_fopen与allow_url_include的影响。 php://input是PHP提供的一个伪协议,允许开发者访问POST请求的原始内容。它是一个只读流,可以获取POST请求...
黑名单过滤:顾名思义就是不允许上传它指定的文件后缀,如php,phtml,phps,php3/4/5/6/7这种能解析php脚本的文件后缀,这种主要看他的黑名单写的全不全,因为有很多种办法能解析php。 关键字替换双写绕过 原理:服务端对黑名单中的内容进行处理,且仅处理一次,比如说使用str_replace()函数(函数具体使用自行了解),...
include('/usr/local/lib/php/pearcmd&+config-create+/<?=phpinfo();?>+./hack.php')在BurpSuite...