平台
laravel
组件
plank/laravel-mediable
修复版本
6.4.1
CVE-2026-4809 涉及 plank/laravel-mediable 中的一个任意文件上传漏洞。当应用程序接受或偏好客户端提供的 MIME 类型时,攻击者可以上传包含可执行 PHP 代码的文件。受影响的版本为 <= 6.4.0。由于没有官方补丁,用户应采取其他安全措施来缓解风险。
CVE-2026-4809 在 plank/laravel-mediable (版本低于 6.4.0) 中允许上传危险文件。如果使用该包的应用程序在文件上传处理过程中信任客户端提供的 MIME 类型,则远程攻击者可以将恶意 PHP 文件伪装成无害的图像文件并上传。这通过声明图像 MIME 类型(例如 'image/jpeg')同时上传可执行的 PHP 代码来实现。如果文件存储在 Web 可访问且可执行的位置,则可能导致远程代码执行,从而危及 Laravel 应用程序的安全性。
此漏洞利用了对客户端提供的 MIME 类型的信任。攻击者可以创建一个恶意 PHP 文件并将其扩展名更改为常见的图像扩展名(例如 .jpg)。在上传此文件时,攻击者会声明一个图像 MIME 类型,从而欺骗系统将其视为图像。如果系统未正确验证文件,则会将文件存储在文件存储目录中,如果启用了 PHP 执行,攻击者就可以执行恶意代码。
Applications built with Laravel that utilize the laravel-mediable package for file uploads are at risk. This includes projects that rely on client-supplied MIME types for file validation without robust server-side verification. Shared hosting environments where users have control over file uploads are particularly vulnerable.
• laravel: Inspect file upload handling code for reliance on client-supplied MIME types. Check for files with PHP extensions in web-accessible directories. Use find /var/www/laravel -name '*.php' to identify potential targets.
• generic web: Monitor web server access logs for unusual file uploads, particularly those with image extensions but potentially malicious content. Look for requests containing Content-Type: image/* followed by PHP file access.
• generic web: Use a WAF to block uploads of files with potentially dangerous extensions (e.g., .php, .phtml, .php3) regardless of the declared MIME type.
disclosure
漏洞利用状态
EPSS
0.52% (67% 百分位)
CISA SSVC
建议的解决方案是将 plank/laravel-mediable 更新到修复版本(高于 6.4.0)。此外,在服务器端实施强大的文件类型验证至关重要,无论客户端提供的 MIME 类型如何。这包括验证文件扩展名,并理想情况下分析文件内容以确认其与声明的 MIME 类型相符。在文件存储目录中禁用 PHP 执行是另一个重要的安全措施。最后,审查和加强应用程序的安全策略以防止未经授权的文件上传至关重要。
此 CVE 指示一个任意文件上传漏洞。由于没有可用的补丁,解决方案是停止使用 plank/laravel-mediable 的易受攻击版本(6.4.0 或更早版本),或者在应用程序中实施额外的安全措施,以验证和清理客户端在文件上传期间提供的 MIME 类型。考虑限制允许的文件类型,并验证文件内容,而不是仅仅依赖于提供的 MIME 类型。
漏洞分析和关键警报直接发送到您的邮箱。
6.4.0 之前的版本都存在此漏洞。
检查您的项目中安装的 plank/laravel-mediable 版本。如果版本低于 6.4.0,则您的应用程序存在漏洞。
MIME 类型 (Multipurpose Internet Mail Extensions) 是一种标识符,用于指示文件的数据类型(例如 image/jpeg、text/html)。
服务器端的验证至关重要,因为攻击者可以轻松伪造客户端提供的 MIME 类型。
实施额外的缓解措施,例如强大的文件类型验证以及在文件存储目录中禁用 PHP 执行。
CVSS 向量
上传你的 composer.lock 文件,立即知道是否受影响。