【问题标题】:Forbidden You don't have permission to access on searching a special character禁止您无权访问搜索特殊字符
【发布时间】:2017-02-17 14:24:43
【问题描述】:

我正在支持一个 java 应用程序,它有一个搜索栏,可以匹配关键字并从缓存中获取结果。

该应用程序在 Tomcat 中运行,并且也有一个 Apache Web 服务器。

搜索 aaa' 时出现问题,特殊字符 ' 导致了问题,我进入

禁止 您无权访问 /xx/xx/xxxx.jsp

在没有 Web 服务器的情况下,在本地设置中搜索很好。正如我看到的一些帖子表明该问题可能是由 Web 服务器配置引起的。

有哪些可能性?

非常感谢您的帮助。

谢谢, 纳加拉佳JB

【问题讨论】:

    标签: java apache tomcat special-characters http-status-code-403


    【解决方案1】:

    Apache 网络服务器的安全配置一定是造成这种情况的原因。查看 Web 服务器日志,您会发现由于这些字符序列而触发的规则代码/名称。 禁用规则是使这项工作有效的选项之一,但并不总是一个好主意。

    【讨论】:

    • 10.129.239.197 - nagaraja.jb-ext@aaa.com [20/Feb/2017:06:33:43 -0500] "POST /vb/dwr/call/plaincall/__System.pageLoaded .dwr HTTP/1.1" 200 156 10.129.239.197 - - [20/Feb/2017:06:33:52 -0500] "GET /vb/pages/searchResult.jsp?searchTerm=aaa%27&searchTermForDoc= HTTP/1.1" 403 199 这是我在 Web 服务器日志中看到的内容。如何禁用规则?这样做可以吗?
    • 好吧,如果您可以禁用规则,正如我所说,这取决于您的公司安全策略。如果您可以更改您的数据,那么您不必这样做。我在您的评论中没有看到任何违反规则的编号。我不确定您的日志语句触发了什么规则。
    【解决方案2】:

    该问题不是问题,它是 apache Web 服务器或 FireWall 规则的安全约束,以防止使用 %27(单引号)进行跨站点 sctipting 或 sql 注入。 我使用 POST 方法而不是使用 GET 方法来发送请求。这就是我的情况的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-19
      • 1970-01-01
      • 1970-01-01
      • 2021-06-21
      • 2019-09-11
      • 2014-06-07
      相关资源
      最近更新 更多