如何解决href标签中的XSS漏洞?

时间:2018-08-22 14:26:51

标签: javascript security xss

我刚刚开始使用Web应用程序扫描程序来查看Web应用程序具有哪些漏洞,并且正在获得在href标签中显示xss漏洞的结果。

例如,可以将警报脚本推送到以下URL的href中:

<a href="/contextroot/servlet.do?"><script>alert(81)</script>page=1">2</a>

这只是一个位置,用户可以在该位置之间在不同结果的表之间进行分页,并通过Java TagSupport将其动态添加到jsp。

我尝试用JavaScript调用替换该href位置,但该漏洞仍然存在。我开始怀疑这里的xss我缺少一些基本知识。有没有一种方法可以格式化此标签,使其不容易受到xss的攻击?有什么资源可以解释发生了什么吗?我试过没有很多运气的研究...

1 个答案:

答案 0 :(得分:0)

这听起来像是Reflected XSS的典型情况。


服务器很可能在不转义的情况下读取url参数并注入 直接进入DOM。然后它将DOM服务器提供给用户,从而导致可以将任意脚本注入DOM的行为。

解决方案:服务器应先将查询参数转义/清除,然后再将其注入DOM。

PS。可能性很小,但也可能是客户端(即JavaScript)提取查询参数并将其注入DOM。