1

プロジェクトの JSP ページに対して fortify スキャンを実行すると、Fortify はページを修正するためにさらに XSS の問題を訴えます。次のような場所のほとんどに不平を言っています:<c:out>ステートメント。<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>私は関数 escapeXml を使用して試しました${fn:escapeXml(path)}が、これはテキスト全体をそのまま印刷しています。

実際には、以下のように JSP にコードがあります。<C:out value="${cdt}"/>タグの XSS 脆弱性を修正したい。

<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>

<c:out>タグの XSS 脆弱性を修正する方法はありますか?

4

2 に答える 2