安全なコンピューティング設計の原則
安全な設計の原則を表明するこのセクションで議論され常識的なアプリケーションのシンプルさと制限の点で計算します。
最小権限の原則
この原則をどのように制限する権限が付与されます。
最小権限の原則に服従しなければならない状態でのみそれらの権限を与えられたことを完了するために必要な課題なのです。
件名を必要としていない場合、アクセス権は、件名を右にすべきではなかった。 また、機能の件名(アイデンティティとは対照的に)すべき権利の譲渡を制御します。 具体的な行動を必要とした場合は、件名のアクセス権が拡大され、これらの余分な権利を放棄しなければならないの完成してすぐに行動します。 これは、類似の"を知る必要が"ルール:件名場合はアクセスできるようにする必要はありませんオブジェクトを実行して、そのタスクをするべきではない、そのオブジェクトにアクセスする権利を持っています。 もっと正確に言えば、服従する必要が追加された場合は、オブジェクトを、ではなく既に含まれている情報を変更するオブジェクトは、追加されなければならない権利を与えられた権利ではなく書き込みました。
実際には、ほとんどのシステムでの細かな権限を持っていないとの原則を正確に適用するには許可が必要です。 デザイナーのセキュリティメカニズムを適用することができ、この原則として最高です。 このようなシステムでは、セキュリティ上の問題が多いの結果よりもさらに深刻な結果をもたらすシステムでは、この原則に従っています。
例: unixオペレーティングシステムへのアクセスコントロールを適用されませんユーザーのルートにあります。 と、ユーザーの任意のプロセスを終了することができ、読み取り、書き込み、または任意のファイルを削除します。 このため、ユーザーは、ファイルの削除バックアップを作成することもできます。 windows上の管理者アカウントの権限が同じです。 |
この原理を必要としなければならないプロセスとして限定される可能な限り小さくするドメインを保護します。
例:メールサーバーからのメールを受け付け、インターネットやメッセージをスプールディレクトリにコピーし;ローカルサーバーは、配達を完了します。 メールサーバのニーズにして、適切なネットワークポートへのアクセス権は、ファイルをスプールディレクトリを作成し、これらのファイルを変更します(つまり、メッセージが表示され、ファイルをコピーして、配達先住所を書き換える必要に応じて、追加して、適切な"を受け取った"行)します。 なければなら降伏する権利をファイルにアクセスされ次第、書き込みが完了したら、ファイルをスプールディレクトリていないため、そのファイルに再度アクセスする必要があります。 サーバーにアクセスできるようにすべきではないユーザーの任意のファイル、または任意のファイル以外に、独自の設定ファイルです。 |
デフォルトの原理フェイルセーフ
この原則をどのように制限する権限を初期化する際には、件名またはオブジェクトが作成されます。
フェイルセーフの原則をデフォルトの状態で、件名が与えられない限り明示的なオブジェクトにアクセスできるように、アクセスできるようにすることを否定しなければならないオブジェクトです。
この原理を必要とし、デフォルトのオブジェクトにアクセスできるようにはありません。 にアクセスするたびに、権限を、またはいくつかのセキュリティ関連の属性ではありません明示的に許可すると、否定しなければならないことです。 また、件名ことができない場合、そのアクションまたはタスクを完了することで、これらの変更を元に戻すことは、前にセキュリティのシステムの状態前に終了します。 この方法では、たとえプログラムが失敗する場合、システムはまだ安全です。
例:ことができない場合、メールサーバーのファイルを作成するには、スプールディレクトリで、ネットワーク接続を閉じなければなら、問題のエラーメッセージが表示さ、および停止します。 保存しようとすることはありませんというメッセージまたは他の権限を拡大し、メッセージを別の場所に保存するため、アタッカー能力を使うことができ、他のファイルを上書きまたはその他のディスクが満杯になる(サービス拒否攻撃)します。 保護してメールをスプールディレクトリを作成し、書き込みアクセスできるようにすべき自体だけを読んだり、削除してメールサーバーにアクセスすると、ローカルサーバーのみにします。 なければならない他のユーザーのアクセスをディレクトリにあります。
実際には、ほとんどのシステムでは、管理者のアクセスを許可するメールをスプールディレクトリにあります。 最小権限の原則にされ、その管理者のみにアクセスできるようにしなければならない科目とオブジェクトに巻き込まれるキューイングおよびメール配信します。 に見てきたように、この制約を最小限に抑え、脅迫している場合は、管理者のアカウントを侵害します。 損傷したり、メールシステムを破壊することができ、他のだけど、何もすることができます。 |
経済の原理機構
この原理を簡略化してセキュリティ機構の設計と実装します。
経済の原則を機構によると、セキュリティメカニズムなければならないような簡単なことです。
設計と実装は、単純な場合は、エラーのために存在する可能性が少なくなります。 テストのチェックと複雑なプロセスが少ないため、少ない部品やケースでテストする必要があります。 複雑な仕組みについては、頻繁にシステムを前提とする環境において実行されています。 これらの仮定が間違っている場合は、セキュリティ上の問題が生じる場合があります。
例: identプロトコルを送信したユーザー名に関連付けられているプロセスには、 tcp接続してリモートホストをします。 メカニズム上のホストにアクセスすることができ、その結果に基づいて、結果をidentプロトコルと仮定して元のホストが安心します。 bのホストへの攻撃を決定した場合、ホストは、接続して送信することはできないことに同意します個人情報のidentのリクエストに対応しています。 これは、例のように間違った仮定機構作りについては、環境(具体的には、そのホストbの信頼することができます) 。 |
インターフェイスモジュールを他の容疑者は、特に、モジュールを頻繁に行うため、暗黙の前提条件についてのパラメータを入力または出力または現在のシステムの状態;これらのいずれかの仮定が間違ってなければ、モジュールを生産する可能性の行動を予期しない、と誤って、結果を確認する。 外部エンティティの相互作用など、他のプログラム、システム、または人間は、この問題を増幅されます。
例:指のプロトコルに関する情報を送信するユーザーまたはシステム。 多くのクライアントの実装を想定して、サーバーの応答が十分に形成されます。 しかし、もし、攻撃者がサーバーを作成するにストリームを生成し、無限の文字と、指がクライアントに接続するためには、クライアントがすべての文字を印刷します。 その結果、ログファイルのディスクの可能性があると満たされて、その結果、サービス拒否の攻撃をホストして照会します。 これは間違った仮定の例については、クライアントに入力されます。 |
調停の原理を完了
この原理を制限してキャッシュの情報を、簡単につながることが多いのメカニズムを実装します。
調停の原則の完全なアクセスを要求してすべてのオブジェクトにチェックしていることを確認して許可されます。
件名しようとしたときに読んで、オブジェクトは、オペレーティングシステムの調停アクションすべきだ。 第一に、それを決定した場合は件名を読むことは許されオブジェクトです。 もしそうなら、それを読んでリソースを提供して発生します。 件名しようとした場合は、オブジェクトをもう一度読んで、このシステムは、まだすべきことを確認して件名を許可するオブジェクトを読んでいます。 ほとんどのシステムではない2番目のチェックをします。 かれらは、キャッシュの検索結果の最初の2つ目のアクセスをチェックするとベースのキャッシュ結果を表示しています。
例:しようとしたときにファイルを読むunixのプロセスは、オペレーティングシステムのプロセスは許可を決定した場合は、ファイルを読み込みます。 もしそうなら、その過程を受信するとファイルディスクリプタのエンコーディングを許可してアクセスできます。 その過程たいときに、ファイルを読み込み、それをカーネルにプレゼントファイル記述します。 次に、カーネルにアクセスできるようにしています。
場合、ファイルの所有者の許可を禁止する過程で、ファイルを読み込み後、ファイルディスクリプタの発行により、まだカーネルにアクセスできるようにします。 この計画を完全に調停の原則に違反して、 2つ目のアクセスではありませんので、オンにします。 キャッシュの値が使用され、結果的に拒否している無駄なアクセスします。 |
例:ドメイン名サービス( dns )の情報をキャッシュしマッピングのホスト名をipアドレスにします。 もし、攻撃者ができるように"毒"は、キャッシュされ移植の記録会合で、偽のアドレスの名前は、 1つのホストルートは、別のホストへの接続は正しくありません。 |
デザインの原理を開く
この原理を示唆していません複雑なセキュリティを追加します。
設計の原則を開くによると、セキュリティのメカニズムに依存してはいけない秘密の設計や実装します。
デザイナーや、プログラムの実装に依存してはいけませんの秘密の詳細は、セキュリティを確保するための設計と実装します。 他探し出すことができこのような技術的な手段を通じてのいずれかの詳細など、逆アセンブルや分析、または非技術的手段を通じて、ごみのような検索するためのソースコードのリスティングreceptacles (と呼ばれる"ダンプスターダイビング"を参照) 。 プログラムの場合、セキュリティの強さにかかっている、ユーザーの無知、敗北してセキュリティのメカニズムに精通することができます。 用語"セキュリティを通してひっそりと"この概念を正確にとらえています。
これは特に真のソフトウェアおよびシステムの暗号化します。 暗号化するためには、非常に数学的な対象は、企業が市場の暗号化ソフトウェアや頻繁に使用するユーザーのデータを保護する暗号化アルゴリズムを保つ彼らの秘密にした。 経験によると、このような小さな秘密を追加した場合、システムの安全を守るため何もします。 悪化し、それを醸し出すの強さが欠けていることがあまりにも頻繁に、実際のシステムの実装します。
暗号化キーとパスワードの秘密保持に違反していませんこの原理は、キーのためのアルゴリズムではありませんします。 しかし、秘密を維持するための暗号化アルゴリズムとdecipheringご希望に違反しています。
問題の独占的ソフトウェアおよび営業秘密を複雑にするこの原理の応用です。 いくつかのケースでは、企業のかもしれませんが自分のデザインを公表されました、さもないと、競合他社を使用してください。 の原則を必要とし、その後の設計と実装ができるようになりそれ以外の人に開示を禁じられている。
例:コンテンツスクランブリングシステム( css )のは、暗号アルゴリズムを保護dvdムービーディスクから無断コピーします。 dvdのディスクには、認証キー、キーディスクと、タイトルのキーを押します。 タイトルで、ディスクの暗号化キーは、キーを押します。 ブロックしてdvdをコピーするには、ディスクのいくつかのキーが含まれ、それぞれの暗号化され、別のキープレーヤーと、チェックサムには、ディスクのキーを押します。 dvdが挿入されたときに、プレーヤーは、アルゴリズムを読み取り、認証キーを押します。 それからdeciphersディスクプレーヤーの固有のキーを使用してキーを押します。 それを見つけたときに解読して、正しいキーハッシュ、それを使用してキーを押してキーを解読のタイトル、それを使用して、映画のタイトルを解読キーを押してください。 認証キーはありませんとディスクに位置して、映画を含むファイルですので、もし1つのファイルにコピーし、 1つのディスクが必要dvdのdvdプレーヤーで映画を再生することができます。 1999年には、グループのノルウェー取得するプログラム(ソフトウェア)を再生したdvdをするunencipheredキーを押します。 また、派生するアルゴリズムを完全に対応して、ソフトウェアのアルゴリズムは、 cssをします。 このdvdを有効にして任意のムービーファイルを解読します。 これらの関数は急速にソフトウェアを実行することで利用可能になった、インターネットを通じて、多くのことをして不快感をコントロール協会は、著作権のdvd 、これを防ぐためにコードをより迅速に訴えられて行われて公開された。 かのように問題点を強調するために提供されるセキュリティアルゴリズムを隠して、原告側の弁護士に提出する宣言を含むソースコードをcssのアルゴリズムを実装しています。 これに気づいたとき、彼らが必要であることを宣言してから密閉された公共表示されます。 その時までには、いくつかの宣言に掲載されていたインターネットのサイトなど、 1つ以上の2万1000ダウンロードした宣言は、裁判所の前に封をされています。 |
権限の分離の原則
この原則を制限するためには、エンティティのシステムにアクセスを制限しています。
特権の原則を分離して、システムの状態を許可すべきではない、 1つの条件に基づいています。
この原理は義務の分離の原則に相当します。 会社の小切手をドル以上75,000しなければならないが署名した2つの会社の役員です。 いずれかの兆候はありません、確認することはできません。 この2つの条件には、署名の両方の役員です。
同様に、システムリソースへのアクセスやプログラムを付与しなければならないので2つ以上の場合のみ、条件が満たされました。 このきめの細かい制御を提供するのと同様の追加のリソースへのアクセスを保証することは許可しています。
例:バークレー校では、 unixベースのバージョンのオペレーティングシステムは、ユーザーを変更することはできませんから自分の口座に、 rootアカウントの2つの条件が満たされた場合を除きます。 第一の条件は、ユーザrootのパスワードを知っています。 2つ目の条件は、ユーザは、 wheelグループ(グループのgidを0 )します。 会議室のいずれかの条件ではありませんrootのアクセス権を取得するに十分な;会議の両方の条件が必要です。 |
最小公倍数の原理機構
制限するためには、この原則を共有することを制限します。
以上の原則を機構によると、 共通のメカニズムを使用してはいけません共有リソースにアクセスします。
共有リソースを提供するチャネルに沿って情報を送ることができ、そしてそのような共有を最小限に抑えなければならないします。 実際には、オペレーティングシステムのサポートを提供する場合、仮想マシンは、オペレーティングシステムは、この特権を実施する度に自動的にいくつかのです。 そうしないと、それはいくつかのサポートを提供する(仮想メモリ空間のような)完全にサポートされません(そのため、ファイルシステムの間で共有したり、いくつかのプロセスが表示されます) 。
例:ウェブサイトの電子商取引のサービスを提供する大手企業です。 攻撃したい、会社の収益を奪うことを取得してからのウェブサイトです。 彼ら洪水メッセージと提携するサイトでの電子商取引のサービスです。 合法的な顧客のウェブサイトにアクセスすることができないと、その結果、自分のビジネスの別の場所です。
ここでは、インターネットの共有を攻撃'引き起こしたサイトの攻撃に成功しました。 適切な対策を制限するだろう、犯人'セグメントへのアクセスは、インターネットのウェブサイトに接続しています。 これを含めるためのテクニックをプロキシサーバーなどの合成中間パーデュー大学やトラフィック抑制します。 元容疑者をターゲットに接続;後者の負荷を軽減し、無差別に関連性の高いセグメントのネットワークです。 |
心理学の原理容認
この原理を認識して人間のコンピュータセキュリティの要素です。
心理学の原理によると、セキュリティメカニズムを容認すべきではない、より多くのリソースへのアクセスをより困難にされなかった場合、セキュリティメカニズムの存在します。
設定およびプログラムを実行するだけで簡単に行えなければならないと直感的に可能な限り、任意の出力をクリアする必要があり、直接、役に立ちます。 セキュリティ関連の場合はあまりにも複雑なソフトウェアを設定し、システム管理者が設定するには、ソフトウェアの無意識な態度で公開されています。 同様に、セキュリティ関連のプログラムをしなければならないユーザーの使いやすさと分かりやすいメッセージを出力する必要があります。 パスワードが拒否した場合は、パスワードを変更するプログラムを拒否すべき状態だった理由を与えるというより、謎めいたエラーメッセージが表示されます。 間違っている場合は、設定ファイルのパラメータは、記述する必要があり、適切なパラメータのエラーメッセージが表示されます。
例: sshのプログラムを使用すると、ユーザーを設定するには、公開鍵暗号化のためのメカニズム間の通信システムです。 インストールと設定の仕組みをunixのバージョンの1つを手配できるようにして公開鍵をローカルに保存せずに、パスワード保護機能します。 この場合は、 1つのパスワードを供給する必要はありませんリモートシステムに接続するには、暗号化接続がまだ入手します。 このメカニズム心理的な受容性の原則を満たしています。 |
その半面、セキュリティを必要としたメッセージを伝える不要な情報はありませんします。
例:供給したときにユーザーのログイン時に間違ったパスワードを入力すると、システムを拒否すべき試みたことを示すメッセージがログインに失敗しました。 と言った場合には、パスワードが正しくない場合は、ご希望のユーザーアカウント名を知っていることは合法的だ。 場合は"ユーザー"で不正な攻撃が実際には、彼女が次に、アカウントの名前を知っている可能性が彼女のパスワードを推測してみました。 |
実際には、心理学の原理には解釈を容認しているということでいくつかのセキュリティ機構余分な負担を追加する場合があり、その両方を負担しなければならない合理的な最小とします。
例:メインフレームを使うと、ユーザーのシステム上のパスワードファイルを配置します。 プログラムのファイルにアクセスしてパスワードを供給する必要があります。 この機構に記載の原則に違反して、それは十分に考慮される最小許容します。 で、インタラクティブなシステムでは、どこのパターンファイルへのアクセスがより頻繁に、より過渡、この要件をあまりにも大きな負担になるだろうが許容します。 |