Мир: Уязвимость в nginx позволяет получить права суперпользователя на системе

0

Исследователь безопасности Давид Голунски (Dawid Golunski) сообщил об уязвимости в nginx (CVE-2016-1247), позволяющей локальному атакующему получить на системе права суперпользователя.

Злоумышленник, которому удалось скомпрометировать размещенное на сервере nginx приложение и получить доступ к учетной записи www-data, может с легкостью проэксплуатировать данную уязвимость. Атакующий способен повысить свои привилегии, получить права суперпользователя и в результате скомпрометировать систему.


Web-сервер nginx, установленный из репозиториев по умолчанию на дистрибутивах, основанных на Debian (Debian, Ubuntu и т.д.), создает системный журнал в следующей директории и со следующими правами:

root@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 или размещенное на нем приложение, может с помощью символьной ссылки заменить файлы регистрации произвольным файлом. После запуска/перезагрузки сервера логи будут записываться в файл, указанный символьной ссылкой. В результате атакующий получит права суперпользователя.

Nginx – третий в мире по популярности web-сервер и почтовый прокси-сервер, работающий на Unix-подобных ОС. По данным Netcraft, по состоянию на ноябрь прошлого года число обслуживаемых им сайтов превышало 200 млн. Nginx используется такими ресурсами, как “ВКонтаке”, Facebook, Instagram, Mail,ru и т.д. (ngnix/NovostIT)