Когда я делаю свое усиленное сканирование на моих проектах JSP-страниц, Fortify жалуется на дополнительные проблемы XSS для исправления страниц. Он жалуется на большинство таких мест, как: <c:out>
заявлений. Я попытался использовать функцию escapeXml от <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
, используя ${fn:escapeXml(path)}
, но это весь текст, как есть.XSS-уязвимости <c:out> теги в JSP-страницах
Фактически у меня есть код в моем JSP, как показано ниже. Я хочу исправить уязвимость XSS для тегов <C:out value="${cdt}"/>
.
<c:set var="checked">
checked="checked"
</c:set>
<c:set var="cdt" value="" />
<c:set var="dbt" value="" />
<c:choose>
<c:when test="${casesForm.institutionRepresents == 'C'}">
<c:set var="cdt" value="${checked}"/>
</c:when>
<c:when test="${casesForm.institutionRepresents == 'D'}">
<c:set var="dbt" value="${checked}"/>
</c:when>
</c:choose>
<div class="field LINK_show">
<label><bean:message key="label.institutions" /></label>
<div style="display:inline;padding-left:10px">
<input type="radio" name="institutionRepresents" value="A" <c:out value="${cdt}" />><bean:message key="label.credit" />
<input type="radio" name="institutionRepresents" value="I" <c:out value="${dbt}" />><bean:message key="label.debit" />
</div>
</div>
Есть ли способ исправить XSS уязвимость в <c:out>
теги?
Вы имеете в виду, что я должен написать checked = " проверено ". – Mdhar9e
@ Mdhar9e Вы можете добавить атрибут escapeXml = "false" в тег c: out. Проверьте источник страницы в браузере. На выходе не должно быть " – fgb