如何绕过包含单引号的url的siteminder?

Tec*_*rat 2 authentication xss jsp web-applications siteminder

在我的应用程序代码中,我使用这种URL将用户从一个页面重定向到另一个页面:http://myhost:8001/myapp/list.jsp?name=abc'd&age=10 这里的名称是用户可以在第一页上编辑的动态字段,其中可以包含单引号.

现在问题是当我使用siteminder进行身份验证时,每个url都会通过它进行传递.并且siteminder将此单引号视为此类攻击的尝试并阻止此URL并将用户带到某个访问被阻止的页面.

我该如何解决这个问题?

小智 6

我不认为URI编码会起作用 - Siteminder足够聪明,可以解决这个问题.一些其他类型的编码,比如base64,或者只是用其他东西替换撇号,然后在服务器端替换它.或者,您可以禁用BadCSSChar检查Siteminder代理配置中的撇号.请注意,您可能会将您的站点打开到XSS攻击,并且您的应用程序必须负责检查任何用户提供的字符串,然后再将其显示在网页上.