6

誰かが次のことで私を助けてくれることを望んでいました:

Java スタック イントロスペクションに関する私の理解 (ここでは少し単純化されている可能性があります) は、プロセスがスタック フレームを生成し、それがスタックに追加されるということです。プロセスがシステム コールを行う必要がある場合、スタック イントロスペクション アルゴリズムは、プリンシパル (つまり、リソースにアクセスしようとしているプロセス) が特定のリソースの使用を許可されているかどうかを確認し、それに応じてフレームに注釈を付けます (アクセスの許可または禁止)。 )。

私の質問は次のとおりです。

  1. 上記は正しいですか、何か不足していますか?
  2. JVM はアクセスを許可するか制限するかをどのように決定しますか? ユーザーはこの決定に関与していますか?
  3. この研究では、フレームが前のフレームの「信念セット」を継承/伝えられている例 (図 2) があります。この例で、悪意のあるコードの実行を阻止するものは何ですか?
4

1 に答える 1

3

JVM はアクセスを許可するか制限するかをどのように決定しますか? ユーザーはこの決定に関与していますか?

現在インストールされている に委任しSecurityManagerます。

上記は正しいですか、何か不足していますか?

SecurityManager、スタックをイントロスペクトするか、他の基準を使用できます。ブラウザで実行されるSecurityManager関連付けられたアプレットはイントロスペクトを行うため、これは少なくとも 1 つのドメインで適切です。

この研究では、フレームが前のフレームの「信念セット」を継承/伝えられている例 (図 2) があります。この例で、悪意のあるコードの実行を阻止するものは何ですか?

本当に何もありません。Java のセキュリティは混乱しており、最近では合法的なサイトがほとんど使用されていないため、ブラウザーで Java を無効にすることを推奨する人が多くいます。

2010 年の「Sun Java は最も脆弱なプラグイン」です。

于 2012-03-11T04:05:41.970 に答える