美文网首页
Nginx HTTP/2和mp4模块拒绝服务预警(CVE-201

Nginx HTTP/2和mp4模块拒绝服务预警(CVE-201

作者: 许俊贤 | 来源:发表于2019-02-02 15:55 被阅读0次

报告编号:B6-2018-110901
报告来源:360-CERT
报告作者:360-CERT
更新日期:2018-11-09

事件背景

Nginx 11月6日的安全更新中,修补了三个可导致拒绝服务的漏洞:CVE-2018-16843,CVE-2018-16844和CVE-2018-16845。位于nginx HTTP/2 模块和流媒体MP4模块。

CVE-2018-16843,CVE-2018-16844漏洞存在于ngx_http_v2模块之中(默认情况下不编译,编译时需要开启--with-http_v2_module,同时将listen http2添加到配置文件中),当用户添加http2支持时,攻击者可以发送特制的HTTP/2请求,消耗CPU和内存资源,最终导致DoS。

CVE-2018-16845漏洞存在于ngx_http_mp4_module模块中,当用户对Nginx添加MP4流媒体支持,恶意的MP4文件会导致处理进程无限循环、崩溃或者内存泄露。

影响范围

CVE-2018-16843,CVE-2018-16844影响版本:

Mainline version :1.9.5 - 1.15.5

CVE-2018-16845 影响版本:

Mainline version :1.1.3+, 1.0.7+

补丁分析

详细见原文。

修复建议

关闭http/2请求处理和MP4流媒体支持,强烈建议将Nginx 升级至1.15.6,或1.14.1 stable 最新版本。

升级Nginx

查看当前版本信息及配置参数:

sudo /usr/local/nginx/sbin/nginx -V
image.png

本人配置了监控及SSL的,根据实际配置进行修改。

--with-http_stub_status_module --with-http_ssl_module

下载安装包

cd /usr/local/
wget [http://nginx.org/download/nginx-1.14.1.tar.gz](http://nginx.org/download/nginx-1.14.1.tar.gz)
tar zxvf nginx-1.14.1.tar.gz
cd nginx-1.14.1.tar.gz

开始编译nginx

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module
image.png

编译nginx,添加http_v2模块应用
编译完成后,执行make,但不执行make install

make
image.png

备份

将旧版本的nginx二进制文件,重命名一个名字,在这期间,当前运行的nginx进程不会停止,不影响应用运行。

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx20181113.old

然后将上一步通过make编译好的新版nginx二进制文件,拷贝到运行目录

cp ./objs/nginx /usr/local/nginx/sbin/nginx

执行更新

在源码目录根目录下(/usr/local/nginx-1.14.1),执行更新安装命令:

make upgrade

注意:如果原来的相关配置文件中,写有和ssl有关的配置信息,需要先暂时注释掉,否则更新时会报错。

更新完成

更新完成后,执行

nginx -V
image.png

可以看到nginx已经更新到1.14.1版本。

备注:个人博客同步至简书。

相关文章

网友评论

      本文标题:Nginx HTTP/2和mp4模块拒绝服务预警(CVE-201

      本文链接:https://www.haomeiwen.com/subject/tobssqtx.html