web-dev-qa-db-ja.com

crossdomain.xmlファイルは潜在的なセキュリティリスクを軽減しますか?

ユーザーがファイルをアップロードできるウェブサイトを維持しています。私はすでにいくつかの優れたMIMEチェック、一貫性チェック、ウイルスチェック、ハッシュリストに基づくブラックリストチェック、他のいくつかのカスタムチェックを行っています。また、ファイルアップロード機能に関するベストプラクティスのほとんどを使用しました。しかし、私は次の最悪のシナリオについて考えていました:

ユーザーがSWFファイルのアップロードに成功し、私のドメインからアクセスしてブラウザで実行できるとしましょう。 厳密なcrossdomain.xmlファイルを追加することでリスクを分離または削減できますか?このシナリオでのエスカレーションを防ぐためだけです

私のサイトは現在、フラッシュやシルバーライトを使用していません。そのため、crossdomain.xmlファイルは必要ありません。それでも、ユーザーが悪意のあるコードをアップロードして実行できる場合(たとえば、フラッシュを使用する場合)に備えて、厳密に構成されたcrossdomain.xmlファイルを設定した方がいいのではないかと思います。

私はこれについていくつかの意見を聞いてみたいです!前もって感謝します!

3
Bob Ortiz

私はあなたが不可能(または少なくとも非常に可能性が低い)が発生した場合にあなた自身を保護する必要があるかどうか尋ねていると思います。

Crossdomain.xmlが関係するのは、クライアントが非発信サーバーからコンテンツをロードするように指示されている場合のみです。したがって、厳密なcrossdomain.xmlファイルを追加することで、それを防ぐことができます。

ただし、crossdomain.xmlは、サーバーからSWFファイルに直接アクセスするユーザーから保護しません。そのシナリオには2番目のドメインが含まれていないためです。

WebサーバーでSWFファイルのダウンロードを無効にしていない場合は、最初に無効にします。詳細は、使用しているWebサーバーによって異なりますが、難しいことではありません。

SWFファイルのアップロードとダウンロードの両方をすでに無効にしたら、crossdomain.xmlが特定の攻撃からの保護に役立つと思いますが、すべての攻撃から遠く離れています。だから私は害はないと思いますが、大きな利益も見ていません。

お役に立てれば。

1
Neil Smithline

crossdomain.xmlがないと、そもそもFlashアプリケーションがWebサイトへのリクエストを行うことができないことを意味します。もちろん、ユーザーが自分のcrossdomain.xmlファイルをアップロードすることを許可している場合を除きますか?

さらに、crossdomain.xmlは、最初からドメインから読み込まれるSWFファイルを妨げません。他のドメインからドメインへのクロスドメインリクエストにのみ影響する場合。

ファイルをアップロードできないようにし、後でFlashコンテンツタイプでダウンロードできるようにすることに集中する必要があります。

1
SilverlightFox