[security advisory] http://wiki.nginx.org/Redmine

Pavel V. pavel2000 at ngs.ru
Tue Mar 10 16:22:50 UTC 2015


Здравствуйте, Дмитрий.

> вообще-то root должен смотреть в папку public, в вашем случае /var/www/redmine/public/

Я предполагаю, что человек, который нашел указанные проблемы, не нуждается в том, чтобы ему
подсказывали, куда должна указывать директива root.

Как вы и сказали, root должен указывать в public/, но в примере, который изначально был на странице,
он указывает не в public/, а на уровень выше. Т.е. должен, но не указывает.

При этом конфиг остается работоспособным - если try_files $uri не нашло нужный файл напрямую,
запрос проксируется на бэкенд и на запрос будет выдан ожидаемый результат.

Проблема возникает в тот момент, когда try_files $uri _срабатывает_ на "специально сформированный
запрос", в результате которого возможна утечка приватных данных.

Конфиг, который был на странице до исправлений:

> server {
>          server_name redmine.DOMAIN.TLD;
>          root /var/www/redmine;
>
>          location / {
>                  try_files $uri @ruby;
>          }
>
>          location @ruby {
>                  proxy_set_header  X-Real-IP  $remote_addr;
>                  proxy_set_header  X-Forwarded-For 
> $proxy_add_x_forwarded_for;
>                  proxy_set_header  Host $http_host;
>                  proxy_redirect off;
>                  proxy_read_timeout 300;
>                  proxy_pass http://redmine;
>          }
> }

-- 
С уважением,
 Pavel                          mailto:pavel2000 at ngs.ru



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