Уязвимость конфигураций Nginx с некорректными настройками блока alias

Maxim Dounin mdounin на mdounin.ru
Чт Июл 13 15:54:48 UTC 2023


Hello!

On Thu, Jul 13, 2023 at 05:30:54AM +0300, Gena Makhomed wrote:

> Здравствуйте, All!
> 
> https://www.opennet.ru/opennews/art.shtml?num=59383
> Уязвимость конфигураций Nginx с некорректными настройками блока alias
> 
> Это было сделано для максимизации производительности работы nginx,
> и в данный момент эту проблему в коде nginx уже нельзя исправить
> по причине обратной совместимости - потому что могут прекратить
> работать те конфигурации, которые работают у пользователей сейчас?

Location'ы в nginx'е используют префиксный матчинг, и при 
использовании location'ов без завершающего слэша - в 
соответствующий location подпадает не только запросы в конкретный 
каталог, но и все другие запросы, начинающиеся на заданный префикс.

Судя по всему, многие этого не понимают, и пытаются указывать в 
конфигурации не префиксы, а названия каталогов/файлов - что 
приводит к проблемам (как в сочетании с директивой alias, так и, 
строго говоря, и вообще без неё, см. примеры по ссылке ниже).

Переделывать location'ы, чтобы они работали по другому - не 
выглядит простой задачей, в первую очередь в силу того, что это 
потребует переделки большого количества существующих конфигураций.

Кажется, начать тут стоит с явного документирования возможных 
проблем от некорректного использования префиксов.

Подробнее я на днях писал об этом тут:

https://mailman.nginx.org/pipermail/nginx-devel/2023-July/YSJ5EIRYFWXIEZKKC6OXW76XIPMDTW6A.html

-- 
Maxim Dounin
http://mdounin.ru/


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