Исправлена проблема с XSS для windows.location.имя хоста

#javascript #reactjs #dom #xss

#javascript #reactjs #dom #xss

Вопрос:

В настоящее время я перенаправляю на внешний URL-адрес, используя следующий код:

 <Route exact path={`${rootUrl}/www/test`} component={() => { window.location = `https://${window.location.hostname}/www/someURL?fixing=true`; return null; }} />
  

Но приведенная выше строка вызывает уязвимости XSS при тестировании. Как мне исправить эту проблему? Должен ли я его кодировать?

Комментарии:

1. Как вы думаете, почему это уязвимо для XSS? Это может быть уязвимо для открытого перенаправления, но возможность использования все равно будет зависеть от внешних факторов, и я не думаю, что это уязвимо для XSS. Это происходит от какого-либо инструмента SAST?

2. Возникла как проблема межсайтового скриптинга в тесте сканирования FOD.

3. Я думаю, что это определенное ложное срабатывание для XSS, и если сервер настроен правильно, это также ложное срабатывание для открытого перенаправления. (Я имею в виду, открытое перенаправление даже не упоминалось, так что технически это не ложный положительный результат как таковой 🙂 но это было бы логичной мыслью и потенциальной уязвимостью в приведенном выше коде из-за перенаправления на домен из пользовательского ввода).