孤立


  Share  
|


システムで、 2つのプロセスを分離する方法があります。 最初に、このプロセスが提示する環境を実行しているコンピュータに表示されるだけでなくプロセスまたはそれらのプロセスに孤立します。 第二は、環境が提供されるアクションは、どのプロセスを分析して情報を漏らすかどうかを判別します。 最初のタイプのプロセスを防ぎ、環境からアクセスしてコンピュータシステムの基礎とされていないすべてのプロセスやリソースをその環境の団体です。 2つ目のタイプの環境をエミュレートするコンピュータはありませんします。 それだけを変更して、既存のコンピュータとの間のインターフェースプロセス(可)します。

仮想マシン

最初のタイプの環境では、仮想マシンと呼ばれます。

仮想マシンは、シミュレートするプログラムを開発するには、ハードウェア(抽象的な可能性)のコンピュータシステムです。

仮想マシンを使用する仮想マシンと呼ばれる特殊なオペレーティングシステムを提供する仮想マシンモニターを従来のオペレーティングシステム上で実行することができ

主な利点は、仮想マシンのオペレーティングシステムは、既存の必要はありません更新します。 仮想マシンモニタで実行されています。 仮想マシンモニタして、希望のセキュリティポリシーを適用します。 これは透明性をユーザーにします。 仮想マシンモニタとして機能し、セキュリティ上のカーネルです。

政策面では、仮想マシンモニタ扱っている科目(科目された仮想マシン)します。 たとえ数百人の1つのプロセスを実行する仮想マシンは、仮想マシンモニタについては、仮想マシンのみを知っています。 このように、セキュリティチェックを適用することはでき科目、およびコントロールに適用され、これらのプロセスを実行して、これらの科目をします。 このルールを満たして推移して閉じ込めました。

例: kvm/370は、セキュリティ強化版のibmのvm/370仮想マシンモニターします。 このシステムでは、ユーザーが提供する仮想マシン、および1つの目標だった仮想マシンの間の通信を防ぐため、別のセキュリティクラスのため、ユーザーは、さまざまなセキュリティシステムを使用してクラスの可能性を同時にします。 のようなvm/370 、仮想マシンに提供することをminidisksとシステムを共有するのある地域では許されます。 とは違ってvm/370 、それを使ってアクセスできるように安全保障政策調停を共有するには、ディスクの分野でのシステム間の通信を制限します。


例:カーガーや同僚を開発し、デジタルイクイップメント社の仮想マシンモニタ( vmm )は、 12バックスします。 モニターは、カーネルとセキュリティのどちらかを実行することができたり、 ultrix vms上でのオペレーティングシステムです。 ネイティブのvmmを実行するハードウェアおよびバックスが呼び出されるたびに、仮想マシンを実行する特権命令します。 その構造は、典型的な仮想マシンのセキュリティを提供するよう設計します。

バックスは、 4つのレベルの権限:ユーザー、スーパバイザ、エグゼクティブ、およびカーネルモードがあります。 互換性を提供するために仮想マシンは、仮想マシンにも4つのレベルの特権をする必要があります。 しかし、このプロセスを使用すると、カーネルモード特権にアクセスする手順については、ハードウェアに直接バックスします。 のみこれを行うには、 vmmが許可されます。 仮想マシンのカーネルにアクセスすることはできませんモードになります。 解決策を提供するのは、仮想モードがあります。 これらのモードはvmのユーザー(ユーザーモードに対応した)は、上司vmのモードでは、カーネルモードとvmのvmの幹部と(実際に両方のエグゼクティブモード)します。

このvmm科目は、仮想マシンのユーザーとします。 vmmには、基本的な、フラットファイル、独自のシステムを使用し、残りのパーティションやディスクの空き容量のうち、仮想マシンします。 これらのマシンを使用してファイルの構造がかれらの望むもので、各仮想マシンにはそれぞれ独自のファイルシステムを設定します。 件名と、各オブジェクトには、ラベルのマルチレベルのセキュリティとの整合性、およびセキュリティレベルとの整合性を形成するクラスにアクセスします。 2つのエンティティが同じクラスにアクセスする場合だけで、安全保障との整合性のラベルは同じですが、別の場合、 1つのエンティティの優位を占めている場合にのみ、安全保障との整合性の両方のクラスを支配します。

不可欠な要素でvmmは、監査機構ます。 このメカニズム解析後の処置を記録します。


仮想マシンを提供するために、同じインターフェイスのコミュニケーションのための仮想マシンを他のコンピュータに提供することで、それらのチャンネルの通信を制御できます。または切断されました。 前述の場合、 1つのホストに複数の仮想マシンを実行すると、これらの仮想マシンの物理的なリソースを共有して、ホストされて実行されます。 (かれらの論理を共有することもでき資源に応じて、どのようにvirtualizingカーネルが実装されます。 )この肥沃な土地を提供するためにひそかにチャンネルがあります。

sandboxes

サンドボックス内での遊び場の子供たちのために安全な環境を提供するにとどまるインチのままにしている場合は子供たちのサンドボックスの監督をせずに、彼らのことかもしれないことはできませんがあります。 サンドボックスは、コンピュータに似ています。 それに安全な環境を提供するためのプログラムを実行します。プログラムの場合は"残す"砂場で、彼らのことかもしれないことはできませんがあります。 両方のタイプのsandboxesを制限して乗員の行動します。

サンドボックスには、環境での行動のプロセスによると、セキュリティポリシーが制限されます。

