Nova-Tiptap任意文件上传漏洞CVE-2025-54082
marshmallow-packages/nova-tiptap是Laravel Nova框架的一个富文本编辑器字段插件,基于Tiptap开发,插件支持Laravel Nova 5.x版本。
一、基本情况
marshmallow-packages/nova-tiptap提供基础的富文本编辑功能,支持加粗、斜体等基础格式化操作,适用于Laravel Nova资源管理界面。
栋科技漏洞库关注到在marshmallow-packages/Nova-tiptap Laravel Nova包的安全漏洞,漏洞已追踪为CVE-2025-54082,CVSS评分8.1。
二、漏洞分析
CVE-2025-54082漏洞是在marshmallow-packages/nova-tiptap Laravel Nova包中发现的漏洞,是一个具有未经验证的任意文件上传漏洞。
具体而言,该漏洞存在于富文本编辑器marshmallow-packages/nova-tiptap Laravel Nova包的5.7.0版本之前,该漏洞的危险系数相对较高。
该漏洞允许未经认证的用户能够将任意文件上传到应用程序中配置的任何Laravel磁盘,而导致该漏洞存在的原因有如下三种:
- /nova-tiptap/api/file 上传端点缺少认证中间件(Nova和Nova.Auth),其位于/nova-tip tap/API/文件上传端点上;
- 缺乏对上传文件的验证(没有MIME/类型或扩展名限制)
-攻击者能够动态选择磁盘参数
这意味着,攻击者可以构建自定义表单,向/nova-tiptap/api/file发送POST请求,提供有效的CSRF令牌,并上传可执行文件或恶意文件。
攻击者可以提交包括.php、二进制文件等在内的恶意文件到公共磁盘,比如local、public或s3。
如果受害者使用可公开访问的存储路径(如具有公共访问权限的S3或Laravel公共磁盘),攻击者可能会获得执行或分发任意文件的能力。
因此而言,在某些环境中,该漏洞甚至可能导致潜在的远程代码执行(RCE),毕竟这些路径可能被攻击者当做远程代码执行的载体使用。
三、影响范围
Nova-Tiptap < 5.6.0
四、修复建议
Nova-Tiptap >= 5.7.0
五、参考链接
