【问题标题】:Prevent XSS/Cross site scripting vulnerability - request.getParameter() in JSP防止 XSS/跨站脚本漏洞 - JSP 中的 request.getParameter()
【发布时间】:2022-10-06 17:32:39
【问题描述】:

我正在寻找使用 request.getParameter() 修复具有多个变量的 JSP 页面。你能建议这个的替代品吗?

 <%
if(appStatusId == AppCon.DECLINED) {
                String VPC = request.getParameter(constants.PRODUCT_CODE);
        %>


String Make = request.getParameter(constants.VEH_MAKE);

String NewUsed = request.getParameter(constants.VEH_NEWUSED);
    

    标签: javascript java security jsp xss


    【解决方案1】:

    在处理不受信任的用户输入时(例如 request.getParameter() 中的值,您应该始终在显示输入之前对其进行转义。

    使用像StringEscapeUtils(来自Apache Commons Text)这样的实用程序类来转义数据,而不是自己转义。

    对于您的示例,它会是这样的:

    String myVariable = StringEscapeUtils.escapeHtml4(request.getParameter("myParameter")
    

    您可以在 OWASP 网站C4: Encode and Escape Data 找到有关逃生的背景信息

    【讨论】:

    • 谢谢你这工作
    最近更新 更多