質問

が反映中の信託受環境のよう 原因はなお多くの問題 多くの大人気アプリ開発用のjavascriptライブラリ。

  • なぜ ReflectionPermission デフォルトで無効の中だろう。
  • どのリスクは反射ポーズを共有ホスティング環境?

ランダムのため参考参照 MSDN:どのように使用中の信頼ASP.NET 2.0

役に立ちましたか?

解決

反射で悪意のあるコードの検査すべての種類の秘密:な知的財産がいることも、データのあるべき個室で安心のように、接続文字列やパスワード、銀行口座にデータ等。

もちろん、多くのプログラムは、ラる場所には置かないでくださいデータとしてコースをより簡単に妥協ベクトルが、理由はありませんの増加がアプリケーションの攻撃面です。

編集をお持ちの会話からのコメント:

あるんじゃないでしょうか、それが実際のリスクは限のないファイルシステムにアクセスするには何が反射現実の危険をもたらします。の場合は悪い俳優で組み立てはるものが編集)仮想ディレクトリだく場合も反射。(もちろんこのような場合は、その他の潜在的な問題がどのような割引この特定の情報漏えいの脆弱性があります。)

共用ホスティング環境でしょうがを防ぐものでもない。このように分断が投稿しよう ServerFault どの人が言うまでもない。

他のヒント

私は、ユーザーがリフレクションを使用して行うことができるようになりますことを「悪い」何を発見したことがありません。 あなたがそれらの、プライベートまたは保護されたが、私が見てきたものから、何も任意の実際のリスクを課していないとしてマークされているメソッドを呼び出すことができるしているので、人々はおびえ下車ます。

ほとんどの場合、それはあなたが(半)専用ホスティングのために殻から取り出すことを得るために少なくとも部分的に販売手法です:)

私は、このテーマに関する次のMSDNの記事を見つけます:

反射する のための

セキュリティの考慮事項

この記事エコーのジェフの答えます:

  

反射はする能力を提供します   種類に関する情報を取得し、   メンバー、およびアクセスメンバーに。   非公開メンバーをできアクセス   セキュリティ上のリスクを作成します。そのため、   非公開メンバーにアクセスするコード   でReflectionPermissionが必要です   適切なフラグ。

しかし、私は、このリスクは、顧客のホスティングアカウントの間で活用することができるとは思いません。唯一の個人的なリスクをもたらすでしょうが表示されます。たとえば、リフレクションを使用して、私は私のホスティング環境で自分のアセンブリを探ることができます。他の顧客は、しかし、の私ののアセンブリを探求するためにリフレクションを使用できませんでした。彼らは、の自分ののアセンブリを探ることができます。

これは、複数の開発チームが関与する単一のWebアプリケーションのための問題をもたらす可能性があります。 1つの開発チームは、別の開発チームのアセンブリを探求するためにリフレクションを使用することができます。

しかし、これは、共有ホスティング環境のために珍しいシナリオです。ほとんどの共有ホスティングのWebサイトには、コードのすべてのへのフルアクセス権を持っている非常に小さなチームを伴います。言い換えれば、何の秘密はありません。限りアセンブリは、他の共有ホスティングの顧客から安全であるとして、それは問題ではない。

ほとんどのWebアプリケーションをホスティングする共有のためのあらゆるリスクをもたらすべきではない反射を有効にする:

<IPermission class="ReflectionPermission" version="1" Flags="RestrictedMemberAccess"/>

私が間違っているなら、私を修正してください。

scroll top