点可云进销存V6开源版安全处理通告点可云技术团队针对进销存V6开源版本存在的安全漏洞已完成修复方案的验证与封装请所有V6开源版用户尽快按照本文指引完成升级。尊敬的点可云用户点可云技术团队近期针对进销存V6开源版本开展了全面的安全加固工作对系统中存在的多项安全隐患进行了排查与修复。本次处理涉及权限控制、文件路径校验及数据查询安全三个方面的加固措施。现将具体处理方案通告如下请所有V6开源版用户尽快按照本文指引完成修复确保系统安全稳定运行。一、处理事项概述序号处理事项风险等级涉及接口处理方式1用户创建/更新权限控制高危set_user强制移除客户端 type 参数2备份恢复路径安全校验高危备份恢复加入文件名危险字符正则过滤3统计接口SQL安全加固高危cal_summary加入数据表名白名单校验二、处理方案详情事项一用户创建/更新权限控制问题说明用户创建或更新接口set_user在处理type 参数时未对其进行严格校验存在权限控制不当的风险。处理方案在 User.php第 45 行处插入以下代码在创建用户时强制移除 type 参数确保用户类型始终由服务端逻辑决定unset($input[type]);处理效果客户端无法再通过请求参数操控用户类型从根源上消除越权风险。事项二备份恢复路径安全校验问题说明备份恢复功能在拼接文件路径时未对用户输入的文件名进行充分过滤存在路径遍历风险。处理方案在 extend/org/baksql.php第 46 行处加入文件名合法性验证拦截包含路径分隔符及危险字符的请求if (preg_match(/(\.\.)|(\\)|(\/)|(:)|(\*)|(\?)|()|(\)|()|()|(\|)/, $input[name])) {return [state error, info 非法请求];}处理效果正则表达式对文件名中的 .. 、/ 、\ 、: 、* 、? 、 、\ 、 、 、| 等危险字符进行严格检测一旦命中即拒绝请求彻底封堵路径遍历攻击面。事项三统计接口SQL安全加固问题说明统计汇总接口cal_summary在拼接数据表名时未对传入的form 参数进行白名单校验存在SQL拼接风险。处理方案在 Service.php第 990-1006 行cal_summary 函数内加入表名白名单校验$table [purchase, rpurchase, repurchase,sale, resale,cashier, recashier,exchange, allocation,otpurchase, otsale];if (!in_array($input[form], $table)) {return [state error, info 匹配表名];}处理效果采用白名单机制仅允许已知的合法业务表名通过校验任何不在白名单内的 form 值都将被直接拒绝从根本上阻断SQL拼接风险。三、安全加固建议V6 用户除应用上述三项处理方案外我们强烈建议所有 V6 开源版用户执行以下安全加固措施1. 数据库权限最小化— 避免使用 root 账户运行应用数据库创建专用账户并仅授予对业务库的 SELECT/INSERT/UPDATE/DELETE 权限切勿授予 FILE 权限。2. Web 目录权限收敛— 确保备份目录、上传目录等敏感路径对 Web 进程仅开放最小读写权限禁止执行权限。3. 定期安全审计— 建议定期对系统进行安全扫描与代码审计及时发现并处置潜在风险。4. 及时更新— 持续关注点可云官方发布的安全通告第一时间应用安全补丁。