Задать вопрос
@likejavascript

Как правильно проверить open redirect на безопасность?

Я хочу предотвратить Open redirect атаку в своем nodejs приложении.

Сейчас мая реализация следующая:

var = require('url');

// http://example.com/login?redirect=http://example.com/dashboard
app.route('/login', function (req, res, next) {
   var redirect = req.query.redirect,
        paths = url.parse(redirect); 

   if (paths.host !== req.headers.host) {
      return next(new Error('Open redirect attack detected'));
   }

   return res.redirect(redirect);
});


Безопасно редиректить нужно на основной домен и поддомены:

Например:
example.com/dashboard
dashboard.example.com

Подскажите насколько безопасна моя реализация и что нужно улучшить?
  • Вопрос задан
  • 603 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Бэкенд на Node.js для фронтенд-разработчиков
    3 месяца
    Далее
  • Skillbox
    Node.js
    2 месяца
    Далее
  • Stepik
    Microservices - паттерны и практика построения микросервисов
    1 неделя
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы