CVE-2019-11048 is a vulnerability affecting PHP versions 7.2.x below 7.2.31, 7.3.x below 7.3.18, and 7.4.x below 7.4.6. When HTTP file uploads are enabled, attackers can exploit this flaw by providing excessively long filenames or field names. This can trigger the PHP engine to attempt allocating oversized memory storage, potentially leading to a denial of service due to disk exhaustion from uncleaned temporary files.
PHP的CVE-2019-11048漏洞影响7.2.x版本低于7.2.31、7.3.x版本低于7.3.18以及7.4.x版本低于7.4.6。如果您的PHP应用程序允许通过HTTP进行文件上传,攻击者可以通过提供过长的文件名或字段名来利用此漏洞。这可能导致PHP引擎尝试为处理请求分配过多的内存,超出配置的内存限制并停止处理。主要问题在于,发生故障时,PHP可能无法清理上传请求过程中创建的临时文件,从而导致这些文件累积并最终耗尽服务器的磁盘空间。
此漏洞特别适用于允许用户上传文件的Web应用程序,例如电子商务平台、内容管理系统(CMS)和论坛。攻击者可以通过自动化具有长文件名的多个上传请求来快速耗尽服务器的磁盘空间,从而导致拒绝服务(DoS)状况。利用此漏洞需要HTTP文件上传功能在易受攻击的PHP应用程序中启用。利用的复杂性相对较低,因为它不需要高级技术技能。
Web applications that rely on HTTP file uploads are at the highest risk. This includes content management systems (CMS) with file upload features, e-commerce platforms allowing user-uploaded images, and any application that accepts file uploads from external sources. Shared hosting environments are particularly vulnerable as they often have limited disk space and may not be promptly updated with security patches.
• linux / server:
find /tmp -type f -mtime +1 -print -delete # Remove old temporary files• generic web:
grep -i 'upload_max_filesize' /etc/php/7.4/apache2/php.ini # Check PHP configuration• linux / server:
journalctl -u php7.4-fpm -g 'memory allocation' # Monitor PHP-FPM logs for memory-related errorsdisclosure
漏洞利用状态
EPSS
12.72% (94% 百分位)
CVSS 向量
最有效的解决方案是升级到已修补漏洞的PHP版本。这包括PHP 7.2.31或更高版本、PHP 7.3.18或更高版本或PHP 7.4.6或更高版本。如果无法立即升级,则可以实施缓解措施,例如严格验证用户提供的文件名和字段名。限制文件名和字段的最大长度,并确保应用程序代码能够正确处理文件上传错误,这些都是重要的步骤。此外,建议审查和加强服务器配置以限制PHP内存使用并监控可用磁盘空间。
Actualice a la versión 7.2.31, 7.3.18 o 7.4.6 de PHP, o a una versión posterior, según corresponda a su rama de PHP. Esto solucionará la vulnerabilidad que permite el agotamiento del espacio en disco debido a la acumulación de archivos temporales no eliminados.
漏洞分析和关键警报直接发送到您的邮箱。
易受攻击的版本包括7.2.x版本低于7.2.31、7.3.x版本低于7.3.18以及7.4.x版本低于7.4.6。
检查您服务器上运行的PHP版本。您可以在Web服务器配置或使用PHP函数中找到此信息。
实施缓解措施,例如验证文件名和字段名,并限制PHP内存使用。
主要允许拒绝服务(DoS)攻击,方法是耗尽服务器的磁盘空间。
有可用的漏洞扫描器,可以检测到您PHP应用程序中的此漏洞。