web php include攻防世界php安全示例详解 步骤 打开所给的实验环境,发现给出代码,分析代码可知是文件包含漏洞: 其中含有两个参数: hello参数中的内容会被输出到页面 page参数中的内容则会被进行文件包含,但是会对php://进行过滤 两个函数: strstr(stri
步骤
打开所给的实验环境,发现给出代码,分析代码可知是文件包含漏洞:
其中含有两个参数:
- 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代码:
得到三个文件,发现通过浏览器打不开:
使用cat命令来查看:
查看第一个文件发现flag!
知识点
本题考查了php文件包含漏洞以及OS 命令注入
以上就是web php include攻防世界解决示例的详细内容,更多关于web php include攻防世界的资料请关注我们其它相关文章!
本文标题为:web php include攻防世界php安全示例详解
基础教程推荐
- PHP中的错误及其处理机制 2023-06-04
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- php array分组,PHP中array数组的分组排序 2022-08-01
- 使用PHP开发留言板功能 2023-03-13
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP命名空间简单用法示例 2022-12-01
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08