トップ回答者
意図しないリダイレクトについて

質問
回答
-
yukimaiさんの作られたものの中に、どのようなリダイレクトが存在するのか、それを知っているのはyukimaiさん自身であり、他に知っている人はいません。
どのようなリダイレクト処理をしたのか提示していただけなければ、それが「意図しないリダイレクト」なのかどうか他の人は判断することもできませんし、もしそのリダイレクトを回避する実装方法があったとしても提案することもできません。
もしくは第三者が「それは意図した、必要なリダイレクトです」と根拠なく言ったら、それでセキュリティチェックはパスされるのですか?何を質問したいのか、どのような回答を望んでいるのか、ご自身で把握していますか?
- 回答としてマーク 山本春海 2011年8月26日 5:09
-
なによりもまず、 xxxx.jp ドメインには所有者がいます。もしかして yukimai さんの所有されているドメインなのですか? もしアドレス例として挙げたのであれば、所有者に迷惑ですので勝手に使用すべきではありません。このような場合、exmaple.jpを使うことになっています。
次にリダイレクト前のアドレスが http://localhost/ となっていますが、localhost、つまりコンピューター内部でのセキュリティチェックについての質問なのですか?
localhost → example.jp のリダイレクトと、example1.jp → example2.jp のリダイレクトでは考慮すべきセキュリティの観点が異なります。本題ですが、localhost → example.jp へのリダイレクトと表現されましたが、ASP.NET上でどのようなコードを書かれたのでしょうか? その内容がわからないと判断できません。
- 回答としてマーク 山本春海 2011年8月26日 5:09
-
「意図しないリダイレクト」なんて名称からして、総務省等が公共分野等に行っている診断ではないかと推測します。
ここでいう意図しないリダイレクト処理とは、
ユーザの操作なしにユーザエージェントを異なるURLへ移動する行為
に対するもので、この際に使用される URL に外部からのパラメータを使用している場合に、そのパラメータに指定された別のサイトへ移動してしまう脆弱性がある場合を指しています。多くの場合は、HTTP/200 の返答や META タグや JavaScript 等による自動遷移があげられます。
これは、サイトデザイン全体にかかることなので、ASP.NET に特有の解決策はありませんが、典型的な例としては Response.Redirect() を呼び出している場合に、Redirect() に与える URL パラメータが外部から入力されたものである場合があげられます。(総務省の診断だとクエリパラメータが例示された書類が届きますが、その値が URL のクエリにあるかどうかは厳密には関係ありません)
※ イントラなので外部から指摘があったわけではなさそうですね。LASDEC のツール類でのチェックかもしれませんが、まあ上記のようなかんじで、サイトデザイン全体を確認する必要があります。
> クロスサイトフォージェリー対策のような事がされていれば、意図しないリダイレクト対策になるんでしょうか?
概ねそうなのですが、XSRF とは攻撃元サイトと攻撃先サイトの関係が逆になります。XSRF の対策がなされているというのは防御的な面での対応ですが、「意図しないリダイレクト」は、Web サイトの脆弱性によって、XSRF の攻撃者になってしまわないための対策です。
- 回答としてマーク 山本春海 2011年8月26日 5:09
すべての返信
-
yukimaiさんの作られたものの中に、どのようなリダイレクトが存在するのか、それを知っているのはyukimaiさん自身であり、他に知っている人はいません。
どのようなリダイレクト処理をしたのか提示していただけなければ、それが「意図しないリダイレクト」なのかどうか他の人は判断することもできませんし、もしそのリダイレクトを回避する実装方法があったとしても提案することもできません。
もしくは第三者が「それは意図した、必要なリダイレクトです」と根拠なく言ったら、それでセキュリティチェックはパスされるのですか?何を質問したいのか、どのような回答を望んでいるのか、ご自身で把握していますか?
- 回答としてマーク 山本春海 2011年8月26日 5:09
-
返信ありがとうございます
スキル不足で申し訳ありません。
の場合?以降にURL を別ドメインのもの(http://www.xxxx.jp/)に変更
してリクエストした場合に遷移したら意図しないリダイレクトになるのでしょうか?http://localhost/XXXXX/XXXXXX.aspx?FORM_ID=%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%9e%e3%82%b9%e3%82%bf%e3%83%a1%e3%83%b3%e3%83%86
↓
http://www.xxxx.jp/に変更して遷移したら意図しないリダイレクトになるのでしょうか?ご教授お願い致します。
-
なによりもまず、 xxxx.jp ドメインには所有者がいます。もしかして yukimai さんの所有されているドメインなのですか? もしアドレス例として挙げたのであれば、所有者に迷惑ですので勝手に使用すべきではありません。このような場合、exmaple.jpを使うことになっています。
次にリダイレクト前のアドレスが http://localhost/ となっていますが、localhost、つまりコンピューター内部でのセキュリティチェックについての質問なのですか?
localhost → example.jp のリダイレクトと、example1.jp → example2.jp のリダイレクトでは考慮すべきセキュリティの観点が異なります。本題ですが、localhost → example.jp へのリダイレクトと表現されましたが、ASP.NET上でどのようなコードを書かれたのでしょうか? その内容がわからないと判断できません。
- 回答としてマーク 山本春海 2011年8月26日 5:09
-
「意図しないリダイレクト」なんて名称からして、総務省等が公共分野等に行っている診断ではないかと推測します。
ここでいう意図しないリダイレクト処理とは、
ユーザの操作なしにユーザエージェントを異なるURLへ移動する行為
に対するもので、この際に使用される URL に外部からのパラメータを使用している場合に、そのパラメータに指定された別のサイトへ移動してしまう脆弱性がある場合を指しています。多くの場合は、HTTP/200 の返答や META タグや JavaScript 等による自動遷移があげられます。
これは、サイトデザイン全体にかかることなので、ASP.NET に特有の解決策はありませんが、典型的な例としては Response.Redirect() を呼び出している場合に、Redirect() に与える URL パラメータが外部から入力されたものである場合があげられます。(総務省の診断だとクエリパラメータが例示された書類が届きますが、その値が URL のクエリにあるかどうかは厳密には関係ありません)
※ イントラなので外部から指摘があったわけではなさそうですね。LASDEC のツール類でのチェックかもしれませんが、まあ上記のようなかんじで、サイトデザイン全体を確認する必要があります。
> クロスサイトフォージェリー対策のような事がされていれば、意図しないリダイレクト対策になるんでしょうか?
概ねそうなのですが、XSRF とは攻撃元サイトと攻撃先サイトの関係が逆になります。XSRF の対策がなされているというのは防御的な面での対応ですが、「意図しないリダイレクト」は、Web サイトの脆弱性によって、XSRF の攻撃者になってしまわないための対策です。
- 回答としてマーク 山本春海 2011年8月26日 5:09
-
本件は、localhost→サーバマシン名へのリダイレクトについての質問ということですか? あえて誤解を与える表現を好んで使用されているようにも受け取れますが…。
質問内容が不十分なので、足りない部分を確認しているのに答えられないようですし、質問することが目的であり、回答を必要としているわけではないのでしょうか?
クロスサイトフォージェリー対策のような事がされていれば、意図しないリダイレクト対策になるんでしょうか?
意図しないリダイレクトには複数種類がありますので、クロスサイトフォージェリー対策??だけでよいとは言えません。また、スキル不足を自覚されているとは思いますが、何をもって「対策をできた」と判断されるつもりなのでしょうか? これは別スレッドでも「暗号化されているかどうか、それを確認スキルはお持ちですか?」と質問しましたけど…。