今日,我们发布了针对 NGINX Plus、NGINX 开源版、NGINX 企阅版以及 NGINX Ingress Controller 的更新,以应对最近在 NGINX 模块 ngx_http_mp4_module 及 ngx_http_hls_module 中发现的漏洞——这两个模块用于以 MP4 以及 Apple HTTP Live Streaming (HLS) 格式进行视频流媒体处理。
基本信息
已发现的漏洞均已经上报到通用漏洞披露(CVE),F5 的安全应急小组(SIRT)也已根据通用漏洞评分系统(CVSS v3.1)对这些漏洞进行评分。
下列在 MP4 流媒体模块(ngx_http_mp4_module)中的漏洞影响到 NGINX Plus、NGINX 开源版以及 NGINX 企阅版。
-
CVE-2022-41741 (Memory Corruption) – CVSS score 7.1 (High)
-
CVE-2022-41742 (Memory Disclosure) – CVSS score 7.0 (High)
下列在 HLS 流媒体模块(ngx_http_hls_module)中的漏洞只对 NGINX Plus 产生影响。
-
CVE-2022-41743 (Memory Corruption) – CVSS score 7.0 (High)
针对以上漏洞的相关补丁包含在以下软件版本中:
-
NGINX Plus R27 P1
-
NGINX Plus R26 P1
-
NGINX 开源版 1.23.2(主线版)
-
NGINX 开源版 1.22.1(稳定版)
-
NGINX 企阅版 R2 P1
-
NGINX 企阅版 R1 P1
-
NGINX Ingress Controller 2.4.1
-
NGINX Ingress Controller 1.12.5
立即升级
所有版本的 NGINX Plus、NGINX 开源版、NGINX 企阅版以及 NGINX Ingress Controller 均受影响,故我们强烈建议您将您的软件升级到最新版本。
NGINX 开源版用户
nginx-1.22.1 稳定版和 nginx-1.23.2 主线版已发布,其中包括了针对 ngx_http_mp4_module (CVE-2022-41741, CVE-2022-41742) 中内存损坏和内存泄漏的修复补丁。
下载地址:http://nginx.org/#2022-10-19
NGINX Plus 用户
请查阅 NGINX Plus Admin Guide 中的 Upgrading NGINX Plus 一节了解升级步骤。
https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-plus/#upgrading-nginx-plus
NGINX Plus 客户还可以联系我们的售后支持团队,以获取进一步的帮助。
https://my.f5.com/
NGINX 企阅版用户
请查阅产品文档中的升级说明了解升级步骤。
https://docs.nginx-cn.net/nginx-oss-sub/installation#upgrading-nginx-open-source-subscription
NGINX 企阅版客户还可以联系我们的售后支持团队,以获取进一步的帮助。
https://my.f5.com/
漏洞信息
漏洞: CVE-2022-41741
NGINX ngx_http_mp4_module
https://support.f5.com/csp/article/K81926432
NGINX 在 ngx_http_mp4_module 中有一个漏洞,可能允许攻击者破坏 NGINX。使用特制的 mp4 文件可以损坏 worker 进程(负责流量处理)的内存,导致其终止或潜在的其他影响。该问题仅影响启用了 ngx_http_mp4_module 模块并在配置文件中使用 mp4 指令的 NGINX。此外,只有当攻击者能够触发使用 ngx_http_mp4_module 对特制 mp4 文件的进行处理时,攻击才有可能成功。
漏洞影响
一次成功的利用可能允许一个本地攻击者破坏 NGINX 的 worker 进程,导致其中止或其他潜在的影响。
缓解措施
ngx_http_mp4_module 模块为 MP4 文件提供伪流媒体的服务器侧支持,这些文件通常会使用 .mp4 .m4v或.m4a文件扩展名。详情请见https://nginx.org/en/docs/http/ngx_http_mp4_module.html
注意:默认情况下, NGINX 开源版本不包含 MP4 模块,必须启用该模块才受影响。MP4 模块默认包含在 NGINX Plus 中。
综上所述,缓解措施为:只允许受信用户发布音频和视频文件,或者在 NGINX配置中禁用MP4模块,直到升级至修复版本。
漏洞: CVE-2022-41742
NGINX ngx_http_mp4_module
https://support.f5.com/csp/article/K28112382
NGINX 在 ngx_http_mp4_module 中存在漏洞,这可能允许攻击者激发 worker 进程的崩溃,或者通过使用特制的 mp4 文件致使 worker 进程出现内存泄露。该问题仅影响启用了 ngx_http_mp4_module 模块(默认不启用)并在配置文件中使用 .mp4 指令的 NGINX。此外,只有当攻击者能够触发使用 ngx_http_mp4_module 对特制 mp4 文件的进行处理时,攻击才有可能成功。
漏洞影响
一次成功的利用可能允许一个攻击者破坏NGINX的worker进程,导致其中止或使其内存泄露。
缓解措施
ngx_http_mp4_module 模块为 MP4 文件提供伪流媒体的服务器侧支持,这些文件通常会使用 .mp4 .m4v 或 .m4a 文件扩展名。详情请见https://nginx.org/en/docs/http/ngx_http_mp4_module.html
注意:默认情况下, NGINX 开源版本不包含 MP4 模块,必须启用该模块才受影响。MP4 模块默认包含在 NGINX Plus 中。
综上所述,缓解措施为:只允许受信用户发布音频和视频文件,或者在NGINX配置中禁用MP4模块,直到升级至修复版本。
漏洞: CVE-2022-41743
NGINX ngx_http_mp4_module
https://support.f5.com/csp/article/K01112063
NGINX Plus 的模块 ngx_http_hls_module 中存在一个漏洞,该漏洞可能允许本地攻击者破坏 NGINX 的工作进程内存,从而导致其崩溃或在使用特制的音频或视频文件时产生其他潜在的影响。只有当配置文件中使用 hls 指令时,该问题才会影响 NGINX Plus。
此外,只有当攻击者可以触发使用模块 ngx_http_hls_module 对特制音频或视频文件进行 处理时,攻击才有可能成功。
漏洞影响
一次成功的利用可能允许一个本地攻击者破坏 NGINX 的 worker 进程,导致其中止或其他潜在的影响。
缓解措施
ngx_http_hls_module 模块为 MP4 和 MOV 媒体文件提供 HTTP 流媒体服务器端支持。这类文件通常具有 .mp4 .m4v .m4a .mov 或 .qt 的文件名扩展名。该模块支持 H.264 视频编解码器,AAC 和 MP3 音频编解码器。详情请见https://nginx.org/en/docs/http/ngx_http_hls_module.html
因此,只允许受信用户发布音频和视频文件。或者在NGINX配置中禁用HLS模块,直到升级至修复版本,可缓解此风险。