AEM Forms 阻止有效的 HTTP 请求

AEM 6.4 Forms 已引入大量安全检查,以防止跨站点脚本 (XSS) 攻击。 这些改进可能会阻止客户在 AEM Forms 中使用自定义组件时发出的一些有效 HTTP 请求。 如果 HTTP 请求被阻止,则Got Exception while Validating XSS消息会显示在服务器日志中。例如,

Got Exception while Validating XSS: HTTP parameter name: params[browserLocale]: Invalid input. Please conform to regex ^[a-zA-Z0-9_]{1,32}$ with a maximum length of 100: org.owasp.esapi.errors.ValidationException: HTTP parameter name: params[browserLocale]: Invalid input. Please conform to regex ^[a-zA-Z0-9_]{1,32}$ with a maximum length of 100

要解决此问题,您可以手动删除安全检查以允许所有 HTTP 请求。 删除安全检查会使系统容易遭受跨站点脚本 (XSS) 攻击。 建议仅将删除安全检查作为临时解决方案。请联系 Adobe 支持人员以获取永久解决方案。

执行以下步骤以临时删除安全检查:

  1. 停止 AEM Forms 服务器。  

  2. 创建 [AEM-Forms-Installation-Directory] \configurationManager\export\adobe-livecycle-<application server_name>.ear 文件的备份。  

  3. 从 adobe-livecycle-<server_name>.ear 文件中提取 easpi-helper-2.x.x.jar 文件。在不同应用程序服务器中,easpi-helper-2.x.x.jar 文件的位置不同:

    应用程序服务器

    easpi-helper-2.x.x.jar 文件的位置

    JBoss

    adobe-livecycle-jboss.ear/lib

    Oracle WebLogic

    adobe-livecycle-weblogic.ear/APP-INF/lib

    IBM WebSphere

    adobe-livecycle-websphere.ear/

  4. 打开 [extracted easpi-helper-2.x.x.jar]/esapi/validation.properties 和 [extracted easpi-helper-2.x.x.jar]/esapi/ESAPI.properties 文件进行编辑。 

  5. 将以下属性的属性值设置为 ^[\\s\\s]*$。例如,Validator.HTTPParameterName =^[\\s\\S]*$

    • Validator.HTTPQueryString
    • Validator.PMCallParameterName
    • Validator.PMCallParameterValue
    • Validator.HTTPParameterName
    • Validator.HTTPParameterValue
    • Validator.xssSafeString

    保存并关闭这些文件。

  6. adobe-livecycle-<application server_name>.ear 中经过更新的 easpi-helper-2.x.x.jar 打包。将更新后的 adobe-livecycle-<application server_name>.ear 部署到应用程序服务器。

    启动 AEM Forms 服务器。

Adobe 徽标

登录到您的帐户