首页
Portal
业界资讯
社区
BBS
我的家园
Space
个人空间
导读
Guide
登录
/
注册
用户名
Email
自动登录
找回密码
密码
登录
注册
搜索
搜索
本版
帖子
用户
本版
帖子
用户
帖子
好友
道具
勋章
收藏
任务
淘帖
门户
导读
设置
我的收藏
退出
腾讯QQ
微信登录
首页
›
≡≡网络技术≡≡
›
PHP语言
›
Veno-File-Manager (VFM4)云盘让游客只可查看公共文件夹 ...
返回列表
CMS
Veno-File-Manager (VFM4)云盘让游客只可查看公共文件夹的方法
[ 复制链接 ]
灰儿
2022-8-31 17:58:14
Veno-File-Manager (VFM V4.07)云盘让游客只可查看公共文件夹的方法
存在漏洞:
极简云盘 Veno-File-Manager (VFM) 3.75-V4.07 版本,如果游客开启了“查看文件”权限,即使关闭了“查看文件夹”功能,游客不仅能看到根目录下的所有文件,通过在URL地址栏中手工添加“?dir=uploads/子文件夹名称”参数也可以看到子文件夹里内容,包括用户私有文件夹的内容,造成游客的权限过大,起不到保护用户私有文件的目的。
解决思路:
修改未登录用户,即游客的防问权限,只能访问公共目录(public_dirs)里的内容,不权限也无权访问用户私有文件夹。
解决方法:
1.新增一个公共目录(public_dirs)数组配置
打开 根目录/vfm-admin/config-master.php 文件,新添一个 'public_dirs'数组配置参数,代码如下:
'public_dirs' =>
array (
0 => 'public',
1 => 'temp',
),
复制代码
2.修改class.gatekeeper.php文件
打开 主目录/vfm-admin/class/class.gatekeeper.php文件,查找 getUserInfo($info) 函数,大概在257行左右,代码如下:
/**
* Get user info ('name', 'role', 'dir', 'email')
*
* @param int $info index of corresponding user info
*
* @return info requested
*/
public function getUserInfo($info)
{
if ($this->isUserLoggedIn()
&& isset($_SESSION['vfm_user_name'])
&& strlen($_SESSION['vfm_user_name']) > 0
) {
$username = $_SESSION['vfm_user_name'];
$curruser = $this->getCurrentUser($username);
if (isset($curruser[$info]) && strlen($curruser[$info]) > 0) {
return $curruser[$info];
}
}
return null;
}
复制代码
在此类内对象方法 getUserInfo($info) 函数中添加未登录用户(游客)可访问公共目录(public_dirs)内容,修改后代码如下:
/**
* Get user info ('name', 'role', 'dir', 'email')
*
* @param int $info index of corresponding user info
*
* @return info requested
*/
public function getUserInfo($info)
{
global $setUp;
if ($this->isUserLoggedIn()
&& isset($_SESSION['vfm_user_name'])
&& strlen($_SESSION['vfm_user_name']) > 0
) {
$username = $_SESSION['vfm_user_name'];
$curruser = $this->getCurrentUser($username);
if (isset($curruser[$info]) && strlen($curruser[$info]) > 0) {
return $curruser[$info];
}
}
//游客可访问公共目录(public_dirs)内容
else {
$public_dirs = $setUp->getConfig('public_dirs');
$public_dirs = '["' . join('","', array_values($public_dirs) ) . '"]';
return $public_dirs;
}
return null;
}
复制代码
注:
用此方法修改后,存在一个问题,游客只能查看和公共目录下的文件,不显示“分享”按钮。
解决方法如下:
http://www.admin365.cn/thread-46413-1-1.html
Veno-File-Manager (VFM4)云盘游客文件分享按钮不显示解决办法
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
回复
(2)
灰儿
楼主
2022-8-31 18:18:30
http://www.admin365.cn/thread-45934-1-1.html
Veno-File-Manager (VFM3)云盘游客可查看所有文件漏洞解决方法
回复
支持
反对
使用道具
举报
显身卡
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
回复
本版积分规则
回帖后跳转到最后一页
灰儿
管理员
9840篇
主题总数
7
总热度
提问
+关注
产品动态
2024-05-14
泛微E10(e-cology)文件存储位置与打开方式
2024-05-14
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
2024-05-13
关于webapp与WEB-INF的记录
2024-05-13
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热点推荐
1
泛微E10(e-cology)文件存储位置与打开方式
2
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
3
关于webapp与WEB-INF的记录
4
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
5
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
6
核心路由器十项性能指标
7
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
8
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
产品动态
2024-05-14
泛微E10(e-cology)文件存储位置与打开方式
2024-05-14
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
2024-05-13
关于webapp与WEB-INF的记录
2024-05-13
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热点推荐
1
泛微E10(e-cology)文件存储位置与打开方式
2
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
3
关于webapp与WEB-INF的记录
4
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
5
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
6
核心路由器十项性能指标
7
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
8
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。