Главная / Unvalidated Redirects and Forwards
Что такое Unvalidated Redirects and Forwards
Приложение перенаправляет пользователя на сторонние сайты не предупреждая его об этом. Например при клике по ссылке или при запросе страницы вида site.ru/redirect?url=hack.me. Либо приложение запоминает url на который необходимо вернуть пользователя и не проверяет его валидность (домен) и тем самым приложение может отправить пользователя на фишинговый сайт.
Как определить что приложение уязвимо
- На сайте есть редиректы? Проверяется ли url на который необходимо совершить редирект?
- Пользователю показывается предупреждение о том, что он будет перенаправлен на внешний сайт?
Примеры уязвимости
На сайте есть страница redirect.php которая принимает параметр url и перенаправляет на него пользователя. Злоумышленник подставляет туда url фишингово сайта и пользователь ничего не подозревая уходит на фишинговый сайт и вводит там свои логин и пароль.
http://www.example.com/redirect.php?url=evil.com
Защита
- Избегать использование редиректов
- Не использовать пользовательские данные при редикертах (тех что в GET запросах)
- Предупреждать пользователей когда они покидают сайт