gpt4 book ai didi

java - 如何防止 JSP scriptlet 异常中的 XSS?

转载 作者:行者123 更新时间:2023-12-02 02:50:01 25 4
gpt4 key购买 nike

我有一个 JSP 页面,其中包含以下形式的脚本

<%
String imageId = request.getParameter("imageId");
if(getImageById == null){
throw new JspException("No data found for " + imageId);
}
%>

抛出异常时,会打印请求参数“imageId”,从而允许XSS攻击。

清理 Exception() 输入以防止这种情况的最佳方法是什么?

最佳答案

这取决于图像 ID 应该是什么。

如果它是一个数字,那么首先尝试解析它。如果您需要字符串数据(如 GUID),您应该检查它是否遵循规范。

无论哪种情况 - 如果 ID 无效,则不要将其传回 - 只是说未找到数据。

如果ID可以是任意随机字符集,则在JSP端使用JSTL

<c:out value="${myId}"/>

escapeXml(myId)

来自

<%@taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="t" %>

这可能有帮助:How can I escape special HTML characters in JSP?

或者这个:Recommended method for escaping HTML in Java

这是 OWASP 的 sanitizer :https://github.com/owasp/java-html-sanitizer

关于java - 如何防止 JSP scriptlet 异常中的 XSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44004748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com