web php include攻防世界php安全示例详解

web php include攻防世界php安全示例详解_第1张图片

步骤

打开所给的实验环境,发现给出代码,分析代码可知是文件包含漏洞:

web php include攻防世界php安全示例详解_第2张图片

其中含有两个参数:

  • hello参数中的内容会被输出到页面
  • page参数中的内容则会被进行文件包含,但是会对php://进行过滤

两个函数:

strstr(string,search[,before_search]):strstr() 函数搜索字符串(search)在另一字符串(string)中是否存在,如果是,返回该字符串及剩余部分,否则返回 FALSE。区分大小写,stristr()函数不区分大小写。
string:必需。规定被搜索的字符串。
search:必需。规定要搜索的字符串。如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符。
before_search:可选。一个默认值为 “false” 的布尔值。如果设置为 “true”,它将返回 search 参数第一次出现之前的字符串部分。

str_replace(find,replace,string,count):这个函数是用来替换字符串的
find:要查的字符串。
string:原始字符串

绕过方式:

  • 使用大小写绕过的方式:PhP://

这里我们使用伪协议phP://input

  • php://input是个可以访问请求的原始数据的只读流。可以读取post提交的数据

我们在post提交的内容中写入命令执行(反引号)的php代码:

web php include攻防世界php安全示例详解_第3张图片

得到三个文件,发现通过浏览器打不开:

web php include攻防世界php安全示例详解_第4张图片

使用cat命令来查看:

web php include攻防世界php安全示例详解_第5张图片

查看第一个文件发现flag!

知识点

本题考查了php文件包含漏洞以及OS 命令注入

以上就是web php include攻防世界解决示例的详细内容,更多关于web php include攻防世界的资料请关注脚本之家其它相关文章!

你可能感兴趣的:(web php include攻防世界php安全示例详解)