我们面临着对我们的应用程序进行XSS攻击的问题。我们通过对GET请求使用普通过滤器来阻止这种情况。
我们正在使用RESTEasy REST webservice调用我们的应用程序。我们的过滤器不会过滤GET / POST / DELETE / PUT请求中的数据。
基本要求是我们需要检查所有字段,标题和cookie的XSS攻击。
我们如何在调用方法之前获取发布的值。就像我们为正常请求做的过滤一样。 我正在为我们的应用程序使用resteasy2.0版本。
无论如何都要在调用rest方法之前更新请求包装器。 请给我们一些建议。提前谢谢。
谢谢, 戈文德。
答案 0 :(得分:3)
Resteasy 2.0允许您在JAX-RS调用上使用拦截器,并通过类似侦听器的对象进行路由。
在调用JAX-RS资源方法之前,您可以声明一个拦截器来检查您的请求主体和/或标头。
您可以在此处查看文档:{{3}}
关于如何使用它的示例:Resteasy Interceptors Documentation
答案 1 :(得分:1)
如果我已经正确理解了你想要一个类似于Servlet的过滤器,那么你可以在它遇到REST函数之前处理每个请求。它还将使您的实现对所有REST alls保持通用。如果我错了,请纠正我。
我想到了一个简单的解决方案,但我从未使用过resteasy2.0。 您可以编写一个公共函数,并从REST方法的第一行调用该函数。检查该函数中的脚本元素,如果发现抛出错误或执行其他操作。