nginx安全问题致使服务器易遭受dos

近日 nginx 被爆出存在安全问题,有可能会致使 1400 多万台服务器易遭受 DoS 。而导致安全问题的漏洞存在于 HTTP/2 和 MP4 模块中。nginx Web 服务器于11月6日发布了新版本,用于修复影响 1.15.6, 1.14.1 之前版本的多个安全问题。

被发现的安全问题有一种这样的情况 —— 允许潜在的hacker触发拒绝服务(DoS)状态并访问敏感的信息。

安全问题:

①、在 nginx HTTP/2 实现中发现了两个安全问题,这可能导致过多的内存消耗(CVE-2018-16843)和CPU使用率(CVE-2018-16844)”,详见 nginx 的安全建议。

此外,如果在配置文件中使用"listen"指令的"http2"选项,则问题会影响使用 ngx_http_v2_module 编译的 nginx(默认情况下不编译)。”

hacker可以利用上述两个问题,发送特制的 HTTP/2 请求包,利用该nginx漏洞造成过多的CPU使用和内存使用,最终触发 DoS 状态。

所有运行未打上补丁的 nginx服务器都容易受到 DoS 。

②、安全问题(CVE-2018-16845)会影响 MP4 模块,使得hacker在恶意制作的 MP4 文件的帮助下,在 worker 进程中导致出现无限循环、崩溃或内存泄露状态。

(CVE-2018-16845)mp4模块安全问题仅影响运行使用 ngx_http_mp4_module 构建的 nginx 版本并在配置文件中启用 mp4 选项的服务器。

安全建议:

HTTP/2 漏洞影响 1.9.5 和 1.15.5 之间的所有 nginx 版本

MP4 模块安全问题影响运行 nginx 1.0.7, 1.1.3 及更高版本的服务器。

为缓解这两个安全问题,服务器管理员必须将其 nginx 升级到 1.14.1 stable 或1.15.6 主线版本。

目前,Shodan 搜索显示超过 1400 万台服务器运行未包含修复补丁的 nginx 版本(更确切地说是 14,036,690 台),仅有 6992 台服务器打上了安全补丁。