Перейти к содержанию

proxy_pass с путём нормализует/декодирует путь

Gixy Check ID: proxy_pass_normalized

Если в proxy_pass указан URL с путём, nginx будет нормализовать и декодировать путь запроса перед отправкой на бэкенд. Это может менять семантику исходного пути и приводить к уязвимостям.

Небезопасный пример

# Нормализация/декодирование могут менять смысл
location /api/ {
    proxy_pass http://backend/api/;
}

Более безопасные варианты

  • Избегать путей в proxy_pass: указывать бэкенд без пути и управлять склейкой в location;
  • Жёстко валидировать и ограничивать пользовательские пути;
  • Дополнительно проверять пути и доступ на стороне бэкенда.

Зачем это важно

Нормализация/декодирование пути на прокси-слое может приводить к обходам проверок и двусмысленности. Держите обработку путей простой и однозначной.

Ловите такие ошибки до продакшена

GetPageSpeed Amplify запускает Gixy по расписанию на каждом сервере NGINX и оповещает о новых находках и CVE, показывая их рядом с метриками. Настроить непрерывный мониторинг.