Java JSP中的代码问题
我在下面一行中遇到了代码问题Java JSP中的代码问题,java,html,jsp,veracode,Java,Html,Jsp,Veracode,我在下面一行中遇到了代码问题 <input type = "hidden" name = "studentName" value = "<%=viewBean.getStudName()%>"> 问题在 这里,报告的问题是“网页中与脚本相关的HTML标记(基本XSS)的不正确中和。我尝试了cwe.mitre.org中给出的修复程序,但无法正确应用。有人能帮助解决此问题吗?使用 <c:out value=${viewBean.studName}/>
<input type = "hidden" name = "studentName" value = "<%=viewBean.getStudName()%>">
问题在
这里,报告的问题是“网页中与脚本相关的HTML标记(基本XSS)的不正确中和。我尝试了cwe.mitre.org中给出的修复程序,但无法正确应用。有人能帮助解决此问题吗?使用
<c:out value=${viewBean.studName}/>
相反,它根据
CWE
转义XML
软件接收来自上游组件的输入,但确实如此
不中和或不正确地中和特殊字符,例如
“”和“&”,可以解释为web脚本元素
当它们被发送到处理网页的下游组件时
您需要转义html,如果您使用@jigar建议的jstl
标记,则可以这样做
关于SO的一些信息将要修复错误
使用方法如下:@Jigar Joshi和@San Krish建议现在可以工作了,包括jsp中的jstl taglib
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
如果使用JSTL core
,您可以使用escapeXml=“true”
来避免XSS。您需要在打印值时使用html编码。因此,它会给出错误。因此,它应该按照
值=”“>
您需要导入org.owasp.esapi.esapi和org.owasp.esapi.Encoder
这肯定会解决问题。您能指出哪个答案适合您吗?
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
value="${fn:escapeXml(viewBean.getStudName())}"