BadInputFilter 不再起作用

问题描述 投票:0回答:1

Tomcat: The Definitive Guide (2nd Edition) 一书,O'Reilly,Jason Brittain 提供了一个 Tomcat 过滤器(和一个阀门)来过滤掉来自 HTTP 请求的不良用户输入,以帮助避免恶意攻击。我已经使用该过滤器很多年了,我发现它对于 Tomcat 上运行的 Web 应用程序来说是一个很棒的安全工具。它曾经适用于旧版本的 Tomcat,但对于更新版本的 Tomcat,它不再适用。更糟糕的是,如果默默地失败。你必须通过实验知道它行不通。

过滤器似乎正在编辑请求参数的副本,但当请求到达 Web 服务器时,实际的请求参数并未更改。我尝试了该阀门,但它也无法以同样的方式工作。您可以使用过滤器或阀门来阻止参数中包含错误数据的 HTTP 请求,但您不能再使用它来编辑参数。

有人有办法解决这个问题吗?也就是说,是否存在 BadInputFilter 的版本或替代品可以实际修改请求参数,然后将修改后的参数发送到 Web 服务器。

tomcat
1个回答
2
投票

我无法找到这个问题的良好答案,因此我开发了自己的答案并将其发布在 JavaWorld 上的详细文章中。请参阅重新审视 BadInputFilter 以获取此问题的答案。

© www.soinside.com 2019 - 2024. All rights reserved.