ZsAdmin(智数)PHP2Shell 核心级漏洞安全审计报告

张先生
张先生 主理虹翼巡游 执序官者社群翘楚勋望元宿
社区管理
红包 官方公告 153 浏览 164 回复

文档编号:ZSSEC-2026-AUDIT-PHP2SHELL
审计对象:ZsAdmin 智数开源框架业务代码
底层框架:ThinkPHP v8.1.4
审计范围:app/、plugins/、public/排除目录:vendor/ 第三方依赖源码
审计方式:危险函数溯源、数据流追踪、权限入口复核、WebShell 特征匹配
审计目标:核查未授权、越权场景下 RCE、命令执行、文件上传写马、LFI、SQL 写马、反序列化等 Getshell 核心漏洞
审计日期:2026-10-22
风险定级结论:🔵 核心高危漏洞:无

一、审计结论

✅ 未发现可直接利用的 PHP2Shell(RCE)核心漏洞
全量业务代码审计完成,不存在可被外部攻击者未授权或越权触发命令执行、代码执行,实现 Getshell 的高危攻击链路。框架对于高危执行函数、用户输入数据流做了有效的隔离与转义处理。

二、审计项明细

表格

审计项目状态详细说明
命令执行类函数(system /exec/shell_exec /passthru/proc_open /popen)✅ 安全危险函数仅在 shortvideo、community、backup、musicparse 插件内使用;外部输入参数统一 escapeshellarg 转义;proc_open 使用数组传参模式规避 shell 注入;ffmpeg/ffprobe 程序路径来自内置固定候选列表,不受用户输入控制
代码执行类函数(eval /assert/create_function)✅ 无业务调用项目自研代码不存在调用;eval 仅存在于 ThinkPHP 模板引擎底层渲染逻辑,属于框架原生机制,外部用户输入无法可控流入
文件上传 Getshell✅ 安全上传逻辑统一封装 UploadService;存储文件名采用文件内容哈希,不使用客户端原始文件名;全部上传入口配置扩展名白名单校验;public/storage / public/uploads 目录不存在写入 PHP 脚本的入口
路径穿越 LFI / 任意文件读写删✅ 安全PluginAsset 静态资源接口对 name、ext 做严格字符白名单过滤;文件删除控制器依赖数据库 ID 校验,参数经过 intval 强类型转换,无法目录穿越
SQL 注入 INTO OUTFILE 写马✅ 安全原生 SQL 中用户可控参数全部使用参数绑定,whereRaw 采用占位符传参,不存在直接拼接用户输入,无法利用 INTO OUTFILE 写入 WebShell
反序列化漏洞✅ 安全unserialize 仅框架模板缓存内部使用,序列化数据由服务端自主生成缓存,外部用户不可控
动态调用 / 动态实例化✅ 安全new $class 动态实例化类名取自已安装插件元数据表,不直接接收 HTTP 请求输入
框架安全基线✅ 安全ThinkPHP v8.1.4,路由白名单模式,不存在 TP5、TP6 系列历史知名 RCE 漏洞面
WebShell 后门特征扫描✅ 无未检出 eval (\(_POST)、base64_decode(\)_*)、危险函数直接接收超全局变量等后门特征代码

三、次要风险清单(⚠️ 非 RCE 高危漏洞,不支持 Getshell,建议迭代优化)

风险等级:🟡 低风险 / 代码健壮性优化项
  1. 部分插件配置页面无操作审计日志,敏感配置变更缺少追溯记录
  2. 调试模式开启时异常报错详情会暴露服务器路径,生产环境强制关闭 app_debug=true
  3. 插件市场远程下载插件包仅做 MD5 校验,缺少 RSA 非对称签名验签,存在被劫持替换插件包风险
  4. 后台管理员密码重置接口,验证码错误次数限制、有效期策略宽松,存在暴力尝试风险
  5. Nginx 静态资源跨域 CORS 配置未限制可信域名范围
  6. 任务备份生成的备份文件访问链接仅依靠随机文件名,缺少访问鉴权机制

四、安全建议

  1. 生产环境固化配置,严格关闭调试模式,关闭详细异常输出;
  2. 插件生态升级增加 RSA 签名验签机制,保障远程插件包完整性;
  3. 完善后台全量敏感操作审计日志;
  4. 对备份文件、导出文件增加访问鉴权;
  5. 持续跟进 ThinkPHP 官方安全更新,及时升级补丁。

五、审计总结

ZsAdmin(智数)框架业务层针对 PHP2Shell 这条核心攻击链路防护完善,高危执行面可控,本次审计未发现可 getshell 的核心漏洞。后续安全重心放在插件生态安全、后台权限审计、配置基线管控上。


帖内红包
评论164
评论 · 164
东行
东行 初级清瑶问鼎 新站启章 · #20 ·
安全啊
风信子
风信子 超管 志愿先锋新站启章月赴朝夕 · #19 ·
感谢分享!
NinaWong
NinaWong 新手漫步繁花 · #18 ·
感谢分享!
唐凯婷
唐凯婷 初级清瑶问鼎 · #17 ·
写得很清楚,收藏了
Ivy
Ivy 初级圣羽星庭 · #16 ·
同求,期待更新
Yuki
Yuki 初级净世白羽 · #15 ·
同求,期待更新
Luna
Luna 新手暖弦漫旋 · #14 ·
写得很清楚,收藏了
郭宁
郭宁 初级 · #13 ·
学到了,顶一下
BlakeLin
BlakeLin 初级清瑶问鼎 · #12 ·
同求,期待更新
杨涛
杨涛 初级赤羽栖云 · #11 ·
同求,期待更新
Uma
Uma 新手 · #10 ·
写得很清楚,收藏了
韩琳博
韩琳博 初级清瑶问鼎 · #9 ·
学到了,顶一下
Theo
Theo 初级圣羽星庭 · #8 ·
写得很清楚,收藏了
懒懒的汽水
懒懒的汽水 初级 · #7 ·
已解决,谢谢楼主
Knox
Knox 初级漫步繁花 · #6 ·
已解决,谢谢楼主
FinnLeaf
FinnLeaf 初级赏金猎人 · #5 ·
支持了~
知夏
知夏 新手净世白羽 · #4 ·
学到了,顶一下
朱娜丽
朱娜丽 新手时梦乐园 · #3 ·
支持了~
郭平
郭平 新手赤羽栖云 · #2 ·
同求,期待更新
邓丽艳
邓丽艳 新手 · #1 ·
写得很清楚,收藏了
1 2 3 4 5 6
微信客服 微信客服 QQ官方交流群 QQ官方交流群