2011-10-20 10 views
0

私はFortify Source Analyzer v3.1をスキャンするASP.NET Webアプリケーションプロジェクトを持っています。Fortify Insecureリダイレクト...あなた自身にリダイレクトしますか?

Webプロジェクトには、自分自身にリダイレクトする場合があるASPXが含まれています。

コードは:

Response.Redirect(Request.Url.ToString()); 

フォーティファイはOWASP A10およびCWE/SANS ID 601問題としてそれを分類します。 私はこの脆弱性を理解していません - 現在のURLの非常に特定の場所にリダイレクトしているようです。

なぜそれが悪いと思われますか?

ありがとうございます。

答えて

0

一般に、SCAは、ユーザーからのいかなる形式でも検証されずに直接使用された未検証のデータを探しています。一致したパターンはRequest.Url.ToString()にあるデータを見てからResponse.Redirect(*)を使用しました。この場合、具体的な情報源は無関係かもしれません。そのユーザーが提供したデータのみが使用されたときに検証されませんでした。

もし私があなたにもっと具体的な回答を与えることができるかもしれません。

+0

それはルールのID A232C1F9-8B44-43A4-89DE-835653DC5803です。 現実的には、緊張の精神の中で...ユーザーや何かが実際にRequest.Urlをこのようなページに設定することはできませんか? 私は、Request.Urlのパスが(ビルド時のコードファイル名が実行時にASPXページ名であるという主張をして)いくつかのハードコードされた値であることを確かめることができます私はそれがSCAを満たすだろうと推測します...または特定のパターンです**常に**偽陽性ですか? ありがとうございます。 –

1

Request.Urlから出てくるデータが正当であることを検証するのに害はありません。本当に知っているように.NETに答えられるとは不十分ですが、URLにはユーザー提供のコンテンツが含まれることがよくあります。 QueryStringがありますか?それ以降のデータを含むフラグメント(#foo)はありますか? "http:// server/search/foo"のように、パスの一部は完全に置き換え可能ですか?それはすばらしい国際化URLの1つですか?もしそうなら、返される文字列はどの文字セットですか?リモートの攻撃者が別のホスト名やホストヘッダーを指定できましたか?

私はこれがドロップ・デッド・フォールス・ポジティブであるとは思わない。うまくいけば、誰かをチャイムにチャイムにすることができます...

+0

意味があります。私はクエリーストリングを考慮していませんでした - 一般的なケースでは、これはドロップデッドフォールスポジティブではないことに同意します。 –

関連する問題