Веб-страница | frontend, backend, fullstack, react, vue, javascript, typescript, css, html
IT и технологии · 25 сентября 2026 г.
Как проверять все пути к res.redirect() в Node.js — 25 сентября 2026 г. в 11:09:54.598
Как проверять все пути к res.redirect() в Node.js В cas-authentication-user 0.3.0 проверка отклоняла внешний returnTo, но брала запасной путь из адреса запроса. url.parse() превращал /\bad.example.com в //bad.example.com, а браузер считал это адресом чужого домена. Исправление одного открытого редиректа оставило второй в той же функции. Аудит начинайте с res.redirect(): перечислите все входящие значения и проверьте запасную ветку после отказа валидатора. Она работает на атакующем вводе и тоже должна вернуть безопасный адрес. В 0.4.0 проверяют результат разбора URL, а внешний адрес заменяют на /. В разборе Megapixel99 на DEV Community есть код. Если пакет есть в проекте, обновитесь до 0.4.0.