システムの制限を実施する可能性は2つの方法があります。 第一に、サンドボックスを必要に応じて実行環境を制限することができます。 これは、通常行われる追加のセキュリティメカニズムをチェックして図書館やカーネルです。 プログラム自体ではありません更新します。 たとえば、 vmmカーネルは、以前の話し合ったので、 constrainsのサンドボックスにアクセスするのを実行しているオペレーティングシステム(無修正)しています。 java仮想マシンは、サンドボックスのため、セキュリティマネージャへのアクセスを制限するプログラムをダウンロードし、システムリソースのセキュリティポリシーによって変化します。

例:カーネルの動作は、ファイアウォールでは卑劣なやつの種類を限定するプロセスを施行します。 サンドボックスの例は、これは、カーネルに組み込まれ、それには、所有して、ベンダーのサンドボックスで定義されています。 変更されることを意図していないサイトにします。 このようなデザインは、典型的なターンキーシステムでは、これは、卑劣なやつは、ファイアウォールの使用を意図します。

java仮想マシンは、アプレットでのダウンロードが実行されると、別の例では、サンドボックスします。 サンドボックスの制限を設定して、アプレットのファイルにアクセスできることにして、アプレットのホストと接続することができます。 その他のセキュリティメカニズムを強化するサンドボックスします。

dteが、施行のタイプのメカニズムをdtelでは、カーネルの変更を有効に例で、システム管理者を設定し、独自のsandboxesます。 カーネルの制約を強制しています。


2つ目の方法は施行を修正するプログラム(またはプロセス)が実行されます。 動的なデバッガといくつかのプロファイラーこの手法を使用してブレークポイントを追加するコードと、そのときにトラップが発生すると、実行中のプロセスの状態を分析しています。 variantで、ソフトウェアの故障隔離として知られ、追加の手順を実行してメモリへのアクセスをチェックしたり、他のプログラムを実行するかを確認し、どのようにしようとすると、セキュリティポリシーに違反してエラーが発生しました。

例:ヤヌスサンドボックスを実装します。 これは、システムコールの実行環境では、閉じ込められたと確認します。 ユーザーがそれを実行するとモードへのアクセスを制限するオブジェクトを信頼していないプログラムです。 ヤヌスの枠組みで構成するには、実行時のチェックで、モジュールと、これに決定してのアクセスは許可されます。

ヤヌスの最初の設定ファイルを読み込みます。 このファイルを特定のモジュールをロードするよう指示しています。 身分証明書とともに、モジュールのリストは、制約します。 次の例は、環境変数の設定ファイルを定義しifsの子供のため、子供へのアクセスを制限すると、ファイルシステムです。 子供の任意のファイルにアクセスできませんが、それ以外の名前は以下のとおり。 子供を読んだり、書いたりすることができ、任意のファイルは/ usr以外のファイルシステムに/ usr / libや/ usr / local / libにコピーするディレクトリ(これは、読み取り専用)とでは/ usr / binに(読み取りと実行)します。 任意のファイルを読むことができ、児童の/ libディレクトリを読むことができ、任意のファイルを実行すると、 / sbinや/ binにディレクトリにある。 設定ファイルは以下のとおりで、それぞれの単語の最初の行は命令の名前やその他の言葉は、モジュールに渡される引数モジュール( " # "コメントを開始します) 。

  #基本的な基本的なモジュール 
  # defineのsubprocessの環境変数を仮定するputenv = " \ t \ "パス= / sbin : / binに: / usr / binにはtz = pst8pdt 
  #を否定するのアクセスを除くすべてのファイルが/ usrパスを否定するの読み取り、書き込みを許可パス*読み出し、書き込み/ usr / * #ファイルを読むことができるようにsubprocess #ライブラリのディレクトリパスを許可するために必要な動的ロードの読み込み/ lib /に* / usr / libに/ *は/ usr / local / lib /に* #子供のように必要なパスを許可するプログラムを実行することができ読んで、実行/ sbin / * / binに/ * / usr / binに/ * 

各モジュールconstrainsシステムコールします。 の枠組みを構築するモジュールを使用して、各リンクのリストを監視しているシステムコールします。 リストの許可および許可アクションを定義します。 このリストには、一度に建設され、ヤヌスの枠組みを呼び出すプログラムのような方法で監視しているシステムのすべての通話が可能に閉じ込められました。

このプログラムを実行するときにシステムコールを監視し、プログラムのトラップとヤヌスの枠組みが呼び出されます。 アクセスできるようにすることは、引数に供給されsysemコールします。 それを検証してシステムコールで、これらの特定のパラメータが許可されます。 場合、システムコールは使用できません、子供の環境の枠組みを設定しますので、システムコールが表示されませんでした。 システムコールが認められた場合は、その子の枠組みに制御を返し、コントロールに順番にパスをカーネルにします。 に戻り、制御が、枠組の中で、内部状態を更新すると、その結果を返すの子供だった。

例を使用するだろうmime対応メールを読んでいます。 可能性が1つのプログラムを設定してメールを読むに制御を渡す追伸エンジンに表示されます。 エンジンには、いくつかのようなメカニズムを実行するためのシステムレベルのコマンドは、 postscriptファイルに埋め込まれています。 このため、攻撃者がファイルを削除するには、コマンドファイルを追伸します。 ご希望のエンジンを実行し、受取人に表示され、ファイルを読み込み、およびいくつかのだろう、彼女のファイルを削除します。 しかし、ユーザー(またはシステム管理者)を設定することができヤヌスの設定ファイルを任意のsubprogramsの実行を許可します。 その後、組み込みコマンドが検出される(これを実行するには、システムコール)と拒否されます。


仮想マシンモニタのように、サンドボックスのトラステッドコンピューティングベースのフォームの部分です。 サンドボックスが失敗した場合は、それはそれよりも少ないの保護を提供するものと考えられます。 したがって、サンドボックスを正しく実装することを確認し、希望のセキュリティポリシーは非常に重要で、システムの安全を守るためです。

これは、記事を追加したフレッドフォスター

Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions