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

Igor Sysoev igor на sysoev.ru
Сб Ноя 26 11:16:27 UTC 2011


On Sat, Nov 26, 2011 at 06:10:27AM -0500, adept wrote:
> Pavel V. Wrote:
> -------------------------------------------------------
> > Nginx - один из немногих путей.
> > В разбираемой ситуации их,
> > собственно, всего "два":
> > - Веб-сервер nginx, запущенный
> > от имени пользователя,
> >   имеющего право чтения
> > "всех" файлов, в т.ч. и по
> > симлинку.
> > - Веб-сервер apache и его
> > модули, в т.ч. mod-php, также
> > запущенный от имени
> > пользователя,
> >   имеющего право чтения
> > "всех" файлов, в т.ч. и по
> > симлинку.
>  -- 
> > С уважением,
> >  Pavel                         
> > mailto:pavel2000 at ngs.ru
> 
> Собственно, не только nginx и apache, еще mysql,
> но там это закрывается добавлением
> local-infile=0 в my.cnf
> В апаче - mpm-itk, да, он даст прочитать
> тот-же passwd, но читать скрипты соседей не
> даст.
> А вот nginx, даст, при соответствующих
> правах на файл  >=644, кои ставят почти все
> панели на заливаемые файлы.
> В теме ниже, выкладывал патч для nginx'a,
> который закрывает эту возможность, но
> патч для версии 0.5.3 и на более свежие
> версии он не встанет. Буду рад помощи с
> допилом)

Это патч использует realpath(3), а не гипотетический realpath(2)
и имеет те же проблемы, что FollowSymLink в Апаче. То есть,
100% защиты не даёт, а даёт лишь иллюзию защищённости.


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru