CN103649963B - 信赖等级激活 - Google Patents

信赖等级激活 Download PDF

Info

Publication number
CN103649963B
CN103649963B CN201280035888.1A CN201280035888A CN103649963B CN 103649963 B CN103649963 B CN 103649963B CN 201280035888 A CN201280035888 A CN 201280035888A CN 103649963 B CN103649963 B CN 103649963B
Authority
CN
China
Prior art keywords
trust
application
assembly
level
execution environment
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.)
Active
Application number
CN201280035888.1A
Other languages
English (en)
Other versions
CN103649963A (zh
Inventor
S.阿布拉罕
H.威尔逊
T.巴苏
S.伊斯金
L.赵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN103649963A publication Critical patent/CN103649963A/zh
Application granted granted Critical
Publication of CN103649963B publication Critical patent/CN103649963B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control

Abstract

隔离执行环境向应用提供了有限的资源来执行应用。所述应用可以要求访问与特定的信赖等级相关联的、位于所述隔离执行环境之外的安全资源。信赖激活引擎确定与用于资源的请求相关联的信赖等级,并且基于所述信赖等级进行不同的操作。代理进程可以用于在与所述隔离执行环境相分离的执行环境中执行提供对具有部分信赖等级的资源的访问的组件。

Description

信赖等级激活
背景技术
网络计算的增长已经使用户能够从范围从可信系统到未知来源的各种来源获取代码。该代码可以从因特网下载,包含在文档中,或者附加在电子邮件上。该代码可以包含,可以被恶意代码(其可以访问被保护以防用户的资源)利用的缺陷或者弱点。这种代码的执行可能损害计算机系统和/或导致获得用户的敏感且隐私的数据。
隔离执行环境是一种类型的代码安全机制,其试图解决与从未知或不可信的来源获取代码的安全问题。隔离执行环境在具有禁止代码访问该隔离执行环境外的资源的限制的环境内执行代码。照这样,该代码不能危及主机系统的安全。然而,这样的限制在允许应用利用隔离执行环境之外的资源方面不提供任何灵活性。
发明内容
提供本发明内容以便以简化形式介绍以下将在具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限制确定所要求保护的主题的范围。
隔离执行环境可以用来执行应用,以防止该应用无意地或者恶意地影响其它执行中的应用或资源,以及防止泄露敏感数据。通过控制隔离执行环境中的应用可访问的资源,便利了隔离。诸如应用编程接口(API)之类的组件可以用于访问资源,并且与信赖等级相关联,该信赖等级反映与资源相关联的安全等级。
信赖激活引擎确定低特许应用是否可以执行与资源相关联的API,以及根据何种情况执行。可以在低特许应用的隔离执行环境中执行基础信赖组件。低特许应用可以决不直接执行完全信赖组件。对于部分信赖组件,信赖激活引擎激活与隔离执行环境相分离的代理进程,以执行部分信赖组件。照这样,低特许应用被保护而免受用于访问资源的API方法的影响,但是获得了访问与部分信赖组件相关联的资源的益处。
通过阅读以下具体实施方式以及查看相关联的附图,这些及其它特征和优点将是显而易见的。应当理解的是,上述一般描述以及以下的详细描述仅是说明性的,并且不限于所要求保护的方面。
附图说明
图1图示了信赖等级激活的第一示范性系统的框图。
图2图示了信赖等级激活的第二示范性系统的框图。
图3图示了信赖等级激活的第三示范性系统的框图。
图4是图示了信赖等级激活的第一示范性方法的流程图。
图5是图示了信赖等级激活的第二示范性方法的流程图。
图6是图示了操作环境的框图。
图7是图示了在操作环境中使用的计算装置的示范性组件的框图。
具体实施方式
各种实施例涉及将在隔离执行环境中执行的应用代码的影响范围扩展到操作系统运行时间组件的技术。隔离执行环境可以用来执行应用,以防止应用无意地或者恶意地影响其它执行中的应用或资源,以及防止应用泄露敏感数据。通过控制应用可访问的资源使隔离便利。通过指示资源安全等级的信赖等级对资源进行分类。通过指示访问资源的应用的安全等级的特许等级对应用进行分类。高特许应用可以访问所有资源,低特许应用可以根据变化的情况访问某些信赖等级的资源。本文描述的技术允许低特许应用按照最小化用户敏感数据和计算环境的风险的方式访问某些操作系统运行时间组件。
在一实施例中,可以从诸如应用仓库之类的服务器下载应用。该下载的应用可以是按照包含应用代码和清单文件的包的形式。应用代码可以是非限制性地诸如,程序模块、应用软件、视频游戏、企业软件、软件组件等之类的任何类型的计算机可执行指令。该清单文件可以包括应用的身份(例如,发表者,应用的名称,应用的版本)、用于应用的目标体系结构(例如,处理器体系结构、操作系统版本等)、从属物(例如,硬件装置和/或其它应用)、能力等等。能力部分标识出应用需要操作的资源。一些能力可以涉及不能从隔离执行环境内访问的资源。
资源可以是表示用户的安全或隐私的风险并且同样受操作系统控制的装置或者功能。装置可以是位于对用户造成安全风险的用户计算装置上的硬件装置。这样的装置的示例可以是摄像头,板载蜂窝芯片,麦克风,GPS接收机等。功能的示例可以是对用户照片库的读或写访问、对公共场所中的因特网和网络的外出访问、对用户家庭网络的入内访问等。
例如,应用可以要求访问用户的照片库。通常,用户的照片库的位置不是在隔离执行环境中运行的应用可访问的。清单文件的能力部分将指示出该应用要求使用用户的照片库。当用户在查看清单文件之后下载应用包时,用户隐含地同意应用访问用户的照片库。然而,当应用在隔离执行环境中运行时,该应用将需要访问用户的照片库。
在一个或多个实施例中,可以通过诸如应用编程接口(API)之类的软件组件访问资源。例如,资源可以是文件系统、盘I/O、网络I/O等。该应用通过API调用请求访问资源。例如,API调用可以允许在数据库上实施的读操作,允许访问文件系统,允许访问网络等。基于与API相关联的信赖等级,API调用的处理不同。
在一个或多个实施例中,可以将每个应用归类为两个特许等级之一:高特许应用或者低特许应用。高特许应用能够访问所有的操作系统运行时间组件,而低特许应用能够直接访问仅有的某些操作系统运行时间组件。可以将这些组件归类为三个信赖等级:基础信赖;部分信赖;以及完全信赖。基础信赖组件可以是与任何特许等级相关联的应用可访问的。完全信赖组件可以是仅仅高特许应用可直接访问的。部分信赖组件可以由低特许应用通过代理进程访问。
代理进程操作于与隔离执行环境相分离的执行环境,并且被配置为执行针对部分信赖组件的从低特许应用请求的API调用。部分信赖组件要求比基础信赖组件高的代码安全等级,并且具有比完全信赖组件低的代码安全等级。通过使用代理进程作为应用和操作系统之间的中间物,资源的完整性被保护而免受由可能存在于应用中的恶意代码所引起的损害。现在将注意力转向具体实现了扩展隔离执行环境以激活信赖等级组件的技术的系统的实施例的更详细描述。
参照图1,其中示出了示范性系统100,该示范性系统100被配置为使低特许应用102能够在隔离执行环境104内访问基础信赖组件。可以在诸如手持式装置、便携式装置、服务器、计算机、移动电话、个人助理装置等的任何类型的计算装置上实施系统100。
系统100具有隔离执行环境104和信赖激活引擎106。隔离执行环境104可以被配置为在用户进程108中执行低特许应用102。用户进程108可以与标记110相关联,该标记110标识出在用户进程108中运行的应用102,以及标识出允许应用102访问的许可或能力。标记110可以包括用户安全标识符(SID),包SID和应用的能力。用户SID标识该用户进程,并且包SID标识该应用。能力是对应用102要求的资源的用户许可的访问。
开始,当将应用102安装到系统100中时,应用102向操作系统注册。可以为应用102创建用户进程108,并且可以将标记110与用户进程108相关联。当应用102执行时,应用102可以请求激活基础信赖组件(块112)。在一个或多个实施例中,通过API调用便利对基础信赖组件的访问。
可以通过动态链接库(DLL)或者通过可执行文件实现API。DLL是共享库,该共享库包括可以被多个进程同时使用的代码和数据。在面向对象的编程语言中,API可以包括一组类定义。类的实例被称作对象,并且对象被用于调用或者激活API。可以将对象表示为包括实现API的数据和方法的数据结构。数据可以包含进程用于调用API的变量。
信赖激活引擎106处理API调用,并且在API数据库114中查找与API相关联的信赖等级。API数据库114被保护而免于受到低特许应用的篡改。如果组件与基础信赖等级相关联,则信赖激活引擎106使用存储在API数据库114中的可执行代码生成API对象。然后,将基础信赖对象120或者API对象转发至用户进程108并且存储在其中(块118)。于是,API调用的启用出于隔离执行环境104。
图2图示了示范性系统130,该示范性系统130被配置为使低特许应用102能访问位于隔离执行环境104之外的代理进程内的部分信赖组件。系统130具有被配置为在用户进程108中执行应用102的隔离执行环境104。用户进程108可以与标记110相关联,该标记110标识在用户进程108中运行的应用102,以及允许应用102访问的许可或能力。标记110可以包括用户安全标识符(SID),包SID和应用的能力,如上所述。
如上所述,为应用102创建用户进程108,并且将标记110与用户进程108相关联。当应用102执行时,应用102可以请求激活部分信赖组件,这通过API调用而是便利的(块132)。信赖激活引擎106处理API调用,并且从存储在API数据库114中的数据查找与API相关联的信赖等级。如果该组件与部分信赖等级相关联,则信赖激活引擎106生成代理进程134。代理进程134生成存储在该代理进程134中的API对象。代理进程134将数据转送回到用户进程108(块136),以便应用用来与代理进程132进行通信,以调用与部分信赖组件相对应的API(块140)。该代理在代理进程134内启动API方法的执行。
图3图示了被配置为使低特许应用102能直接访问完全信赖组件的示范性系统150。系统150具有被配置为在用户进程108中执行低特许应用102的隔离执行环境104。用户进程108可以与标记110相关联,该标记110标识在用户进程108中运行的应用102,以及允许应用102访问的许可或能力。标记110可以包括用户安全标识符(SID),包SID和应用的能力,如上所述。
信赖激活引擎106处理来自应用的激活完全信赖组件的请求(块152)。该请求通过API调用进行,并且信赖激活引擎106在API数据库114中查找与API相关联的信赖等级。当信赖激活引擎106确定该组件与完全信赖等级相关联时,信赖激活引擎106不激活该API,而是替换地,返回错误消息到该应用(块154)。
虽然图1-3中所示的系统在某一配置中具有有限数目的元件,但是应当意识到,在针对所预期的实现的可替换配置中,这些系统可以包括更多或更少的元件。例如,应用代码可以包括其它形式的应用,诸如而无非限制的,以超文本标记语言(HTML)、层叠样式表(CSS)或者JavaScript编写的Windows® Web应用以及以管理代码或者本机代码编写的现代客户应用(Modern Client Application)。
另外,图1-3中所示的系统中的每一个都可以包括具有多个组件、程序、过程、模块的计算机实现的系统。如本文所使用的,这些术语旨在涉及计算机相关的实体,包括硬件、硬件和软件的组合,或者软件。例如,图1-3中所示的元件可以被实现为运行在处理器上的进程、硬盘驱动器、(光学和/或磁存储介质的)多个存储驱动器、对象、可执行事物、执行的线程,程序和/或计算机。一个或多个元件可以驻留在进程和/或执行的线程内,并且如给定实现方式所希望的,元件可以位于一个计算机上,和/或分布在两个或更多个计算机之间。实施例不限于这种方式。
现在将注意力转向参照各种示范性方法的实施例的操作的更详细的讨论。可以意识到,代表性的方法没有必要必须按照所呈现的次序或者任何特定次序执行,除非另有指示。此外,可以按照串行或并行的方式或者串行与并行操作的任何组合执行相对于方法描述的各种活动。如给定的设计和性能约束的集合所希望的,可以使用所描述的实施例或者可替换实施例的一个或多个硬件元件和/或软件元件实现这些方法。例如,可以将这些方法实现为由逻辑装置(例如,通用或者专用计算机)执行的逻辑(例如,计算机程序指令)。
图4是图示了信赖等级激活操作的流程图。开始,可以从任何来源将应用102下载到计算装置(块160)。在一实施例中,下载的应用可以是包含应用代码和清单文件的包的形式。该包可以向驻留在计算装置上的操作系统进行注册(块162)。在一实施例中,可以使用基于Windows®的操作系统,并且该包可以向该操作系统的注册处进行注册。一旦注册了,该操作系统可以为应用102创建隔离执行环境104,并且在激活应用102时,生成用户进程108以执行应用102(块164)。例如,可以通过分离的软件模块使隔离执行环境104便利,该分离的软件模块设置隔离执行环境104的应用注册处的设置,为应用分配有界限的地址空间,以及管理应用执行于其内的分离进程。在执行应用102期间,应用102可以请求操作系统运行时间组件(块166)。
参照图5,该进程确定与请求访问信赖等级组件的应用相关联的特许等级(块170)。信赖激活引擎106从作出该请求的用户进程108接收API调用,并且确定用户进程108的身份。信赖激活引擎106可以根据API调用中传送的标记110确定用户进程108的身份。如果标记110中的包SID与在隔离执行环境104内执行的进程的在操作系统注册处中的条目相匹配,则信赖激活引擎106确定出该调用应用具有低特许等级。否则,信赖激活引擎106确定出该调用应用具有高特许等级。
如果低特许应用请求访问信赖等级组件(块170-是),则该进程确定组件的信赖等级(块172)。否则(块170-否),高等级应用能够访问所有的信赖等级组件,并且同样,高等级应用能从其执行环境调用该信赖等级组件(块171)。
在低特许应用的情形中,信赖激活引擎106确定API调用中请求的信赖等级组件的类型(块172)。信赖激活引擎106在包含关联于各个组件的信赖等级的API数据库114中匹配所请求的组件。如果所请求的组件与基础信赖等级相关联(块174-是),则信赖激活引擎生成API对象(块176)。然后,将该API对象转发到隔离执行环境104中的用户进程的地址空间中(块176)。与该API调用相关联的方法的执行出于隔离执行环境104(块176)。
否则(块174-否),如果所请求的组件与部分信赖等级相关联(块178-是),则可以生成代理进程134,以执行API调用(块180)。信赖激活引擎106创建代理进程134,以在代理进程134中激活部分信赖组件138(块180)。然后,代理进程134通过调用与部分信赖组件138相关联的API调用来激活部分信赖组件138(块180)。代理进程134生成API对象(块180)。可以将关于该对象的数据转发到隔离执行环境104中的用户进程108,于是其可以被用于从应用102调用该API调用(块180)。与该API调用相关联的方法的执行在代理进程134中执行(块180)。
如果所请求的组件与完全信赖等级相关联(块182-是),则信赖激活引擎106拒绝访问完全信赖组件,并且返回失败响应至用户进程(块184)。现在将注意力转向使用了本文描述的实施例的操作环境的描述。
现在,参照图6,示出了示范性操作环境250的示意性框图。操作环境250可以包括一个或多个客户端254,其经由通信框架256与一个或多个服务器258进行通信。在一实施例中,客户端254可以被实现为具体实现了系统100、130和150的计算装置。服务器258可以被实现为被提供至客户端254的应用代码的来源,服务器258可以是应用仓库、服务器、电子邮件服务器、web服务器等。每个客户端254都耦接到一个或多个客户端数据仓库260,该客户端数据仓库存储了客户端254本地的信息。每个服务器258都耦接到一个或多个服务器数据仓库262,该服务器数据仓库存储了服务器258本地的信息。
客户端254可以具体化为硬件装置、软件模块或者具体化为它们的组合。这样的硬件装置的示例可以包括,但不限于,计算机(例如,服务器、个人计算机、膝上型计算机等)、蜂窝电话、个人数字助理或者任何类型的计算装置等。客户端254还可以具体化为具有指令的软件模块,所述指令以单执行路径、多条并行执行路径(例如,线程、进程等)或以任何其它方式执行。
服务器258可以具体化为硬件装置、软件模块或者具体化为它们的组合。这样的硬件装置的示例可以包括,但不限于,计算机(例如,服务器、个人计算机、膝上型计算机等)、蜂窝电话、个人数字助理或者任何类型的计算装置等。服务器258还可以具体化为具有指令的软件模块,所述指令以单执行路径、多条并行执行路径(例如,线程、进程等)或以任何其它方式执行。
通信框架256便于客户端254和服务器258之间的通信。在一实施例中,通信框架256可以具体化为通信网络,诸如因特网、局域网、或广域网,或者它们的组合。通信框架256可以包含使用任何通信协议的任何类型的通信介质,诸如有线或无线网络。
参照图7,客户端254可以具有网络接口270、处理器272和存储器274。处理器272可以是任何市场上可买到的处理器,并且可以包括双微处理器和多处理器体系结构。网络接口270便于客户端254和通信框架256之间的有线或无线通信,以在客户端254和服务器258之间提供通信路径。
存储器274可以是可以存储处理器可执行指令、过程、应用和数据的任何计算机可读存储介质或者计算机可读介质。计算机可读介质与诸如经由载波传送的调制数据信号之类的传播信号无关。它可以是任何类型的存储器装置(例如,随机存取存储器、只读存储器等)、磁存储设备、易失性存储设备、非易失性存储设备、光学存储设备、DVD、CD、软驱动器、盘驱动器、闪存等。存储器274还可以包括一个或多个外部存储装置或者位于远处的存储装置。存储器274可以包含如下的指令和数据:
● 操作系统276;
● 注册处278;
● 隔离执行环境104,其具有用户进程108、应用102、标记110和基础信赖对象120;
● 信赖激活引擎106;
● API数据库114;
● 代理进程134,其具有部分信赖对象138;
● 包280,其具有应用282和清单文件284;以及
● 各种其它应用和数据286。
尽管已经以特定于结构特征和/或方法动作的语言描述了本主题,但是应当理解的是,在附加的权利要求中定义的主题没有必要局限于如上所述的特定特征或动作。相反,作为实现权利要求的示例形式而公开了如上所述的特定特征和动作。
例如,可以使用硬件元件、软件元件或者两者组合来实现系统的各种实施例。硬件元件的示例可以包括装置、组件、处理器、微处理器、电路、电路元件、集成电路、专用集成电路、可编程逻辑器件、数字信号处理器、现场可编程门阵列、存储器单元、逻辑门等。软件元件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口、指令集合、计算代码、代码段和它们的任何组合。如给定实现方式所希望的,根据诸如希望的计算率、功率电平、带宽、计算时间、负载平衡、存储器资源、数据总线速度及其它设计或者性能约束之类的任何数目的因素,确定是否使用硬件元件和/或软件元件来实现实施例可以改变。
一些实施例可以包括存储介质,以存储指令或逻辑。存储介质的示例可以包括能够存储电子数据的一种或多种类型的计算机可读存储介质,包括易失性存储器或者非易失性存储器,可拆卸的或者不可拆卸的存储器,可擦除的或者不可擦除的存储器,可写入或可重写的存储器等。逻辑的示例可以包括各种软件组件,诸如程序、过程、模块、应用、代码段、程序堆栈、中间件、固件、方法、例程等。在一实施例中,例如,计算机可读存储介质可以存储可执行的计算机程序指令,当由处理器执行时,所述计算机程序指令使得处理器根据描述的实施例执行方法和/或操作。可以根据预定的计算机语言、方式或语法实现可执行的计算机程序指令,以指示计算机执行某一功能。可以使用任何适当的高级的、低级的、面向对象的、可见的、汇编的和/或解释性编程语言来实现指令。

Claims (10)

1.一种用于信赖等级激活的计算机实施的方法,包括:
创建执行应用的隔离执行环境,所述应用与特许等级相关联;
所述应用请求激活组件,所述组件包括用于访问由操作系统控制的资源的可执行指令,所述组件与信赖等级相关联,所述组件的信赖等级与所述应用的特许等级相分离;以及
当所述组件的信赖等级是部分信赖等级以及所述应用的特许等级是低特许等级时:
创建代理进程以执行由所述应用请求的所述组件,以及
在所述代理进程中执行由所述应用请求的所述组件,所述代理进程工作在与所述隔离执行环境相分离的执行环境中。
2.如权利要求1所述的方法,还包括:
识别与组件相关联的多个信赖等级。
3.如权利要求1所述的方法,还包括:
当由所述应用请求的所述组件与完全信赖等级相关联时,拒绝在所述隔离执行环境中执行由所述应用请求的所述组件。
4.如权利要求1所述的方法,还包括:
当由所述应用请求的所述组件与部分信赖等级相关联时,生成与在所述代理进程中执行的由所述应用请求的所述组件相关联的API对象。
5.如权利要求1所述的方法,还包括:
当由所述应用请求的所述组件与基础信赖等级相关联时,生成与在所述隔离执行环境中执行的由所述应用请求的所述组件相关联的API对象。
6.一种用于信赖等级激活的计算机实施的设备,包括:
信赖激活模块,其用于确定与选择的特许等级相关联的应用是否能够访问具有选择的信赖等级的组件,所述应用在与所述信赖激活模块相分离的隔离执行环境中执行,所述组件包括用于访问由操作系统控制的资源的可执行指令,所述信赖激活模块配置代理进程以便在所述组件的信赖等级是部分信赖等级和所述应用的特许等级是低特许等级时在与所述隔离执行环境相分离的执行环境中执行所述组件,所述组件的信赖等级与所述应用的特许等级相分离。
7.如权利要求6所述的设备,还包括:
当所述组件具有完全信赖等级时,所述信赖激活模块禁止低特许应用执行所述组件。
8.如权利要求6所述的设备,还包括:
所述信赖激活模块使高特许应用能执行任何信赖等级组件。
9.如权利要求6所述的设备,还包括:
所述信赖激活模块向低特许应用提供可执行代码,该可执行代码被配置为当所述组件具有基础信赖等级时在所述隔离执行环境中执行。
10.如权利要求6所述的设备,还包括:
当所述应用的特许等级是低特许等级以及所述应用请求的组件与完全信赖等级相关联时,所述信赖激活模块拒绝在隔离执行环境中执行由所述应用请求的所述组件。
CN201280035888.1A 2011-07-20 2012-07-10 信赖等级激活 Active CN103649963B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/186,474 US8973158B2 (en) 2011-07-20 2011-07-20 Trust level activation
US13/186474 2011-07-20
PCT/US2012/045998 WO2013012592A1 (en) 2011-07-20 2012-07-10 Trust level activation

Publications (2)

Publication Number Publication Date
CN103649963A CN103649963A (zh) 2014-03-19
CN103649963B true CN103649963B (zh) 2016-02-03

Family

ID=47556777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280035888.1A Active CN103649963B (zh) 2011-07-20 2012-07-10 信赖等级激活

Country Status (6)

Country Link
US (2) US8973158B2 (zh)
EP (1) EP2734949B1 (zh)
JP (2) JP5985631B2 (zh)
KR (1) KR101970744B1 (zh)
CN (1) CN103649963B (zh)
WO (1) WO2013012592A1 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130061316A1 (en) * 2011-09-06 2013-03-07 Microsoft Corporation Capability Access Management for Processes
US8990561B2 (en) 2011-09-09 2015-03-24 Microsoft Technology Licensing, Llc Pervasive package identifiers
US9773102B2 (en) 2011-09-09 2017-09-26 Microsoft Technology Licensing, Llc Selective file access for applications
US9800688B2 (en) 2011-09-12 2017-10-24 Microsoft Technology Licensing, Llc Platform-enabled proximity service
US9524477B2 (en) * 2012-05-15 2016-12-20 Apple Inc. Utilizing a secondary application to render invitational content in a separate window above an allocated space of primary content
US10356204B2 (en) 2012-12-13 2019-07-16 Microsoft Technology Licensing, Llc Application based hardware identifiers
US9515832B2 (en) 2013-06-24 2016-12-06 Microsoft Technology Licensing, Llc Process authentication and resource permissions
US9282100B2 (en) * 2013-12-02 2016-03-08 Cisco Technology, Inc. Privilege separation
US9483636B2 (en) 2014-01-17 2016-11-01 Microsoft Technology Licensing, Llc Runtime application integrity protection
CN105404819A (zh) * 2014-09-10 2016-03-16 华为技术有限公司 一种数据访问控制方法、装置以及终端
US9600682B2 (en) * 2015-06-08 2017-03-21 Accenture Global Services Limited Mapping process changes
US9785783B2 (en) 2015-07-23 2017-10-10 Ca, Inc. Executing privileged code in a process
US20170149828A1 (en) 2015-11-24 2017-05-25 International Business Machines Corporation Trust level modifier
EP3314516B1 (en) 2016-01-26 2022-04-13 Hewlett-Packard Development Company, L.P. System management mode privilege architecture
US10360135B2 (en) * 2016-03-31 2019-07-23 Microsoft Technology Licensing, Llc Privilege test and monitoring
JP6779758B2 (ja) * 2016-11-21 2020-11-04 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
KR20180071679A (ko) 2016-12-20 2018-06-28 삼성전자주식회사 사용자 단말 장치 및 그의 제어 방법
US10503908B1 (en) 2017-04-04 2019-12-10 Kenna Security, Inc. Vulnerability assessment based on machine inference
US10728500B2 (en) 2018-06-13 2020-07-28 At&T Intellectual Property I, L.P. Object-managed secured multicast system
US11171983B2 (en) * 2018-06-29 2021-11-09 Intel Corporation Techniques to provide function-level isolation with capability-based security
US10762244B2 (en) * 2018-06-29 2020-09-01 Intel Corporation Securely exposing an accelerator to privileged system components
JP2020135555A (ja) * 2019-02-21 2020-08-31 Necソリューションイノベータ株式会社 処理実行方法
US20200364354A1 (en) * 2019-05-17 2020-11-19 Microsoft Technology Licensing, Llc Mitigation of ransomware in integrated, isolated applications
US11895105B2 (en) 2020-06-19 2024-02-06 Apple, Inc. Authenticated interface element interactions
US11880719B2 (en) * 2022-01-20 2024-01-23 Dell Products L.P. Trust-aware and adaptive system to aid virtual/human intervention using an API-based mechanism

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1678968A (zh) * 2002-06-28 2005-10-05 英特尔公司 可信计算机平台

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167522A (en) 1997-04-01 2000-12-26 Sun Microsystems, Inc. Method and apparatus for providing security for servers executing application programs received via a network
US6275938B1 (en) * 1997-08-28 2001-08-14 Microsoft Corporation Security enhancement for untrusted executable code
US6505300B2 (en) * 1998-06-12 2003-01-07 Microsoft Corporation Method and system for secure running of untrusted content
US6691230B1 (en) 1998-10-15 2004-02-10 International Business Machines Corporation Method and system for extending Java applets sand box with public client storage
US7103625B1 (en) * 1999-10-05 2006-09-05 Veritas Operating Corporation Virtual resource ID mapping
US7284124B1 (en) * 2000-06-05 2007-10-16 Microsoft Corporation Trust level based platform access regulation application
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
JP2004252584A (ja) * 2003-02-18 2004-09-09 Nec Corp データアクセス制御装置
US7694328B2 (en) * 2003-10-21 2010-04-06 Google Inc. Systems and methods for secure client applications
US7380087B2 (en) 2004-08-25 2008-05-27 Microsoft Corporation Reclaiming application isolated storage
US7490353B2 (en) * 2005-02-22 2009-02-10 Kidaro, Inc. Data transfer security
US20070260577A1 (en) 2006-03-30 2007-11-08 Microsoft Corporation Providing COM access to an isolated system
JP2008102838A (ja) * 2006-10-20 2008-05-01 Canon Inc 情報処理方法およびプログラム
JP2010282242A (ja) * 2007-08-20 2010-12-16 Nec Corp アクセス制御システム、アクセス制御方法およびアクセス制御用プログラム
US9218200B2 (en) * 2008-08-21 2015-12-22 Vmware, Inc. Selective class hiding in open API component architecture system
US8745361B2 (en) 2008-12-02 2014-06-03 Microsoft Corporation Sandboxed execution of plug-ins
US20100199357A1 (en) 2009-02-02 2010-08-05 Microsoft Corporation Secure hosting for untrusted code
JP4787341B2 (ja) * 2009-02-18 2011-10-05 株式会社エヌ・ティ・ティ・ドコモ データ処理装置、データ処理方法、データ処理プログラム
EP2433238B1 (en) * 2009-05-18 2015-10-07 Hewlett-Packard Development Company, L.P. Systems and methods of determining a trust level from system management mode
US8627451B2 (en) 2009-08-21 2014-01-07 Red Hat, Inc. Systems and methods for providing an isolated execution environment for accessing untrusted content

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1678968A (zh) * 2002-06-28 2005-10-05 英特尔公司 可信计算机平台

Also Published As

Publication number Publication date
EP2734949A4 (en) 2015-05-13
US8973158B2 (en) 2015-03-03
CN103649963A (zh) 2014-03-19
JP2014521184A (ja) 2014-08-25
EP2734949A1 (en) 2014-05-28
US9465948B2 (en) 2016-10-11
WO2013012592A1 (en) 2013-01-24
US20130024929A1 (en) 2013-01-24
KR20140045502A (ko) 2014-04-16
US20150106915A1 (en) 2015-04-16
KR101970744B1 (ko) 2019-04-22
JP5985631B2 (ja) 2016-09-06
EP2734949B1 (en) 2020-11-04
JP2017016669A (ja) 2017-01-19
JP6248153B2 (ja) 2017-12-13

Similar Documents

Publication Publication Date Title
CN103649963B (zh) 信赖等级激活
US10691793B2 (en) Performance of distributed system functions using a trusted execution environment
US10691675B2 (en) Asset management system, method, apparatus, and electronic device
JP6929495B2 (ja) 業務処理方法および装置
US9191388B1 (en) Trusted security zone communication addressing on an electronic device
US9208339B1 (en) Verifying Applications in Virtual Environments Using a Trusted Security Zone
JP2021512380A (ja) 資産管理方法および装置、ならびに電子デバイス
US10311246B1 (en) System and method for secure USIM wireless network access
US9104840B1 (en) Trusted security zone watermark
JP2021504833A (ja) 資産管理方法および装置、および電子デバイス
US20140373184A1 (en) Mobile device persistent security mechanism
KR20140090188A (ko) 모바일 장치 상의 원격 정책을 적용 및 공유하는 기술
CN102999715A (zh) 基于声明和同意的访问代理
US11363114B1 (en) Securing communications in a network function virtualization (NFV) core network
US10789957B1 (en) Home assistant wireless communication service subscriber self-service
KR20190069574A (ko) 무선 네트워크 유형 검출 방법과 장치, 및 전자 디바이스
US9280674B2 (en) Information processing apparatus and method of controlling same
WO2019199465A1 (en) TRUSTED PLATFORM MODULE-BASED PREPAID ACCESS TOKEN FOR COMMERCIAL IoT ONLINE SERVICES
CN111651467B (zh) 一种区块链节点接口发布调用方法和装置
US11741175B2 (en) Performance metrics collection and promulgation from within a mobile application
US20220247720A1 (en) System for Controlling Network Access of Node on Basis of Tunnel and Data Flow, and Method Therefor
US10924280B1 (en) Digital notary use in distributed ledger technology (DLT) for block construction and verification
US11222135B2 (en) User device privacy protection
KR20200089491A (ko) 공유된 디지털 키를 관리하기 위한 장치 및 방법
CN117235771B (zh) 一种应用程序的权限管控方法和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150702

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150702

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant