JP5735509B2 - マルウェアがある状態でユーザが検証可能な信頼性のあるパスを得るための方法および機器 - Google Patents
マルウェアがある状態でユーザが検証可能な信頼性のあるパスを得るための方法および機器 Download PDFInfo
- Publication number
- JP5735509B2 JP5735509B2 JP2012523622A JP2012523622A JP5735509B2 JP 5735509 B2 JP5735509 B2 JP 5735509B2 JP 2012523622 A JP2012523622 A JP 2012523622A JP 2012523622 A JP2012523622 A JP 2012523622A JP 5735509 B2 JP5735509 B2 JP 5735509B2
- Authority
- JP
- Japan
- Prior art keywords
- identity
- hypervisor
- policy
- user interface
- driver shim
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 94
- 238000012795 verification Methods 0.000 claims description 163
- 238000005259 measurement Methods 0.000 claims description 69
- 230000001010 compromised effect Effects 0.000 claims description 11
- 238000012790 confirmation Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 75
- 239000000306 component Substances 0.000 description 38
- 238000013461 design Methods 0.000 description 37
- 101150060512 SPATA6 gene Proteins 0.000 description 30
- 230000008569 process Effects 0.000 description 19
- 238000004458 analytical method Methods 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 238000013459 approach Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000008901 benefit Effects 0.000 description 7
- 238000002955 isolation Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000002347 injection Methods 0.000 description 3
- 239000007924 injection Substances 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000004374 forensic analysis Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Description
次に本発明の諸実施形態を専ら例として、本発明を限定するためではなく、それらの実施形態を例示するための添付図面に関して説明する。
次に図5A、図5B、および図6のそれぞれをより詳細に説明する。
ステップ520は、ドライバシムのアイデンティティの測定値を検証装置120に送ることを含み、検証装置120において、その測定値は検証装置120内に記憶されるポリシと比較される。あるいは、この比較はプロセッサ112によって実行されてもよいが、プロセッサ112よりも検証装置120の方が安全な場合があり、したがって検証装置120を使用することが好ましい。
ステップ524は、ユーザインターフェイス150のアイデンティティの測定値を、ユーザインターフェイス150用のポリシと比較することを含む。このステップは、プロセッサ112によって実行されてもよく、または検証装置120内で実行されてもよい。
ステップ526は、信頼性のあるパス152が確立されているかどうかを示す信号を検証装置120から受け取ることを含む。信頼性のあるパス152が確立されている場合、このプロセスはステップ520に進む。信頼性のあるパスが確立されていない場合、このプロセスはステップ520には進まない。
ステップ618は、検証装置120が受け取ったハイパーバイザ316およびドライバシム314の測定値が、検証装置120内に記憶される対応するポリシに一致するかどうかについての、人間が知覚できる指示を提供することを含む。他の実施形態では、このステップは、ハイパーバイザ316およびドライバシム314のそれぞれの状態についての人間が知覚できる指示を提供することでもよく、またはそのような指示を提供することも含む。
ステップ714は、ドライバシム314のアイデンティティを測定することを含む。このステップは、ドライバシム314のアイデンティティの測定値を証明することを含むことができる。さらに、ドライバシム314のアイデンティティの測定値を証明することは、ソフトウェアベースの証明を含むことができる。
ステップ718は、ユーザインターフェイス150のアイデンティティを測定することを含む。このステップは、ユーザインターフェイス150のアイデンティティの測定値を証明することを含むことができる。さらに、ユーザインターフェイス150のアイデンティティの測定値を証明することは、ソフトウェアベースの証明を含むことができる。
ステップ722は、ハイパーバイザ316のアイデンティティ、ドライバシム314のアイデンティティ、およびユーザインターフェイス150のアイデンティティが、ハイパーバイザ316用のポリシ、ドライバシム314用のポリシ、およびユーザインターフェイス150用のポリシにそれぞれ一致するかどうかについての、人間が知覚できる指示を提供することを含む。
本発明では他の多くの改変形態もあり得る。例えば一実施形態では、ハイパーバイザ316用のポリシおよびドライバシム314用のポリシが、ユーザインターフェイス150と信頼性のある実行ファイル312との間の信頼性のあるパス152の一部ではないコンポーネント内に記憶される。
図8は、図7のステップ720と722との間で追加のステップが実行される、本発明の別の実施形態を示す。
ステップ812は、信頼性のある実行ファイル312のアイデンティティの測定値を、信頼性のある実行ファイル312用のポリシと比較することを含む。
ステップ910は、ユーザインターフェイス150とハイパーバイザ316との間の信頼性のあるパス152内の追加コンポーネントのアイデンティティを測定することを含む。ユーザインターフェイス150とハイパーバイザ316との間の追加コンポーネントは、例えばメモリコントローラハブ、入出力コントローラハブ、グラフィックスコントローラ、USBコントローラ、専用キーボードコントローラ、またはユーザインターフェイス150とハイパーバイザ316との間で使用されるバス(例えばPCIeバス)である。
図10は、ステップ722が、人間が知覚できる第1の指示および第2の指示の両方を提供することを含む、本発明の別の実施形態を示す。この実施形態では、人間が知覚できる第2の指示を提供した後に、およびハイパーバイザのアイデンティティ、ドライバシムのアイデンティティ、およびユーザインターフェイスのアイデンティティのうちの少なくとも1つが、ハイパーバイザ用のポリシ、ドライバシム用のポリシ、およびユーザインターフェイス用のポリシそれぞれに一致しない場合、ステップ1010が実行される。
図11は、ステップ722の後に追加のステップが実行される本発明の別の実施形態を示す。
ステップ1112は、ドライバシム314のアイデンティティが、ドライバシム314用のポリシに一致するかどうかを判定することを含む。このステップは、ハイパーバイザ316のアイデンティティが、ハイパーバイザ316用のポリシに一致すると判定した後に実行される。
ステップ1210は、既知の良好な状態に復元したハイパーバイザ316、ドライバシム314、およびユーザインターフェイス150のうちの少なくとも1つのアイデンティティを測定することを含む。
ステップ1310は、ハイパーバイザ316のアイデンティティが、ハイパーバイザ316用のポリシに一致すると判定することを含む。
ステップ1314は、TPM装置を既知の良好な状態に戻すことを含む。このステップは、例えば既知の良好な状態に戻るようにTPM装置に指示する適切な命令をTPM装置に送るハイパーバイザ316によって実施される。
ステップ1318は、TPM装置内の新たな鍵を作成することを含む。このステップは、例えばTPM装置に適切な命令を送るハイパーバイザ316によって実施される。
ステップ1410は、信頼性のあるシェルのアイデンティティを測定することを含む。
ステップ1510は、信頼性のある実行ファイル312の実行を一時停止することを含む。
図16は、ステップ722と724との間で追加のステップが実行される、本発明の別の実施形態を示す。
1例示的実施形態
1.1 概要
次に本発明をいくつかの特定の実施形態に関して説明する。これらの実施形態は本発明の例証だが、本発明は本明細書に示し説明する特定の実施形態に限定されることはない。
1.2 アーキテクチャ概要
この節は、本発明のアーキテクチャの一実施形態(図17参照)の概要を含む。使用可能なシステムを構築することが重要な目標なので、安全な環境を築くためにユーザが行わなければならないステップ、ユーザエクスペリエンスを最初に説明する。次いで、安全な環境を確立するためにシステムが行うステップを列挙する、システムコンポーネントおよびシステム動作を示す。次の節では、技術的手法についての詳細を示す。
1.3 技術的手法の詳細
1.2節で論じたように、本発明のこの実施形態は3つの主要なコンポーネント、つまり信頼性のある検証器装置120、トラストバイザ316と呼ばれる安全なハイパーバイザ、およびソフトウェアベースの証明コンポーネントを含む。次に各コンポーネントについて順に論じる。図17は、システムの高レベル全体像を示す。
1.3.1 信頼性のある検証器装置
信頼性のある検証器120装置は、ユーザのための信頼のルートを形成する。信頼性のある検証器120は、ユーザがその正しい動作を信頼性のあるものである。より詳細には、一実施形態によれば、信頼性のある検証器316装置の要件は以下の通りである。
最小出力機能:この装置は、様々な状態を示すための出力能力を有するべきである。例えば、オレンジ色のライトは信頼性のある環境が実行されていないことを示し、緑色のライトは信頼性のある環境が正しく実行されていることを示し、アラームビープ音を伴う赤色のライトは信頼性のある環境が正しく実行されていないか、またはセットアップに失敗したことを示す。
1.3.2 トラストバイザ:
信頼性のあるセキュリティハイパーバイザであるトラストバイザ316、信頼性のあるハイパーバイザは、以下の要件および特性を有することができる。
2.システム上にあり得る任意のマルウェアから、信頼性のあるアプリケーション312のコードを(OS1712からの支援なしに)強く隔離すること。
4.自らのセキュリティ特性を(数学的な意味で)証明するために、形式的な検証を受け入れること。
トラストバイザ316は、システム上の最高の特権レベルである仮想マシンモニタ(VMM)の特権レベルで実行される。トラストバイザ316は、Intel(登録商標)およびAMD(登録商標)からの汎用CPU内に含まれる、CPUによってサポートされる仮想化を使用して、システムの残りの部分から隔離されて実行される。ただし、他のCPUアーキテクチャ上の仮想化サポートも、トラストバイザをそれらのアーキテクチャに移植できるようにすることができる。トラストバイザは、x86アーキテクチャに固有のものではない。CPU112およびメモリコントローラは、そのような隔離をもたらすためのハードウェア保護機構を提供する。
1.3.4 ソフトウェアベースの証明および検証可能コード実行
この節では、トラストバイザ316が任意のマルウェアと隔離された中で正しく実行されている保証を、信頼性のある検証器120の装置が得ることを可能にするために使用されるシステムのコンポーネントについて説明する。この技術は相当新しいので、システムの設計および実装されたシステムへのポインタに関する多くの技術的詳細を提供する。次いで、このシステムをよりロバストにするために本発明によって実装することができる改変形態または改善形態を説明する。
2.改竄されていない実行:コンピューティング装置上に存在し得るどのマルウェアも、ターゲット実行ファイルの実行をいかなる方法によっても妨げることはできない。
2.そのチェックサムが、予期される時間内に返される。
これらの2つの条件が該当する場合、検証器は、検証関数の方式で動的に作成された信頼のルートがコンピューティング装置上に存在する保証を得る。
1.4 評価
本システムの適用性を、2つの重要なセキュリティアプリケーションを構築することによって論証する。第1のアプリケーションは、信頼性のあるパス152を活用して安全なディスク暗号化をサポートする一方で、第2のアプリケーションは、信頼性のある方法でTPMチップ上の保証鍵を鍵更新するための機構を提供する。さらに、本システムのセキュリティ評価の大部分は、端末間のセキュリティ保証を提供するための、本システムの様々なコンポーネントの厳密な形式的分析を伴う。この安全なシステムの設計、実装、および分析の融合は、本発明に利点を与え、本発明の独自の特徴である。
1.有効かつ取消し可能
2.有効かつ永続的
3.取消し済み
EKappは、EKリセットを保持することをユーザが実証する場合、ユーザがTPMを状態1から状態3に遷移するように、(新たなEKリセット値を提供することにより)状態3から状態1または2に遷移するように構成される。EKがTPMの存在期間にわたってTPM内に永続的に導入されたままであるので、EKappは、状態2のEKを有するTPMに対していかなる構成変更を行うこともできない。
1.5 技術プログラム要約
本発明では、任意のセキュアシステムの基本的構成である、ユーザが検証可能な信頼性のあるパス152を確立するための重要な特性を明らかにする。これらの特性は、たとえマルウェアおよび悪意ある内部者がある状態でも、信頼性のあるシェル1710と安全なユーザ通信を行えることを保証する。マルウェアおよび悪意ある内部者による攻撃は、汎用コンピューティングプラットフォーム内で信頼性のあるパス152を構築するための今日までの他の唯一の使用可能なオプションである、TCG(Trusted Computing Group)が提案する信頼測定の静的ルート及び信頼測定の動的ルート(Static Root of Trust MeasurementおよびDynamic Root of Trust Measurement)の両方の低レベルブートシーケンスを破損する可能性がある。さらに、TCGの提案は、トラステッドプラットフォームモジュールの秘密鍵の発見につながり得る攻撃に耐える証明可能機構を欠き、(例えば証明に基づく)任意の信頼性のあるパス152の確立を安全でなくし、検証できなくし、ユーザが回復することをできなくする。TCGの提案とは対照的に、信頼性のあるパス152の機構は、今日までに定められている最も強い敵対者を前にしても永続的であり、ユーザによって検証可能であり、回復可能である。さらに、この機構は形式的に検証され、したがって他の同様のシステムでは達成できない一定の保証を約束する。
1.6 リスク分析および代替策
過去30年にわたるセキュアシステムの設計および動作での経験は、3つの包括的な危険因子がシステムセキュリティ分野内の他のあらゆるものを支配することを示した。3つの危険因子とはつまり、(1)セキュアシステムを使用する際のユーザ/管理者/オペレータの誤り、(2)セキュアシステムを開発する際の設計および実装の誤り(すなわちバグや過度の複雑さ)、および(3)システム構成の誤りである。
結論
本発明を特定の実施形態および実装形態の観点から概して説明してきたが、本発明は他の方法、機器、システム、および技術に適用することができる。本明細書に示した例は限定的ではなく説明的であり、本発明の他の改変形態および修正形態も考えられる。本発明のそれらのおよび他の改変形態および修正形態が可能であり考えられ、上記の明細書および特許請求の範囲はそのような修正形態および改変形態を範囲として含むことを意図する。
[1] TPM reset attack. Available at
http : / /www . cs . dartmouth . edu/~pkilab/ sparks. Checked on February 7, 2008.
[2] Advanced Micro Devices. AMD64 virtualization: Secure virtual machine architecture reference manual. AMD Publication no. 33047 rev. 3.01, May 2005.
[3] Thomas Ball, Ella Bounimova, Byron Cook, Vladimir Levin, Jakob Lichtenberg, Con McGarvey, Bohus Ondrusek, Sriram K. Rajamani, and Abdullah Ustuner. Thorough static analysis of device drivers. In EuroSys, pages 73-85, 2006.
[4] Dan Boneh, Richard A. DeMillo, and Richard J. Lipton. On the importance of eliminating errors in cryptographic computations. Journal of Cryptology, 14(2):101- 119, 2001.
[5] David Brumley and Dan Boneh. Remote timing attacks are practical. In Proceedings of USENL Security Symposium, pages 1-14, August 2003.
[6] Sagar Chaki, Edmund M. Clarke, Alex Groce, Somesh Jha, and Helmut Veith. Modular verification of software components in c. IEEE Trans. Software Eng. , 30(6):388- 02, 2004.
[7] Sagar Chaki and Anupam Datta. Automated verification of security protocol implementations, 2008. Technical Report CMU-Cylab-08-002.
[8] Edmund Clarke, Daniel Kroening, and Flavio Lerda. A tool for checking ANSI-C programs. In Kurt Jensen and Andreas Podelski, editors, Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2004), volume 2988 of Lecture Notes in Computer Science, pages 168-176. Springer, 2004.
[9] Anupam Datta, Ante Derek, John C. Mitchell, and Dusko Pavlovic. A derivation system for security protocols and its logical formalization. In Proceedings of 16th IEEE Computer Security Foundations Workshop, pages 109-125. IEEE, 2003.
[10] Anupam Datta, Ante Derek, John C. Mitchell, and Dusko Pavlovic. Secure protocol composition (extended abstract). In Proceedings of ACM Workshop on Formal Methods in Security Engineering, pages 11-23, 2003.
[11] AnupamDatta, Ante Derek, John C.Mitchell, and Dusko Pavlovic. Abstraction and refinement in protocol derivation. In Proceedings of 17th IEEE Computer Security Foundations Workshop, pages 30-45. IEEE, 2004.
[12] Anupam Datta, Ante Derek, John C. Mitchell, and Dusko Pavlovic. Secure protocol composition. In Proceedings of 19th Annual Conference on Mathematical Foundations of Programming Semantics. ENTCS, 2004.
[13] Anupam Datta, Ante Derek, John C. Mitchell, and Dusko Pavlovic. A derivation system and compositional logic for security protocols. Journal of Computer Security, 13(3):423- 482, 2005.
[14] Anupam Datta, Ante Derek, John C. Mitchell, Vitaly Shmatikov, and Mathieu Turuani. Probabilistic polynomial-time semantics for a protocol security logic. In Proceedings of the 32nd International Colloquium on Automata, Languages and Programming (ICALP '05), Lecture Notes in Computer Science, pages 16-29. Springer- Verlag, 2005.
[15] Anupam Datta, Ante Derek, John C. Mitchell, and Bogdan Warinschi.
Computationally sound compositional logic for key exchange protocols. In Proceedings of 19th IEEE Computer Security Foundations Workshop, pages 321-334. IEEE, 2006.
[16] Nancy Durgin, John C. Mitchell, and Dusko Pavlovic. A compositional logic for protocol correctness. In Proceedings of 14th IEEE Computer Security Foundations Workshop, pages 241-255. IEEE, 2001.
[17] Nancy Durgin, John C. Mitchell, and Dusko Pavlovic. A compositional logic for proving security properties of protocols. Journal of Computer Security, 11 :677-721 , 2003.
[18] Deepak Garg, Jason Franklin, Dilsun Kaynar, and Anupam Datta. Towards a theory of secure systems, 2008. Technical Report CMU-Cylab-08-003.
[19] Blaise Gassend, Dwaine Clarke, Marten van Dijk, and Srinivas Devadas. Silicon physical random functions. In Proceedings of the 9th ACM Conference on Computer and Communications Security, pages 148-160, November 2002.
[20] V. Gligor, C. Burch, R. Chandersekaran, L. Chanpman, M. Hecht, W. Jiang, G. Luckenbaugh, and N. Vasudevan. On the design and the implementation of secure xenix workstations. In Proceedings of the IEEE Symposium on Research in Security and Privacy, pages 102-117, April 1986.
[21] Changhua He, Mukund Sundararajan, Anupam Datta, Ante Derek, and John C. Mitchell. A modular correctness proof of IEEE 802.1 li and TLS. In CCS '05: Proceedings of the 12th ACM conference on Computer and communications security, pages 2-15, 2005.
[22] M.S. Hecht, M.E. Carson, C.S. Chandersekaran, R.S. Chapman, L.J. Dotterer, V.D. Gligor, W.D. Jiang, A. Johri, G.L. Luckenbaugh, and N. Vasudevan. UNIX without the superuser. In Proceedings of Summer USENIX Technical Conference, 1987.
[23] Intel Corporation. LaGrande technology preliminary architecture specification. Intel Publication no. D52212, May 2006.
Intel Corporation. Trusted execution Technology - preliminary architecture specification and enabling considerations. Document number 31516803, November 2006.
[25] Bernhard Kauer. OSLO: Improving the security of Trusted Computing. In Proceedings of the USENLX Security Symposium, August 2007.
[26] Samuel T. King, Peter M. Chen, Yi-Min Wang, Chad Verbowski, Helen J. Wang, and Jacob R. Lorch. SubVirt: Implementing malware with virtual machines. In Proceedings of the IEEE Symposium on Research in Security and Privacy, May 2006.
[27] Paul Kocher, Joshua Jaffe, and Benjamin Jun. Differential power analysis. In Advances in Cryptology - CRYPTO, pages 399-397, 1999.
[28] K. Kursawe, D. Schellekens, and B. Preneel. Analyzing trusted platform communication. In Proceedings of CRASH Workshop: Cryptographic Advances in Secure Hardware, September 2005.
[29] Jonathan M. McCune, Adrian Perrig, and Michael K. Reiter. Seeing-is-believing: Using camera phones for human- verifiable authentication. In Proceedings of IEEE Symposium on Security and Privacy, May 2005.
[30] Arnab Roy, Anupam Datta, Ante Derek, John C. Mitchell, and Jean-Pierre Seifert. Secrecy analysis in protocol composition logic, 2006. to appear in Proceedings of 11th Annual Asian Computing Science Conference, December 2006.
[31] Joanna Rutkowska. Subverting vista kernel for fun and profit. Presentation at BlackHat Briefings, available at http : //blackhat . com/presentations /bh-usa- 06/BH-US- 06-Rutkows ka . pdf , August 2006.
[32] A. Seshadri, M. Luk, E. Shi, A. Perrig, L. van Doom, and P. Khosla. Pioneer: Verifying integrity and guaranteeing execution of code on legacy platforms. In Proceedings of ACM Symposium on Operating Systems Principles (SOSP), pages 1-15, October 2005.
[33] Arvind Seshadri, Mark Luk, Ning Qu, and Adrian Perrig. Sec Visor: A tiny hypervisor to provide lifetime kernel code integrity for commodity OSes. In Proceedings of ACM SOSP, October 2007.
[34] E.R. Sparks. A security assessment of trusted platform modules. Technical Report TR2007-597, Computer Science Department, Dartmouth University, June 2007.
[35] Trusted Computing Group (TCG).
https : //www . trustedcomputinggroup . org/, 2003.
[36] Trusted Computing Group. Trusted platform module main specification, Part 1 : Design principles, Part 2: TPM structures, Part 3: Commands. Version 1.2, Revision 103, July 2007.
[37] U.S. Department of Defense. Trusted computer systems evaluation criteria.
(Orange Book) CSC-STD- 001-83, DoD ComputerSecurity Center, Fort Meade, MD, August 1983.
[38] U.S. Department of Defense. Trusted computer systems evaluation criteria.
(Orange Book) 5200.28-STD, National ComputerSecurity Center, Fort Meade, MD, December 1985.
Claims (29)
- プロセッサ(112)によって、ユーザインターフェイス(150)と安全に実行できると想定される実行ファイル(312)との間に、ハイパーバイザ(316)およびドライバシム(314)を含む信頼性のあるパス(152)を確立する方法であって、前記プロセッサ(112)は、前記ユーザインターフェイス(150)と、メモリ(114)とに接続され、前記メモリ(114)は、前記プロセッサ(112)に実行される実行ファイル(312)、ハイパーバイザ(316)、およびドライバシム(314)を記憶する、前記方法であって、
前記ハイパーバイザのアイデンティティを測定すること(710)、
前記ハイパーバイザのアイデンティティを測定すること(710)により取得された前記ハイパーバイザの前記アイデンティティの測定値を、前記ハイパーバイザ用のポリシと比較すること(712)、
前記ドライバシムのアイデンティティを測定すること(714)、
前記ドライバシムのアイデンティティを測定すること(714)により取得された前記ドライバシムの前記アイデンティティの測定値を、前記ドライバシム用のポリシと比較すること(716)、
前記ユーザインターフェイスのアイデンティティを測定すること(718)、
前記ユーザインターフェイスのアイデンティティを測定すること(718)により取得された前記ユーザインターフェイスの前記アイデンティティの測定値を、前記ユーザインターフェイス用のポリシと比較すること(720)、
前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシにそれぞれ一致するかどうかについての、人間が知覚できる指示を提供すること(722)
を含む、方法。 - 前記ユーザインターフェイス(150)が、入力装置(116)および出力装置(118)の少なくとも一方を含む、請求項1に記載の方法。
- 前記入力装置(116)が、キーボードおよびコンピュータマウスからなる群から選択され、
前記出力装置(118)が、ビデオディスプレイ装置、プリンタ、およびオーディオ装置からなる群から選択される、請求項2に記載の方法。 - 前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシにそれぞれ一致するかどうかについての、人間が知覚できる指示を提供すること(722)は、
前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値のすべてが、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシにそれぞれ一致する場合に人間が知覚できる第1の指示を提供すること、
前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値のうちの少なくとも1つが、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシそれぞれに一致しない場合に人間が知覚できる第2の指示を提供すること
を含み、前記人間が知覚できる第1の指示は、前記人間が知覚できる第2の指示とは異なる、請求項1に記載の方法。 - 前記ハイパーバイザ用の前記ポリシおよび前記ドライバシム用の前記ポリシが、前記ユーザインターフェイス(150)と前記安全に実行できると想定される実行ファイル(312)との間の前記信頼性のあるパス(152)の一部ではないコンポーネント内に記憶される、請求項1に記載の方法。
- 前記ハイパーバイザ(316)および前記ドライバシム(314)がコンピュータによって実装され、前記ハイパーバイザ用の前記ポリシおよび前記ドライバシム用の前記ポリシが、前記ハイパーバイザおよび前記ドライバシムが実装される前記コンピュータから離れた装置内に記憶される、請求項1に記載の方法。
- 前記ユーザインターフェイス用の前記ポリシが、前記ドライバシム内に記憶される、請求項1に記載の方法。
- 前記安全に実行できると想定される実行ファイルのアイデンティティを測定すること(810)、
前記安全に実行できると想定される実行ファイルの前記アイデンティティの測定値を、前記安全に実行できると想定される実行ファイル用のポリシと比較すること(812)
をさらに含む、請求項1に記載の方法。 - 前記ドライバシムの前記アイデンティティを測定すること(714)、および前記ドライバシムの前記アイデンティティの測定値を比較すること(716)は、
前記ハイパーバイザの前記アイデンティティを測定した(710)後に、および前記ハイパーバイザの前記アイデンティティの測定値を比較した(712)後に実行され、
前記安全に実行できると想定される実行ファイルの前記アイデンティティを測定すること(810)、および前記安全に実行できると想定される実行ファイルの前記アイデンティティの測定値を比較すること(812)は、
前記ドライバシムの前記アイデンティティを測定した(714)後に、および前記ドライバシムの前記アイデンティティの測定値を比較した(716)後に実行される、請求項8に記載の方法。 - 前記ハイパーバイザの前記アイデンティティを測定すること(710)が、前記ハイパーバイザの前記アイデンティティの測定値を証明することを含み、
前記ドライバシムの前記アイデンティティを測定すること(714)が、前記ドライバシムの前記アイデンティティの測定値を証明することを含み、
前記ユーザインターフェイスの前記アイデンティティを測定すること(718)が、前記ユーザインターフェイスの前記アイデンティティの測定値を証明することを含む、請求項1に記載の方法。 - 前記ハイパーバイザの前記アイデンティティの測定値を証明することは、ソフトウェアベースの証明であり、
前記ドライバシムの前記アイデンティティの測定値を証明することは、ソフトウェアベースの証明であり、
前記ユーザインターフェイスの前記アイデンティティの測定値を証明することは、ソフトウェアベースの証明である、請求項10に記載の方法。 - 前記ユーザインターフェイスと前記ハイパーバイザとの間の前記信頼性のあるパス152内の追加コンポーネントのアイデンティティを測定すること(910)、
前記ユーザインターフェイスと前記ハイパーバイザとの間の前記信頼性のあるパス152内の前記追加コンポーネントの前記アイデンティティの測定値を、前記追加コンポーネント用のポリシと比較すること(912)
をさらに含む、請求項1に記載の方法。 - 前記ユーザインターフェイスと前記ハイパーバイザとの間の前記追加コンポーネントが、メモリコントローラハブ、入出力コントローラハブ、グラフィックスコントローラ、USBコントローラ、専用キーボードコントローラ、および前記ユーザインターフェイスと前記ハイパーバイザとの間のバスからなる群から選択される、請求項12に記載の方法。
- 前記追加コンポーネント用の前記ポリシが、前記ユーザインターフェイスと前記安全に実行できると想定される実行ファイルとの間の前記信頼性のあるパスの一部ではないコンポーネント内に記憶される、請求項12に記載の方法。
- 前記追加コンポーネントがコンピュータによって実装され、前記追加コンポーネント用の前記ポリシが、前記追加コンポーネントが実装される前記コンピュータから離れた装置内に記憶される、請求項12に記載の方法。
- 前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値のうちの少なくとも1つが、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシそれぞれに一致しない場合に前記人間が知覚できる第2の指示を提供した後に、
自らのポリシに一致しない前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの少なくとも1つを既知の良好な状態に復元すること(1010)
をさらに含む、請求項4に記載の方法。 - 前記ハイパーバイザの前記アイデンティティの測定値が前記ハイパーバイザ用の前記ポリシに一致すると判定すること(1110)、
前記ハイパーバイザの前記アイデンティティの測定値が前記ハイパーバイザ用の前記ポリシに一致すると判定した後に、前記ドライバシムの前記アイデンティティの測定値が、前記ドライバシム用の前記ポリシに一致するかどうかを判定すること(1112)、
前記ドライバシムの前記アイデンティティの測定値が前記ドライバシム用の前記ポリシに一致しない場合、前記ドライバシムを既知の良好な状態に復元すること(1114)、
前記ドライバシムの前記アイデンティティの測定値が前記ドライバシム用の前記ポリシに一致しない場合、前記ドライバシムを既知の良好な状態に復元した後に、前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ユーザインターフェイス用の前記ポリシに一致するかどうかを判定すること(1116)、
前記ユーザインターフェイスの前記アイデンティティの測定値が前記ユーザインターフェイス用の前記ポリシに一致しない場合、前記ユーザインターフェイスを既知の良好な状態に復元すること(1118)
をさらに含む、請求項16に記載の方法。 - 前記ドライバシムの前記アイデンティティの測定値が前記ドライバシム用の前記ポリシに一致しない場合、前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ユーザインターフェイス用のポリシに一致しないと想定される、請求項17に記載の方法。
- 前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの少なくとも1つを既知の良好な状態に復元した後に、
既知の良好な状態に復元した前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの少なくとも1つの前記アイデンティティを測定すること(1210)、
前記既知の良好な状態に復元した前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの少なくとも1つの前記アイデンティティを測定すること(1210)により取得された既知の良好な状態に復元した前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの少なくとも1つの前記アイデンティティの測定値を、前記ハイパーバイザ、前記ドライバシム、および前記ユーザインターフェイスの前記少なくとも1つのための対応するポリシと比較すること(1212)
をさらに含む、請求項16に記載の方法。 - 前記ハイパーバイザの前記アイデンティティの測定値が前記ハイパーバイザ用の前記ポリシに一致すると判定すること(1310)、
TPM装置がセキュリティ侵害されていると判定すること(1312)
をさらに含む、請求項1に記載の方法。 - 前記TPM装置がセキュリティ侵害されていると判定した(1312)後に、
前記TPM装置を既知の良好な状態に戻すこと(1314)
をさらに含む、請求項20に記載の方法。 - 前記ハイパーバイザから前記TPM装置に命令を送った後、
前記TPM装置内の既存の鍵を破壊すること(1316)、
前記TPM装置内の新たな鍵を作成すること(1318)
をさらに含む、請求項21に記載の方法。 - 前記信頼性のあるパスが安全に実行できると想定されるシェルを含み、
前記安全に実行できると想定されるシェルのアイデンティティを測定すること(1410)、
前記安全に実行できると想定されるシェルのアイデンティティを測定すること(1410)により取得された前記安全に実行できると想定されるシェルの前記アイデンティティの測定値を、前記安全に実行できると想定されるシェル用のポリシと比較すること(1412)
をさらに含む、請求項1に記載の方法。 - 前記安全に実行できると想定されるシェル用の前記ポリシが、前記信頼性のあるパスの外側に記憶される、請求項23に記載の方法。
- 安全に実行できると想定されるシェルがコンピュータによって実装され、前記安全に実行できると想定されるシェル用のポリシが、前記安全に実行できると想定されるシェルが実装される前記コンピュータから離れた装置内に記憶される、請求項1に記載の方法。
- 前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシにそれぞれ一致するかどうかについての、人間が知覚できる指示を提供した後に、
前記安全に実行できると想定される実行ファイルを実行すること(724)
をさらに含む、請求項1に記載の方法。 - 前記安全に実行できると想定される実行ファイルを実行した後に、
前記安全に実行できると想定される実行ファイルの前記実行を一時停止すること(1510)、
前記安全に実行できると想定される実行ファイルが一時停止されたという、人間が知覚できる指示を提供すること(1512)
をさらに含む、請求項26に記載の方法。 - 前記安全に実行できると想定される実行ファイルを実行する前に、且つ前記ハイパーバイザの前記アイデンティティの測定値、前記ドライバシムの前記アイデンティティの測定値、および前記ユーザインターフェイスの前記アイデンティティの測定値が、前記ハイパーバイザ用の前記ポリシ、前記ドライバシム用の前記ポリシ、および前記ユーザインターフェイス用の前記ポリシにそれぞれ一致するかどうかについての、人間が知覚できる指示を提供した後に、
前記安全に実行できると想定される実行ファイルを実行する確認を示す入力を人間のユーザから受け取ること(1610)
をさらに含む、請求項26に記載の方法。 - コンピュータであって、
プロセッサ(112)と、
前記プロセッサ(112)に接続されるユーザインターフェイス(150)と、
前記プロセッサ(112)に接続され、且つ前記プロセッサ(112)によって実行されるとき、前記プロセッサ(112)にコンピューティングプラットフォームを作成させるコンピュータ可読命令を記憶するメモリ(114)であって、
ハイパーバイザ(316)、およびドライバシム(314)を記憶し、
前記ユーザインターフェイス(150)と前記プロセッサ(112)との間の信頼性のあるパス(152)であって、前記ハイパーバイザ(316)および前記ドライバシム(314)を含む、前記信頼性のあるパス(152)とを有する、前記メモリ(114)と、
前記プロセッサ(112)に接続され、且つプロセッサ(122)およびメモリ(124)を含む検証装置(120)であって、前記検証装置(120)の前記メモリ(124)は、コンピュータ可読命令と、前記ハイパーバイザ(316)用のポリシと、前記ドライバシム(314)用のポリシとを含む、前記検証装置(120)と
を備えるコンピュータ(110)であって、
前記コンピュータ(110)の前記プロセッサ(112)によって実行されるとき、前記コンピュータ(110)の前記メモリ(114)内の前記コンピュータ可読命令が、
安全に実行できると想定される実行ファイルを実行する要求を示す信号を受け取ること(510)、
前記安全に実行できると想定される実行ファイルを実行する前記要求を示す前記信号を受け取った後に、前記ハイパーバイザと前記検証装置との間の安全な接続を認証すること(512)、
前記ハイパーバイザの少なくとも一部分のアイデンティティを測定すること(514)、
前記ハイパーバイザの少なくとも一部分のアイデンティティを測定すること(514)により取得された前記ハイパーバイザの前記アイデンティティの測定値を前記検証装置に送ること(516)、
前記ドライバシムの少なくとも一部分の前記アイデンティティを測定すること(518)、
前記ドライバシムの少なくとも一部分の前記アイデンティティを測定すること(518)により取得された前記ドライバシムの前記アイデンティティの測定値を前記検証装置に送ること(520)、
前記ユーザインターフェイスの少なくとも一部分の前記アイデンティティを測定すること(522)、
前記ユーザインターフェイスの少なくとも一部分の前記アイデンティティを測定すること(522)により取得された前記ユーザインターフェイスの前記アイデンティティの測定値を前記ユーザインターフェイス用のポリシと比較すること(524)
を前記コンピュータ(110)の前記プロセッサ(112)に実行させ、
前記検証装置(120)内の前記プロセッサ(122)によって実行されるとき、前記検証装置(120)の前記メモリ(124)内の前記コンピュータ可読命令が、
前記コンピュータ(110)内の前記プロセッサから前記ハイパーバイザの測定値を受け取ること(610)、
前記検証装置内に記憶される前記ハイパーバイザ用の前記ポリシを、前記検証装置が受け取る前記ハイパーバイザの測定値と比較すること(612)、
前記コンピュータ(110)内の前記プロセッサから前記ドライバシムの測定値を受け取ること(614)、
前記検証装置内に記憶される前記ドライバシム用の前記ポリシを、前記検証装置が受け取る前記ドライバシムの測定値と比較すること(616)
を前記検証装置(120)内の前記プロセッサ(122)に実行させ、
前記認証すること(512)、前記ハイパーバイザの少なくとも一部分の前記アイデンティティを測定すること(514)、前記ハイパーバイザの前記アイデンティティの測定値を前記検証装置に送ること(516)、前記ドライバシムの少なくとも一部分の前記アイデンティティを測定すること(518)、前記ドライバシムの前記アイデンティティの測定値を前記検証装置に送ること(520)、前記ユーザインターフェイスの少なくとも一部分の前記アイデンティティを測定すること(522)、前記ユーザインターフェイスの前記アイデンティティの測定値を前記ユーザインターフェイス用のポリシと比較すること(524)、前記コンピュータ(110)内の前記プロセッサから前記ハイパーバイザの測定値を受け取ること(610)、前記検証装置内に記憶される前記ハイパーバイザ用の前記ポリシを、前記検証装置が受け取る前記ハイパーバイザの測定値と比較すること(612)、前記コンピュータ(110)内の前記プロセッサから前記ドライバシムの測定値を受け取ること(614)、および前記検証装置内に記憶される前記ドライバシム用の前記ポリシを、前記検証装置が受け取る前記ドライバシムの測定値と比較すること(616)が、前記安全に実行できると想定される実行ファイルを実行する前記要求を示す前記信号を受け取ること(510)の後に、かつ前記コンピュータ(110)をリブートすることなしに実行される、
コンピュータ(110)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US27344809P | 2009-08-04 | 2009-08-04 | |
US61/273,448 | 2009-08-04 | ||
PCT/US2010/040334 WO2011037665A2 (en) | 2009-08-04 | 2010-06-29 | Methods and apparatuses for user-verifiable trusted path in the presence of malware |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2013501300A JP2013501300A (ja) | 2013-01-10 |
JP2013501300A5 JP2013501300A5 (ja) | 2013-08-15 |
JP5735509B2 true JP5735509B2 (ja) | 2015-06-17 |
Family
ID=43796427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012523622A Expired - Fee Related JP5735509B2 (ja) | 2009-08-04 | 2010-06-29 | マルウェアがある状態でユーザが検証可能な信頼性のあるパスを得るための方法および機器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8832778B2 (ja) |
EP (1) | EP2462507B1 (ja) |
JP (1) | JP5735509B2 (ja) |
DK (1) | DK2462507T3 (ja) |
WO (1) | WO2011037665A2 (ja) |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101714108B1 (ko) * | 2009-12-04 | 2017-03-08 | 크라이프토그라피 리서치, 인코포레이티드 | 검증가능 누출 방지 암호화 및 복호화 |
US8819225B2 (en) * | 2010-11-15 | 2014-08-26 | George Mason Research Foundation, Inc. | Hardware-assisted integrity monitor |
US9519600B2 (en) * | 2011-03-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Driver shimming |
WO2012122994A1 (en) * | 2011-03-11 | 2012-09-20 | Kreft Heinz | Off-line transfer of electronic tokens between peer-devices |
US9003363B2 (en) | 2011-03-21 | 2015-04-07 | Microsoft Technology Licensing, Llc | Device flags |
US8966642B2 (en) * | 2011-04-05 | 2015-02-24 | Assured Information Security, Inc. | Trust verification of a computing platform using a peripheral device |
US8983855B1 (en) | 2011-05-16 | 2015-03-17 | Mckesson Financial Holdings | Systems and methods for evaluating adherence to a project control process |
US8954747B2 (en) * | 2011-07-01 | 2015-02-10 | Intel Corporation | Protecting keystrokes received from a keyboard in a platform containing embedded controllers |
CN102231138B (zh) * | 2011-07-08 | 2013-07-03 | 上海交通大学 | 计算机内存数据准确采集系统及获取方法 |
US8683548B1 (en) | 2011-09-30 | 2014-03-25 | Emc Corporation | Computing with policy engine for multiple virtual machines |
US8726337B1 (en) | 2011-09-30 | 2014-05-13 | Emc Corporation | Computing with presentation layer for multiple virtual machines |
US8953790B2 (en) * | 2011-11-21 | 2015-02-10 | Broadcom Corporation | Secure generation of a device root key in the field |
US8650645B1 (en) * | 2012-03-29 | 2014-02-11 | Mckesson Financial Holdings | Systems and methods for protecting proprietary data |
US20140281539A1 (en) * | 2012-03-30 | 2014-09-18 | Goldman, Sachs & Co. | Secure Mobile Framework With Operating System Integrity Checking |
WO2013153441A1 (en) | 2012-04-13 | 2013-10-17 | Ologn Technologies Ag | Secure zone for digital communications |
US10108953B2 (en) | 2012-04-13 | 2018-10-23 | Ologn Technologies Ag | Apparatuses, methods and systems for computer-based secure transactions |
US9432348B2 (en) | 2012-04-20 | 2016-08-30 | Ologn Technologies Ag | Secure zone for secure purchases |
US9317687B2 (en) * | 2012-05-21 | 2016-04-19 | Mcafee, Inc. | Identifying rootkits based on access permissions |
US9152793B2 (en) * | 2012-09-28 | 2015-10-06 | Intel Corporation | Methods, systems and apparatus to self authorize platform code |
CA2902294A1 (en) * | 2013-03-15 | 2014-09-18 | Ologn Technologies Ag | Secure zone on a virtual machine for digital communications |
CA3234925A1 (en) | 2013-03-15 | 2014-09-18 | Ologn Technologies Ag | Systems, methods and apparatuses for securely storing and providing payment information |
US9948640B2 (en) | 2013-08-02 | 2018-04-17 | Ologn Technologies Ag | Secure server on a system with virtual machines |
US9092631B2 (en) * | 2013-10-16 | 2015-07-28 | Battelle Memorial Institute | Computer-implemented security evaluation methods, security evaluation systems, and articles of manufacture |
US9998438B2 (en) | 2013-10-23 | 2018-06-12 | Microsoft Technology Licensing, Llc | Verifying the security of a remote server |
US9354818B2 (en) | 2014-02-25 | 2016-05-31 | Kabushiki Kaisha Toshiba | Memory device and data storing method |
US9680862B2 (en) * | 2014-07-01 | 2017-06-13 | Fireeye, Inc. | Trusted threat-aware microvisor |
US10002252B2 (en) | 2014-07-01 | 2018-06-19 | Fireeye, Inc. | Verification of trusted threat-aware microvisor |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US9678773B1 (en) | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
DE102014114899A1 (de) * | 2014-10-14 | 2016-04-14 | Infineon Technologies Ag | Verfahren und Vorrichtung zur Nutzung in einem Datenverarbeitungssystem |
US9507951B2 (en) * | 2014-10-20 | 2016-11-29 | Intel Corporation | Technologies for secure input and display of virtual touch user interfaces |
US9537788B2 (en) | 2014-12-05 | 2017-01-03 | Amazon Technologies, Inc. | Automatic determination of resource sizing |
US10230693B2 (en) | 2015-01-29 | 2019-03-12 | WebCloak, LLC | Safechannel encrypted messaging system |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9613198B2 (en) * | 2015-03-30 | 2017-04-04 | Honeywell International Inc. | Apparatus and method for intelligent video surveillance of industrial console operations |
US10395029B1 (en) | 2015-06-30 | 2019-08-27 | Fireeye, Inc. | Virtual system and method with threat protection |
US10216927B1 (en) | 2015-06-30 | 2019-02-26 | Fireeye, Inc. | System and method for protecting memory pages associated with a process using a virtualization layer |
US11113086B1 (en) | 2015-06-30 | 2021-09-07 | Fireeye, Inc. | Virtual system and method for securing external network connectivity |
US10726127B1 (en) | 2015-06-30 | 2020-07-28 | Fireeye, Inc. | System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer |
US10642753B1 (en) | 2015-06-30 | 2020-05-05 | Fireeye, Inc. | System and method for protecting a software component running in virtual machine using a virtualization layer |
US10110566B2 (en) * | 2015-07-21 | 2018-10-23 | Baffle, Inc. | Systems and processes for executing private programs on untrusted computers |
US10033759B1 (en) | 2015-09-28 | 2018-07-24 | Fireeye, Inc. | System and method of threat detection under hypervisor control |
WO2017062541A1 (en) | 2015-10-06 | 2017-04-13 | Carnegie Mellon University | Method and apparatus for trusted display on untrusted computing platforms to secure applications |
JP2017107377A (ja) * | 2015-12-09 | 2017-06-15 | 株式会社リコー | 機器管理装置、機器管理システム、検証方法及びプログラム |
KR20170091951A (ko) | 2016-02-02 | 2017-08-10 | 에스프린팅솔루션 주식회사 | 전자 디바이스에게 보안을 제공하기 위한 방법 및 장치 |
US10037201B2 (en) * | 2016-02-26 | 2018-07-31 | Dell Products L.P. | Secure live media boot system |
US11132213B1 (en) | 2016-03-30 | 2021-09-28 | Amazon Technologies, Inc. | Dependency-based process of pre-existing data sets at an on demand code execution environment |
US10528739B2 (en) * | 2016-04-20 | 2020-01-07 | Sophos Limited | Boot security |
US10135622B2 (en) * | 2016-06-03 | 2018-11-20 | Intel Corporation | Flexible provisioning of attestation keys in secure enclaves |
US10102040B2 (en) | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
US10025691B1 (en) | 2016-09-09 | 2018-07-17 | Fireeye, Inc. | Verification of complex software code using a modularized architecture |
US10592678B1 (en) | 2016-09-09 | 2020-03-17 | Fireeye, Inc. | Secure communications between peers using a verified virtual trusted platform module |
US10621351B2 (en) | 2016-11-01 | 2020-04-14 | Raptor Engineering, LLC. | Systems and methods for tamper-resistant verification of firmware with a trusted platform module |
US10467082B2 (en) * | 2016-12-09 | 2019-11-05 | Microsoft Technology Licensing, Llc | Device driver verification |
US10839080B2 (en) * | 2017-09-01 | 2020-11-17 | Microsoft Technology Licensing, Llc | Hardware-enforced firmware security |
US10719604B2 (en) * | 2018-01-30 | 2020-07-21 | Hewlett Packard Enterprise Development Lp | Baseboard management controller to perform security action based on digital signature comparison in response to trigger |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US11146569B1 (en) * | 2018-06-28 | 2021-10-12 | Amazon Technologies, Inc. | Escalation-resistant secure network services using request-scoped authentication information |
US11099870B1 (en) | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US11243953B2 (en) | 2018-09-27 | 2022-02-08 | Amazon Technologies, Inc. | Mapreduce implementation in an on-demand network code execution system and stream data processing system |
US11099917B2 (en) | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
US11010188B1 (en) | 2019-02-05 | 2021-05-18 | Amazon Technologies, Inc. | Simulated data object storage using on-demand computation of data objects |
WO2020177879A1 (en) * | 2019-03-06 | 2020-09-10 | NEC Laboratories Europe GmbH | Method and system for performing remote attestation with a gateway in the context of a trusted execution environment (tee) |
US11861386B1 (en) | 2019-03-22 | 2024-01-02 | Amazon Technologies, Inc. | Application gateways in an on-demand network code execution system |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
US11159528B2 (en) | 2019-06-28 | 2021-10-26 | Amazon Technologies, Inc. | Authentication to network-services using hosted authentication information |
US11190609B2 (en) | 2019-06-28 | 2021-11-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
US11714895B2 (en) * | 2019-07-18 | 2023-08-01 | Anjuna Security, Inc. | Secure runtime systems and methods |
NZ786912A (en) * | 2019-09-25 | 2022-08-26 | Shift5 Inc | Passive monitoring and prevention of unauthorized firmware or software upgrades between computing devices |
US11119826B2 (en) | 2019-11-27 | 2021-09-14 | Amazon Technologies, Inc. | Serverless call distribution to implement spillover while avoiding cold starts |
US11714682B1 (en) | 2020-03-03 | 2023-08-01 | Amazon Technologies, Inc. | Reclaiming computing resources in an on-demand code execution system |
US11269637B2 (en) * | 2020-07-23 | 2022-03-08 | Hewlett Packard Enterprise Development Lp | Validating machine-readable instructions using an iterative validation process |
US11550713B1 (en) | 2020-11-25 | 2023-01-10 | Amazon Technologies, Inc. | Garbage collection in distributed systems using life cycled storage roots |
US11593270B1 (en) | 2020-11-25 | 2023-02-28 | Amazon Technologies, Inc. | Fast distributed caching using erasure coded object parts |
US11089051B1 (en) * | 2021-02-15 | 2021-08-10 | Theta Labs, Inc. | Preventing denial-of-service attacks in decentralized edge networks using verifiable delay functions (VDFs) |
US11388210B1 (en) | 2021-06-30 | 2022-07-12 | Amazon Technologies, Inc. | Streaming analytics using a serverless compute system |
WO2023027687A1 (en) * | 2021-08-23 | 2023-03-02 | Hewlett-Packard Development Company, L.P. | Hashes to control code execution |
US11968280B1 (en) | 2021-11-24 | 2024-04-23 | Amazon Technologies, Inc. | Controlling ingestion of streaming data to serverless function executions |
US12015603B2 (en) | 2021-12-10 | 2024-06-18 | Amazon Technologies, Inc. | Multi-tenant mode for serverless code execution |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4945468A (en) * | 1988-02-01 | 1990-07-31 | International Business Machines Corporation | Trusted path mechanism for virtual terminal environments |
US7350204B2 (en) * | 2000-07-24 | 2008-03-25 | Microsoft Corporation | Policies for secure software execution |
US7529754B2 (en) * | 2003-03-14 | 2009-05-05 | Websense, Inc. | System and method of monitoring and controlling application files |
JP2007226277A (ja) * | 2004-04-02 | 2007-09-06 | Matsushita Electric Ind Co Ltd | 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置 |
US7721094B2 (en) | 2005-05-06 | 2010-05-18 | Microsoft Corporation | Systems and methods for determining if applications executing on a computer system are trusted |
US7565535B2 (en) * | 2005-05-06 | 2009-07-21 | Microsoft Corporation | Systems and methods for demonstrating authenticity of a virtual machine using a security image |
CN100437502C (zh) * | 2005-12-30 | 2008-11-26 | 联想(北京)有限公司 | 基于安全芯片的防病毒方法 |
US7712143B2 (en) * | 2006-09-27 | 2010-05-04 | Blue Ridge Networks, Inc. | Trusted enclave for a computer system |
US7913292B2 (en) * | 2006-10-18 | 2011-03-22 | Microsoft Corporation | Identification and visualization of trusted user interface objects |
JP4998019B2 (ja) * | 2007-03-06 | 2012-08-15 | 富士通株式会社 | 状態表示制御装置 |
GB0707150D0 (en) * | 2007-04-13 | 2007-05-23 | Hewlett Packard Development Co | Dynamic trust management |
JP2009003853A (ja) * | 2007-06-25 | 2009-01-08 | Panasonic Corp | 複数のソフトウェアを正しい順番で起動する情報端末およびセキュリティモジュール |
US20090028329A1 (en) * | 2007-07-23 | 2009-01-29 | Savi Technology, Inc. | Method and Apparatus for Providing Security in a Radio Frequency Identification System |
US8374354B2 (en) * | 2007-09-27 | 2013-02-12 | Verizon Data Services Llc | System and method to pass a private encryption key |
US8555081B2 (en) * | 2007-10-30 | 2013-10-08 | Vmware, Inc. | Cryptographic multi-shadowing with integrity verification |
US20090133097A1 (en) * | 2007-11-15 | 2009-05-21 | Ned Smith | Device, system, and method for provisioning trusted platform module policies to a virtual machine monitor |
US8321931B2 (en) * | 2008-03-31 | 2012-11-27 | Intel Corporation | Method and apparatus for sequential hypervisor invocation |
US8578374B2 (en) * | 2009-07-16 | 2013-11-05 | Ca, Inc. | System and method for managing virtual machines |
-
2010
- 2010-06-29 JP JP2012523622A patent/JP5735509B2/ja not_active Expired - Fee Related
- 2010-06-29 US US13/389,212 patent/US8832778B2/en active Active - Reinstated
- 2010-06-29 EP EP10819183.4A patent/EP2462507B1/en active Active
- 2010-06-29 WO PCT/US2010/040334 patent/WO2011037665A2/en active Application Filing
- 2010-06-29 DK DK10819183.4T patent/DK2462507T3/da active
Also Published As
Publication number | Publication date |
---|---|
DK2462507T3 (da) | 2019-09-23 |
US20120198514A1 (en) | 2012-08-02 |
EP2462507A2 (en) | 2012-06-13 |
WO2011037665A3 (en) | 2011-05-19 |
JP2013501300A (ja) | 2013-01-10 |
US8832778B2 (en) | 2014-09-09 |
WO2011037665A2 (en) | 2011-03-31 |
EP2462507A4 (en) | 2013-04-03 |
EP2462507B1 (en) | 2019-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5735509B2 (ja) | マルウェアがある状態でユーザが検証可能な信頼性のあるパスを得るための方法および機器 | |
US10516533B2 (en) | Password triggered trusted encryption key deletion | |
US7380136B2 (en) | Methods and apparatus for secure collection and display of user interface information in a pre-boot environment | |
Parno et al. | Bootstrapping trust in modern computers | |
US8850212B2 (en) | Extending an integrity measurement | |
US8335931B2 (en) | Interconnectable personal computer architectures that provide secure, portable, and persistent computing environments | |
TWI584152B (zh) | 用於電腦安全的系統及其方法 | |
US9015454B2 (en) | Binding data to computers using cryptographic co-processor and machine-specific and platform-specific keys | |
TWI745629B (zh) | 電腦系統以及初始化電腦系統的方法 | |
Futral et al. | Intel Trusted Execution Technology for Server Platforms: A Guide to More Secure Datacenters | |
EP3188067B1 (en) | Security control method and network device | |
Mannan et al. | Unicorn: Two-factor attestation for data security | |
Götzfried et al. | Mutual authentication and trust bootstrapping towards secure disk encryption | |
Böck et al. | Towards more trustable log files for digital forensics by means of “trusted computing” | |
Zhao et al. | Gracewipe: Secure and Verifiable Deletion under Coercion. | |
Morbitzer | Scanclave: verifying application runtime integrity in untrusted environments | |
Stewin | Detecting peripheral-based attacks on the host memory | |
Feng | Trusted Computing: Principles and Applications | |
Müller et al. | Stark: Tamperproof Authentication to Resist Keylogging | |
Bugiel et al. | Implementing an application-specific credential platform using late-launched mobile trusted module | |
McCune | Reducing the trusted computing base for applications on commodity systems | |
Sisinni | Verification of software integrity in distributed systems | |
Zhao | Authentication and Data Protection under Strong Adversarial Model | |
vor starken Angreifern et al. | Trusted Systems in Untrusted Environments: Protecting against Strong Attackers | |
Frenn | Towards a Trustworthy Thin Terminal for Securing Enterprise Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130626 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140319 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140408 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140707 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140808 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150223 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150317 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150416 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5735509 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |