2

私のアプリケーション コードでは、この種の URL を使用してユーザーをあるページから別のページにリダイレクトしています。http://myhost:8001/myapp/list.jsp?name=abc'd&age=10 ここで name は、ユーザーが最初のページで編集できる動的フィールドで、その中に一重引用符を含めることができます。

問題は、認証に siteminder を使用するときに、すべての URL が渡されることです。そして、siteminder はこの一重引用符をそのような攻撃の試みと見なし、この URL をブロックして、アクセスがブロックされたページにユーザーを誘導します。

この問題を解決するにはどうすればよいですか?

4

4 に答える 4

6

URI エンコーディングが機能するとは思いません -- Siteminder はそれを理解するのに十分賢いです。base64 などの他の種類のエンコーディング、または単にアポストロフィを別のものに置き換えてから、サーバー側で元に戻します。または、Siteminder エージェント構成でアポストロフィの BadCSSChar チェックを無効にすることもできます。サイトを XSS 攻撃にさらす可能性があることに注意してください。アプリケーションは、ユーザーが指定した文字列を Web ページに表示する前にチェックする必要があります。

于 2012-12-03T22:38:18.253 に答える
0

%27 で一重引用符を URI エンコードしてみてください。

于 2012-12-01T15:28:44.133 に答える