Кто-нибудь знает, как исправить уязвимость Checkmarx - манипулирование историей между сайтами для приложений на основе Java? Вот описание, предоставленное сканированием Checkmarx: «метод может привести к утечке условных значений на стороне сервера, позволяя отслеживать пользователей с другого веб-сайта. Это может представлять собой нарушение конфиденциальности».
Вот соответствующий код:
if(user is logged in) {
response.sendRedirect(url);
} else {
response.sendRedirect(url)
}
Погуглив, я нашел документацию Checkmarx, в которой предлагается добавить случайное число к URL-адресу перенаправления. Вот ссылка на документ: https://www.checkmarx.com/wp-content/uploads/2012/07/XSHM-Cross-site-history-manipulation.pdf
Например:
If ( !isAuthenticated)
Redirect(„Login.aspx?r=‟ + Random())
Я попробовал этот подход, но сканирование Checkmarx по-прежнему показывает ту же уязвимость. Не знаю, почему.