Alexandre Snarskii
November 25, 2011 04:56AM
On Fri, Nov 25, 2011 at 01:25:34PM +0400, Igor Sysoev wrote:
> > Скорее всего симлинки.
> >
> > У апача ЕМНИП есть опция (не )?ходить по симлинкам.
> > Возможно надо такую же в nginx?
>
> http://httpd.apache.org/docs/2.2/mod/core.html#options
>
> FollowSymLinks
> SymLinksIfOwnerMatch
>
> This option should not be considered a security restriction,
> since symlink testing is subject to race conditions that
> make it circumventable.
>
> Отсюда возникает вопрос: имеет ли смысл тестировать каждый элемент
> пути при каждом запросе, если это не даёт 100% гарантии ?

Сугубое jimho: весь путь проверять не надо. Достаточно проверять
последний элемент пути, и, возможно, даже не "проверять самому",
а переложить проверку на операционную систему флагом O_NOFOLLOW
в open(2).

Почему: симлинк-атака базируется на стандартном location'е

location ~ \.(gif|png|<whatever else static files>)$ {
root /some/user;
}

при котором "злому хацкеру" достаточно прописать в своей директории
симлинк image.gif -> /some/other-user/config.php, и добавление
O_NOFOLLOW от этой атаки прикрывает.

Да, O_NOFOLLOW проверяет только последний элемент пути, но этого
а) достаточно (выставление симлинка "уровнем выше" к атаке не приводит,
ибо под данный location не попадает).
б) не очень сильно ломает функционал атомарных обновлений (хотя
если пользовательская CMS подставляет файлы именно симлинком
"последнего элемента" - это сломается, ведь симлинки не будут работать
даже внутри одной директории, но потому-то эта опция должна быть
конфигурируема для location'а а не включена по умолчанию).

PS: от атаки на хардлинках это по любому не защищает.

--
In theory, there is no difference between theory and practice.
But, in practice, there is.

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

чтение чужих файлов.

adept November 24, 2011 03:45PM

Re: чтение чужих файлов.

Daniel Podolsky November 24, 2011 03:58PM

Re: чтение чужих файлов.

Craken November 24, 2011 04:20PM

Re: чтение чужих файлов.

Alex Vorona November 24, 2011 04:28PM

Re: чтение чужих файлов.

adept November 24, 2011 06:45PM

Re: чтение чужих файлов.

San November 24, 2011 07:20PM

Re: чтение чужих файлов.

Богун Дмитрий November 24, 2011 07:50PM

Re: чтение чужих файлов.

San November 24, 2011 08:14PM

Re: чтение чужих файлов.

Богун Дмитрий November 24, 2011 08:18PM

Re: чтение чужих файлов.

Rauf Kuliyev November 24, 2011 08:30PM

Re: чтение чужих файлов.

San November 24, 2011 08:40PM

Re: чтение чужих файлов.

San November 24, 2011 08:48PM

Re: чтение чужих файлов.

Богун Дмитрий November 25, 2011 06:46PM

Re: чтение чужих файлов.

Dmitry E. Oboukhov November 25, 2011 04:22AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 04:26AM

Re: чтение чужих файлов.

Anton Yuzhaninov November 25, 2011 04:36AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 04:44AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 04:48AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 05:28AM

Re: чтение чужих файлов.

mva November 25, 2011 04:58AM

Re: чтение чужих файлов.

Валентин Бартенев November 25, 2011 05:02AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 05:22AM

Re: чтение чужих файлов.

Dmitry E. Oboukhov November 25, 2011 04:50AM

Re: чтение чужих файлов.

Alexandre Snarskii November 25, 2011 04:56AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 05:30AM

Re: чтение чужих файлов.

mva November 25, 2011 05:44AM

Re: чтение чужих файлов.

Alexandre Snarskii November 25, 2011 06:00AM

Re: чтение чужих файлов.

Maxim Dounin November 25, 2011 07:18AM

Re: чтение чужих файлов.

Gena Makhomed November 26, 2011 12:12PM

Re: чтение чужих файлов.

snikers January 04, 2012 07:50AM

Re: чтение чужих файлов.

adept November 25, 2011 09:50AM

Re: чтение чужих файлов.

Daniel Podolsky November 25, 2011 09:58AM

Re: чтение чужих файлов.

mva November 25, 2011 10:08AM

Re: чтение чужих файлов.

Igor Sysoev November 25, 2011 10:10AM

Re: чтение чужих файлов.

Daniel Podolsky November 25, 2011 10:16AM

Re: чтение чужих файлов.

Maxim Dounin November 25, 2011 11:04AM

Re: чтение чужих файлов.

adept November 25, 2011 10:36AM

Re: чтение чужих файлов.

Daniel Podolsky November 25, 2011 10:52AM

Re: чтение чужих файлов.

adept November 25, 2011 11:01AM

Re[2]: .

Andrey Repin November 25, 2011 06:06PM

Re: чтение чужих файлов.

adept November 25, 2011 11:18AM

Re: чтение чужих файлов.

adept November 25, 2011 11:41AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 166
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready