nginx cve-cve 2016 9079-4450怎么打补丁

nginx安全公告地址:
CVE-:一个特定构造的数据包,可引发nginx引用空指针,导致nginx出错造成拒绝服务攻击。
说明:查阅代码发现nginx应该是将补丁集成到开发版(Mainline)和稳定版(Stable)中,而历史版本(legacy)并不会将补丁打上。
CVE-针对1.3.9-1.9.12版本的补丁如下,//是我加的说明:
--- src/os/unix/ngx_files.c                //表示问题产生在src/os/unix/ngx_files.c文件中,该行不要加到ngx_files.c文件
+++ src/os/unix/ngx_files.c                //表示问题要在src/os/unix/ngx_files.c文件中修改以修复,该行不要加到ngx_files.c文件中
@@ -<span style="color: #3,<span style="color: # +<span style="color: #3,<span style="color: # @@ ngx_write_chain_to_file(ngx_file_t *file  //-182,6表示修复前该处代码的位置为183行的后6行,+183,12表示修复后该处代码占183行的后12行
/* create the iovec and coalesce the neighbouring bufs */
while (cl && vec.nelts & IOV_MAX) {
if (ngx_buf_special(cl-&buf)) {      //+号表示该行代码原来没有,要新加进去;修复时+号不要加到代码中
if (prev == cl-&buf-&pos) {
iov-&iov_len += cl-&buf-&last - cl-&buf-&
作为对比原来该处代码如下:
修复后代码如下:
阅读(...) 评论()点击标题下「蓝色微信名」可快速关注&& & & & && 漏洞发现人:Dawid GolunskiCVE编号 &:CVE-发行日期 &:15.11.2016安全级别 &:高背景介绍Nginx
是一个高性能的HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev
为俄罗斯访问量第二的 Rambler.ru
站点开发的,第一个公开版本0.1.0发布于日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和
低系统资源的消耗而闻名。日,nginx 1.0.4发布。 Nginx是一款轻量级的Web
服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor
Sysoev所开发,其特点是占有内存少,并发能力强。漏洞描述Debian、Ubuntu发行版的Nginx在新建日志目录的时,使用了不安全的权限,因此本地恶意攻击者可以从nginx/web用户权限(www-data)提升到ROOT。漏洞概要Debian发行版的Nginx本地提权漏洞,该漏洞已经在1.6.2-5+deb8u3中修复因为该漏洞细节是在官方修复后公布的,因此请低版本的Debian/ubuntu用户及时更新补丁:补丁修复情况:Debian:在Nginx 1.6.2-5+deb8u3中修复Ubuntu:Ubuntu 16.04 LTS:在1.10.0-0ubuntu0.16.04.3中修复Ubuntu 14.04 LTS:在1.4.6-1ubuntu3.6中修复Ubuntu 16.10:在1.10.1-0ubuntu1.1中修复漏洞细节基于Debian系统默认安装的Nginx会在下面的路径使用下面的权限新建Nginx日志目录12345root@xenial:~#&ls&-ld&/var/log/nginx/drwxr-x---&2&www-data&adm&4096&Nov&12&22:32&/var/log/nginx/root@xenial:~#&ls&-ld&/var/log/nginx/*-rw-r-----&1&www-data&adm&&&&&&&&&0&Nov&12&22:31&/var/log/nginx/access.log-rw-r--r--&1&root&&&&&root&&&&0&Nov&12&22:47&/var/log/nginx/error.log我们可以看到/var/log/nginx目录的拥有者是www-data,因此本地攻击者可以通过符号链接到任意文件来替换日志文件,从而实现提权。攻击者通过符号链接替换了日志文件后,需要等nginx daemon重新打开日志文件,因此需要重启Nginx,或者nginx damon接受USR1进程信号。这里亮点来了,USR1进程信号会在默认安装的Nginx通过logrotate脚本调用的do_rotate()函数自动触发。--------[ /etc/logrotate.d/nginx ]--------123456789101112131415161718192021222324/var/log/nginx/*.log&{dailymissingokrotate&52compressdelaycompressnotifemptycreate&0640&www-data&admsharedscriptsprerotateif&[&-d&/etc/logrotate.d/httpd-prerotate&];&then&\run-parts&/etc/logrotate.d/httpd-&\fi&\endscriptpostrotateinvoke-rc.d&nginx&rotate&&/dev/null&2&&1endscript}[...]do_rotate()&{&&&&&&&&start-stop-daemon&--stop&--signal&USR1&--quiet&--pidfile&$PID&--name&$NAME&&&&&&&&return&0}[...]我们可以看到logrotation脚本会在corn中每天6:25AM自动调用,因此如果/etc/logrotate.d/nginx已经设置了'daily'日志回滚,攻击者将在不需要任何系统管理员交互的情况下,在24小时内实现提权到ROOT漏洞验证截图修复方案升级为最新的Nginx软件包https://www.debian.org/security/2016/dsa-3701/usn/usn-3114-1/参考链接/advisories/Nginx-Exploit-Deb-Root-PrivEsc-CVE-.html转自:安全客长按二维码关注精睿安全微信号:jrsecurity精睿安全(gh_7aa)
 文章为作者独立观点,不代表大不六文章网立场
gh_7aa精睿安全作为公平公正的第三方测评机构,专注于信息安全领域,提供代码及产品测评等服务,发布最新、最热的信息安全动态,分享安全行业领域知识。热门文章最新文章gh_7aa精睿安全作为公平公正的第三方测评机构,专注于信息安全领域,提供代码及产品测评等服务,发布最新、最热的信息安全动态,分享安全行业领域知识。&&&&违法和不良信息举报电话:183-
举报邮箱:Copyright(C)2017 大不六文章网ImageMagick存在远程代码执行安全漏洞(CVE-)附修复方法 - VPS侦探
ImageMagick是一个免费的创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。在本周二,ImageMagick披露出了一个严重的0day漏洞,此漏洞允许攻击者通过上传恶意构造的图像文件,在目标服务器执行任意代码。低于7.0.1-1和6.9.3-10版本均可能会有安全风险。
上也附带此组件,但默认不安装,如果你安装了ImageMagick并使用了此组件,建议对其进行升级。目前不受影响版本为ImageMagick 7.0.1-1和6.9.3-10。
LNMP 1.3版中已经进行了更新,lnmp用户可以执行:wget http://soft.vpser.net/lnmp/lnmp1.3.tar.gz -O lnmp1.3.tar.gz &&
tar zxf lnmp1.3.tar.gz && cd lnmp1.3 && ./addons.sh install imagemagick 回车确认后将重新安装ImageMagick升级到不受影响的版本。
也可以手动如下安装:
wget http://soft.vpser.net/web/imagemagick/ImageMagick-7.0.1-1.tar.gz
tar zxf ImageMagick-7.0.1-1.tar.gz
cd ImageMagick-7.0.1-1
./configure --prefix=/usr/local/imagemagick
make && make install
不报错的话就升级成功了。
VPS论坛邀请码: 有效期至: 14:10
&&转载请注明出处: 本文链接地址:
相关文章:
(8条评论) 分类: 标签: , , , ,
VPS侦探推荐:
、、、、、、、、、等。
欢迎加入VPS侦探论坛交流:
本站建立在VPS上。
使用推荐码: 九折优惠。
本站推荐:、、、等。
美国VPS/服务器代购服务:
最新VPS优惠信息
2017年三月 &(6)
2017年二月 &(6)
2017年一月 &(7)
2016年十二月 &(9)
2016年十一月 &(15)
2016年十月 &(8)
2016年九月 &(9)
2016年八月 &(6)
2016年七月 &(10)
2016年六月 &(11)
2016年五月 &(6)
2016年四月 &(8)
2016年三月 &(7)
2016年二月 &(5)
2016年一月 &(10)
2015年十二月 &(10)
2015年十一月 &(9)
2015年十月 &(7)
2015年九月 &(9)
2015年八月 &(9)
2015年七月 &(8)
2015年六月 &(6)
2015年五月 &(5)
2015年四月 &(5)
2015年三月 &(9)
2015年二月 &(4)
2015年一月 &(6)
2014年十二月 &(8)
2014年十一月 &(7)
2014年十月 &(7)
2014年九月 &(7)
2014年八月 &(8)
2014年七月 &(9)
2014年六月 &(9)
2014年五月 &(10)
2014年四月 &(11)
2014年三月 &(10)
2014年二月 &(9)
2014年一月 &(14)
2013年十二月 &(17)
2013年十一月 &(12)
2013年十月 &(4)
2013年九月 &(12)
2013年八月 &(9)
2013年七月 &(11)
2013年六月 &(11)
2013年五月 &(9)
2013年四月 &(9)
2013年三月 &(7)
2013年二月 &(8)
2013年一月 &(4)
2012年十二月 &(10)
2012年十一月 &(11)
2012年十月 &(8)
2012年九月 &(13)
2012年八月 &(12)
2012年七月 &(5)
2012年六月 &(8)
2012年五月 &(11)
2012年四月 &(10)
2012年三月 &(4)
2012年二月 &(7)
2012年一月 &(8)
2011年十二月 &(11)
2011年十一月 &(8)
2011年十月 &(7)
2011年九月 &(10)
2011年八月 &(10)
2011年七月 &(6)
2011年六月 &(13)
2011年五月 &(15)
2011年四月 &(9)
2011年三月 &(9)
2011年二月 &(10)
2011年一月 &(9)
2010年十二月 &(10)
2010年十一月 &(12)
2010年十月 &(11)
2010年九月 &(12)
2010年八月 &(11)
2010年七月 &(10)
2010年六月 &(13)
2010年五月 &(14)
2010年四月 &(19)
2010年三月 &(9)
2010年二月 &(8)
2010年一月 &(10)
2009年十二月 &(12)
2009年十一月 &(10)
2009年十月 &(6)
2009年九月 &(7)
2009年八月 &(6)
2009年七月 &(13)
2009年六月 &(6)
2009年五月 &(5)
2009年四月 &(12)
2009年三月 &(13)
Copyright (C)
Powered by3506人阅读
nginx(4)
DDOS是一种通过大流量的请求对目标进行轰炸式访问,导致提供服务的服务器资源耗尽进而无法继续提供服务的攻击手段。一般情况下,攻击者通过大量请求与连接使服务器处于饱和状态,以至于无法接受新的请求或变得很慢。应用层DDOS攻击的特征应用层(七层/HTTP层)DDOS攻击通常由木马程序发起,其可以通过设计更好的利用目标系统的脆弱点。例如,对于无法处理大量并发请求的系统,仅仅通过建立大量的连接,并周期性的发出少量数据包来保持会话就可以耗尽系统的资源,使其无法接受新的连接请求达到DDOS的目的。其他还有采用发送大量连接请求发送大数据包的请求进行攻击的形式。因为攻击是由木马程序发起,攻击者可以在很短时间内快速建立大量的连接,并发出大量的请求。以下是一些DDOS的特证,我们可以据此特征来抵抗DDOS(包括但不限于):攻击经常来源于一些相对固定的IP或IP段,每个IP都有远大于真实用户的连接数和请求数。备注:这并不表明这种请求都是代表着DDOS攻击。在很多使用NAT的网络架构中,很多的客户端使用网关的IP地址访问公网资源。但是,即便如此,这样的请求数和连接数也会远少于DDOS攻击。因为攻击是由木马发出且目的是使服务器超负荷,请求的频率会远远超过正常人的请求。User-Agent通常是一个非标准的值Referer有时是一个容易联想到攻击的值使用Nginx、Nginx Plus抵抗DDOS攻击结合上面提到的DDOS攻击的特征,Nginx、Nginx Plus有很多的特性可以用来有效的防御DDOS攻击,可以从调整入口访问流量和控制反向代理到后端服务器的流量两个方面来达到抵御DDOS攻击的目的。限制请求速度设置Nginx、Nginx Plus的连接请求在一个真实用户请求的合理范围内。比如,如果你觉得一个正常用户每两秒可以请求一次登录页面,你就可以设置Nginx每两秒钟接收一个客户端IP的请求(大约等同于每分钟30个请求)。limit_req_zone $binary_remote_addr zone=one:10m rate=30r/m;server {...location /login.html {limit_req zone=...}}`limit_req_zone`命令设置了一个叫one的共享内存区来存储请求状态的特定键值,在上面的例子中是客户端IP($binary_remote_addr)。location块中的`limit_req`通过引用one共享内存区来实现限制访问/login.html的目的。限制连接数量设置Nginx、Nginx Plus的连接数在一个真实用户请求的合理范围内。比如,你可以设置每个客户端IP连接/store不可以超过10个。limit_conn_zone $binary_remote_addr zone=addr:10m;server {...location /store/ {limit_conn addr 10;...}}`limit_conn_zone`命令设置了一个叫addr的共享内存区来存储特定键值的状态,在上面的例子中是客户端IP( $binary_remote_addr)。location块中`limit_conn`通过引用addr共享内存区来限制到/store/的最大连接数为10。关闭慢连接有一些DDOS攻击,比如Slowlris,是通过建立大量的连接并周期性的发送一些数据包保持会话来达到攻击目的,这种周期通常会低于正常的请求。这种情况我们可以通过关闭慢连接来抵御攻击。`client_body_timeout`命令用来定义读取客户端请求的超时时间,`client_header_timeout`命令用来定于读取客户端请求头的超时时间。这两个参数的默认值都是60s,我们可以通过下面的命令将他们设置为5s:server {client_body_timeout 5s;client_header_timeout 5s;...}设置IP黑名单如果确定攻击来源于某些IP地址,我们可以将其加入黑名单,Nginx就不会再接受他们的请求。比如,你已经确定攻击来自于从123.123.123.1到123.123.123.16的一段IP地址,你可以这样设置:location / {deny 123.123.123.0/28;...}或者你确定攻击来源于123.123.123.3、123.123.123.5、123.123.123.7几个IP,可以这样设置:location / {deny 123.123.123.3;deny 123.123.123.5;deny 123.123.123.7;...}设置IP白名单如果你的网站仅允许特定的IP或IP段访问,你可以结合使用allow和deny命令来限制仅允许你指定的IP地址访问你的网站。如下,你可以设置仅允许192.168.1.0段的内网用户访问:location / {allow 192.168.1.0/24;...}deny命令会拒绝除了allow指定的IP段之外的所有其他IP的访问请求。使用缓存进行流量削峰通过打开Nginx的缓存功能并设置特定的缓存参数,可以削减来自攻击的流量,同时也可以减轻对后端服务器的请求压力。以下是一些有用的设置:`proxy_cache_use_stale `的updating参数告诉Nginx什么时候该更新所缓存的对象。只需要到后端的一个更新请求,在缓存有效期间客户端对该对象的请求都无需访问后端服务器。当通过对一个文件的频繁请求来实施攻击时,缓存功能可极大的降低到后端服务器的请求。`proxy_cache_key `命令定义的键值通常包含一些内嵌的变量(默认的键值$scheme$proxy_host$request_uri包含了三个变量)。如果键值包含`$query_string`变量,当攻击的请求字符串是随机的时候就会给Nginx代理过重的缓存负担,因此我们建议一般情况下不要包含`$query_string`变量。屏蔽特定的请求可以设置Nginx、Nginx Plus屏蔽一些类型的请求:针对特定URL的请求针对不是常见的User-Agent的请求针对Referer头中包含可以联想到攻击的值的请求针对其他请求头中包含可以联想到攻击的值的请求比如,如果你判定攻击是针对一个特定的URL:/foo.php,我们就可以屏蔽到这个页面的请求:location /foo.php {}或者你判定攻击请求的User-Agent中包含foo或bar,我们也可以屏蔽这些请求:location / {if ($http_user_agent ~* foo|bar) {return 403;}...}http_name变量引用一个请求头,上述例子中是User-Agent头。可以针对其他的http头使用类似的方法来识别攻击。限制到后端服务器的连接数一个Nginx、Nginx Plus实例可以处理比后端服务器多的多的并发请求。在Nginx Plus中,你可以限制到每一个后端服务器的连接数,比如可以设置Nginx Plus与website upstream中的每个后端服务器建立的连接数不得超过200个:upstream website {server 192.168.100.1:80 max_conns=200;server 192.168.100.2:80 max_conns=200;queue 10 timeout=30s;}`max_conns`参数可以针对每一个后端服务器设置Nginx Plus可以与之建立的最大连接数。`queue`命令设置了当每个后端服务器都达到最大连接数后的队列大小,`timeout`参数指定了请求在队列中的保留时间。处理特定类型的攻击有一种攻击是发送包含特别大的值的请求头,引起服务器端缓冲区溢出。Nginx、Nginx Plus针对这种攻击类型的防御,可以参考[Using NGINX and NGINX Plus to Protect Against CVE-](/blog/nginx-protect-cve-/?_ga=1.9284699)优化Nginx性能DDOS攻击通常会带来高的负载压力,可以通过一些调优参数,提高Nginx、Nginx Plus处理性能,硬抗DDOS攻击,详细参考:[Tuning NGINX for Performance](/blog/tuning-nginx/?_ga=1.9284699)识别DDOS攻击到目前为止,我们都是集中在如何是用Nginx、Nginx Plus来减轻DDOS攻击带来的影响。如何才能让Nginx、Nginx Plus帮助我们识别DDOS攻击呢?`Nginx Plus Status module`提供了到后端服务器流量的详细统计,可以用来识别异常的流量。Nginx Plus提供一个当前服务状态的仪表盘页面,同时也可以在自定义系统或其他第三方系统中通过API的方式获取这些统计信息,并根据历史趋势分析识别非正常的流量进而发出告警。总结Nginx和Nginx Plus可以作为抵御DDOS攻击的一个有力手段,而且Nginx Plus中提供了一些附加的特性来更好的抵御DDOS攻击并且当攻击发生时及时的识别到。原文:/blog/mitigating-ddos-attacks-with-nginx-and-nginx-plus/译文:/content/15/615.shtml译者:陈洋 (运维帮)
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2527362次
积分:17277
积分:17277
排名:第447名
原创:136篇
转载:58篇
评论:806条}

我要回帖

更多关于 cve 2016 5195补丁 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信