有谁知道如何修复Checkmarx漏洞-基于Java的应用程序的跨站点历史操作?
这是Checkmarx scan提供的描述-“该方法可能泄漏服务器端的条件值,从而使用户可以从另一个网站进行跟踪。这可能构成侵犯隐私的行为。”
这是相关代码:
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扫描仍然显示相同的漏洞。
最佳答案
XSHM可以是CX文档中的CWE-203(http://cwe.mitre.org/data/definitions/203.html)。
问题可能是复杂的也可能是简单的。仅用您的5行代码,我们无法确切地说出什么是好的解决方案。