为计算机程序执行体创建可靠的执行环境的方法和系统技术方案

技术编号:2919377 阅读:198 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境(AxE)的方法和系统。在示例性实施例中,所述方法和系统包括(1)将所述执行体转换为目标是所述计算机系统的计算机程序,以及(2)在所述计算机系统上提供其中可以访问所述程序的环境。在示例性实施例中,所述转换包括扰乱所述执行体。在示例性实施例中,所述转换包括将文件系统元数据附加到所述执行体。在示例性实施例中,所述提供包括只有当所述程序符合策略时才在所述计算机系统上执行所述程序。在示例性实施例中,所述提供包括在将所述环境加载到所述计算机系统之前阻止在所述计算机系统上执行恶意代码。

【技术实现步骤摘要】

本专利技术涉及计算机操作系统和计算机系统的安全,更具体地说,涉及为计算机系统上的至少一个计算机程序执行体创建可靠的执行环境的方法和系统。
技术介绍
在计算机系统上运行计算机程序提出了挑战。例如,流氓计算机程序能够在计算机系统上执行,至少会给人带来困扰,最糟糕的是可能对计算机系统产生不可挽回的损坏。此外,盗版的计算机程序可以在计算机系统上执行。同样,可以在计算机程序上非法(也许是偶然)使用计算机程序。还难以确保“增值”(或部署的)计算机程序只在预期(或目标)计算机系统上执行。需要可靠的执行环境对于通常由信息技术(IT)组织“管理”的计算机程序来说,解决此类问题更紧迫,更有用。此类计算机程序管理在企业中是实际的,其中用户几乎不安装和维护自己的所有计算机程序。在此类情况中,计算机程序的资产管理和许可证跟踪对用户来说是棘手、复杂和麻烦的。此外,策略符合验证或实施是显式的(例如,代理必须主动检查是否符合)。根据应用二进制接口(ABI)生成计算机程序执行体(包括恶意软件),这会在此类型的计算机系统中提供低级一致性。这样,恶意软件(例如,病毒、蠕虫、特洛伊木马)将知道它要在其上执行的软件/硬件体系结构。“外来的”计算机程序执行体必须以计算机系统的操作系统可理解的格式存在并且必须符合ABI。因此,来自某一类型的计算机系统(平台)的恶意软件通常不会影响其他平台。恶意软件期望特定的运行时环境。相反地,为使操作系统运行计算机程序执行体,所述执行体必须符合计算机系统所支持的ABI。具体地说,如果从操作系统的角度,执行体是“垃圾”,则不会运行所述执行体。现有技术防御系统如现有技术的图1所示,典型的现有技术防御系统尝试通过(1)检测恶意软件和(2)阻止恶意软件尝试执行的恶意操作来使恶意软件无效。此类现有技术系统可以通过(a)确定地或试探地识别恶意软件签名,(b)分析恶意软件的行为,或者(c)在“沙盒”中运行恶意软件来检测恶意软件。不幸地是,如今此类技术已经变得极为复杂,并且它们都不能满足需要。因此,需要一种为在计算机系统上的至少一个计算机程序执行体创建可靠的执行环境的方法和系统。
技术实现思路
本专利技术提供了在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境(AxE)的方法和系统。在示例性实施例中,所述方法和系统包括(1)将所述执行体转换为用于所述计算机系统的计算机程序,以及(2)在所述计算机系统上提供其中可以访问所述程序的环境。在示例性实施例中,所述转换包括扰乱所述执行体。在特定实施例中,所述扰乱包括将软件加密方案应用于所述执行体。在特定实施例中,所述扰乱包括将硬件辅助的加密方案应用于所述执行体。在特定实施例中,所述扰乱包括将硬件加密方案应用于所述执行体。在示例性实施例中,所述转换包括将文件系统元数据附加到所述执行体。在示例性实施例中,所述提供包括只有当程序符合策略时才在所述计算机系统上执行所述程序。在示例性实施例中,所述执行包括,如果所述程序被加密并且包括来自所述计算机系统的文件系统的元数据,则根据所述策略来解扰所述程序。在特定实施例中,所述解扰包括(a)相对于所述计算机系统来验证所述程序的完整性,(b)如果相对于所述计算机系统验证了所述程序的完整性,则解扰所述程序,以及(c)如果解扰了所述程序,则在所述计算机系统上运行所述程序。在示例性实施例中,所述执行包括,如果所述程序未被扰乱并且包括文件系统元数据,则根据所述策略来运行所述程序。在示例性实施例中,所述执行包括,如果所述程序未被扰乱并且不包括来自所述计算机系统的文件系统的元数据,则根据所述策略拒绝所述程序的执行。在示例性实施例中,所述提供包括在将所述环境加载到所述计算机系统上之前阻止恶意代码在所述计算机系统上执行。在特定实施例中,所述阻止包括拒绝对所述计算机系统的HKLM注册表巢(hive)修改请求。在特定实施例中,所述阻止包括拒绝写入所述计算机系统上的/System/Library/Extensions文件夹。在示例性实施例中,所述提供包括只有当程序符合策略时才从所述计算机系统读取所述程序。在示例性实施例中,所述提供包括只有当程序符合策略时才在所述计算机系统上写入所述程序。本专利技术还提供了一种可与可编程计算机一起使用的其中包含可读程序代码的在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境的计算机程序产品。在示例性实施例中,所述计算机程序产品包括(1)将所述执行体转换为用于所述计算机系统的计算机程序的计算机可读代码,以及(2)在所述计算机系统上提供其中可以访问所述程序的环境的计算机可读代码。本专利技术还提供了一种提供服务以在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境的方法。在示例性实施例中,所述方法包括(1)将所述执行体转换为用于所述计算机系统的计算机程序,以及(2)在所述计算机系统上提供其中可以访问所述程序的环境。附图说明图1是现有技术的流程图;图2是根据本专利技术的示例性实施例的流程图; 图3A是根据本专利技术的示例性实施例的转换步骤的流程图;图3B是根据本专利技术的特定实施例的扰乱步骤的流程图;图3c是根据本专利技术的特定实施例的扰乱步骤的流程图;图3D是根据本专利技术的特定实施例的扰乱步骤的流程图;图4是根据本专利技术的示例性实施例的扰乱步骤的流程图;图5A是根据本专利技术的示例性实施例的提供步骤的流程图;图5B是根据本专利技术的示例性实施例的执行步骤的流程图;图5C是根据本专利技术的特定实施例的解扰步骤的流程图;图5D是根据本专利技术的示例性实施例的执行步骤的流程图;图5E是根据本专利技术的示例性实施例的执行步骤的流程图;图6A是根据本专利技术的示例性实施例的提供步骤的流程图;图6B是根据本专利技术的特定实施例的阻止步骤的流程图;图6C是根据本专利技术的特定实施例的阻止步骤的流程图;图7是根据本专利技术的示例性实施例的提供步骤的流程图;以及图8是根据本专利技术的示例性实施例的提供步骤的流程图。具体实施例方式本专利技术提供了在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境(AxE)的方法和系统。在示例性实施例中,所述方法和系统包括(1)将所述执行体转换为用于所述计算机系统的计算机程序,以及(2)在所述计算机系统上提供其中可以访问所述程序的环境。参考图2,在示例性实施例中,本专利技术包括将所述执行体转换为用于所述计算机系统的计算机程序的步骤212,以及在所述计算机系统上提供其中可以访问所述程序的环境的步骤214。转换执行体加密执行体参考图3A,在示例性实施例中,转换步骤212包括扰乱执行体的步骤312。接着参考图3B,在特定实施例中,扰乱步骤312包括将软件加密方案应用于所述执行体的步骤322。接着参考图3C,在特定实施例中,扰乱步骤312包括将硬件辅助的加密方案应用于所述执行体的步骤332。在特定实施例中,所述硬件辅助的加密方案是IBM公司(在下文中为“IBM”)的信任平台模块(TPM)和基于插件的“扰乱方案”。接着参考图3D,在特定实施例中,扰乱步骤312包括将硬件加密方案应用于所述执行体的步骤342。在示例性实施例中,扰乱步骤312将所述执行体分成页的集合(每个页包括4096个字节),且每个集合包含可变的页数。扰乱步骤312然后搅乱所述集合并可选地转换指令的代码以生成新的文件,即加密的本文档来自技高网
...

【技术保护点】
一种在计算机系统上为至少一个计算机程序执行体创建可靠的执行环境的方法,所述方法包括:将所述执行体转换为目标是所述计算机系统的计算机程序;以及在所述计算机系统上提供其中可以访问所述程序的环境。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:A辛格A夏尔马
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1