Web_php_include(strstr与str_replace函数)

13 篇文章 0 订阅
10 篇文章 0 订阅

<?php
show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
    $page=str_replace("php://", "", $page);#查找php://,null替换查找的值,并且规定搜索$page
}
include($page);
?>

strstr函数

strstr(str1,str2) 函数,判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回null。

str_replace函数

str_replace() 函数使用一个字符串替换字符串中的另一些字符。

语法:str_replace(find,replace,string,count)

 $page=str_replace("php://", "", $page);#查找php://,null替换查找的值,并且规定搜索$page 

参数描述
find必需。规定要查找的值。
replace必需。规定替换 find 中的值的值。
string必需。规定被搜索的字符串。
count可选。一个变量,对替换数进行计数。

 


这题过滤了php://,在这里我们得先了解一下什么是php://,以及php提供的各种杂项输入输出流

php://(访问各个输入/输出流),提供了IO流允许访问 PHP 的输入输出流、标准输入输出和错误描述符,内存中、磁盘备份的临时文件流以及可以操作其他读取写入文件资源的过滤器。如php://stdin、php://stdout 和 php://stderr 允许直接访问 PHP 进程相应的输入或者输出流。如php://input、php://output,php://input是一个可以访问请求的原始数据的只读流,构造payload

这里存在一个远程文件包含漏洞,虽然过滤了php,但使用大小写进行绕过

输入PHP://input,来写代码获取内容

cat fl4gisisish3r3.php

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值