【漏洞预警】 CVE-2016-1247:Debian、Ubuntu发行版的Nginx本地提权漏洞
漏洞发现人:Dawid Golunski
CVE编号 :CVE-2016-1247
发行日期 :15.11.2016
安全级别 :高
背景介绍
Nginx是一个高性能的HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,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日志目录
我们可以看到/var/log/nginx目录的拥有者是www-data,因此本地攻击者可以通过符号链接到任意文件来替换日志文件,从而实现提权。
攻击者通过符号链接替换了日志文件后,需要等nginx daemon重新打开日志文件,因此需要重启Nginx,或者nginx damon接受USR1进程信号。
这里亮点来了,USR1进程信号会在默认安装的Nginx通过logrotate脚本调用的do_rotate()函数自动触发。
我们可以看到logrotation脚本会在corn中每天6:25AM自动调用,因此如果/etc/logrotate.d/nginx已经设置了'daily'日志回滚,攻击者将在不需要任何系统管理员交互的情况下,在24小时内实现提权到ROOT
漏洞验证截图
poc请见:http://bobao.360.cn/learning/detail/3195.html



关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

随时掌握互联网精彩
赞助链接
排名
热点
搜索指数
- 1 推动干部能上能下 7953375
- 2 亚冬会遭美国等地网络攻击超27万次 7921298
- 3 中方将反制美国所谓对等关税 7889964
- 4 清明假期“短途游”成热门选择 7780757
- 5 3名菲律宾间谍落网 相貌曝光 7637224
- 6 金价再起飞 7584228
- 7 特朗普向无人岛加税 岛上挤满了企鹅 7415598
- 8 于东来质问永辉店月赚200万不涨工资 7370156
- 9 “内鬼”柯雪琴被查 涉严重违纪违法 7244856
- 10 718.8斤男子刷新中国第一胖纪录 7129969