URL parser confusion – это когда прокси и бэкенд по-разному разбирают один адрес: nginx не декодирует %2e при проверке location и пропускает запрос, а бэкенд раскрывает %2e%2e в «..» и отдаёт закрытую страницу.
На практике /admin отдаёт 403, но запрос к /static/%2e%2e/admin через тот же прокси возвращает 200 с админкой – одна команда, три секунды, без всякой аутентификации.
— В данной статье мы разберем четыре типа рассинхрона парсеров, роль trailing slash в proxy_pass, трюки с точкой с запятой и обратным слешем, реальные CVE и чек-лист защиты: нормализовать путь до ACL и проверять доступ и на прокси, и на бэкенде.
↘️ Codeby
☑️ Записки Безопасника
⭐️ max.ru/infosec_globe
