防御恶意代码而对计算机程序和数据进行保护的方法和装置制造方法及图纸

技术编号:2881001 阅读:211 留言:1更新日期:2012-04-11 18:40
本发明专利技术涉及一种防止不置信程序而对计算机进行保护的方法。每一个计算机的客体和进程都被分配有置信属性,该置信属性规定了其与系统内的其它客体相互作用的方式。置信属性是被分层规定的,这样进程即不能访问比其自身具有更高置信水平的客体。当进程访问具有较低置信水平的客体时,该进程的置信水平将被降低到被访问的客体的置信水平。具有不同置信水平的进程和客体之间的相互作用是完全可编程控制的。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】
技本领域本专利技术涉及一种保护计算机数据和程序的方法,更为概要地说,涉及计算机系统和网络的安全性。本专利技术有助于防止由恶意代码攻击引起的数据破坏和丢失的发生。我们将经过设计或改动、用于有意识地从计算机系统或者网络上破坏或偷窃其上运行的数据或程序的任何代码称为“恶意”或“不友好”代码。由于除了可知晓代码对于用户最终是否有益之外,没有办法在程序上识别正面和负面的程序作用,因此防止不友好代码是一个具有挑战性的问题。例如一个程序可以删除一个文件,因为用户明确地要求该程序如此运行,但是一个恶意程序也可以违反用户的意志而删除一个文件。换句话讲对“恶意”代码或“不友好”代码没有恰当的技术规定——上述“恶意”代码是根据其在计算机上的预期行为而由其合法用户确定的。虽然有可能利用密码来确认被授权的用户,但置信用户自己也可能无意中运行了包含恶意指令如“病毒”的程序而危及系统和网络的安全性能,上述病毒如为“特洛伊木马程序”、“恶意宏病毒”、“恶意脚本病毒”、“蠕虫病毒”、“侦探程序”和“后门”。一个计算机病毒是一个通过将其自身附加在其它程序上而进行复制的程序。一个特洛伊木马程序是一个通常不执行用户期望要进行的程序,而是执行恶意的操作如数据破坏或者系统恶化。宏和脚本是用高级语言编写成的程序,它们可由应用程序如字处理程序进行解释并加以执行,以便能使频繁的任务自动执行。因为许多宏和脚本语言极少需要或者完全不需要用户的交互作用,恶意宏病毒和脚本病毒经常被用来在没有得到用户许可的情况下将病毒或者特洛伊木马程序引入到系统中。蠕虫是一个程序,它像一个病毒一样可以自己扩散。但与病毒不同,蠕虫不会感染其它寄主程序而是通过网络手段如电子邮件将其自己传送给其它用户。侦探程序是特洛伊木马程序的一个子类型,其可被秘密地安装在一个受害的计算机上从而将机密数据和密码由该计算机传送给放置该病毒的人。后门是一个秘密功能,附加到程序上从而允许该程序的作者闯入或对其滥用,或者一般来说为其自身利益而利用该功能。所有上面的程序都无视用户的意志,可通过破坏数据、从一个文件传播到另一个文件或者将秘密数据传送给非授权人而危及计算机系统和公司的机密性。多年来,产生了不同的技术来防止恶意程序从而对计算机系统进行保护特征扫描程序通过使用一个预规定的“公知病毒”清单来检测病毒。他们对每一个文件进行扫描来寻找列在其公知病毒数据库之内的每一个病毒特征。每当在世界上任何地方发现一个新病毒时,都将该病毒添加到数据库中。然而目前每一天都要产生越来越多的新病毒,为了使公知病毒清单有效要不断地对其进行更新。定期升级反病毒软件对于单用户和网络管理员都是一个沉重的负担,并且在软件升级之间留下了重要的安全空缺。另一种通常被称为试探式扫描的检测方法包括对程序进行扫描来找出可疑指令,上述可疑指令为恶意程序和特定的病毒的典型,而无须为了在文件中检测到病毒而拥有每一个病毒的精确的特征。然而恶意程序的作者可以通过不同方式书写代码和/或对其进行加密而避免或隐藏这些典型指令,这样很快即可避免恶意代码和病毒为试探式扫描程序所检测到。Mann的美国专利US5408642和美国专利US5349655以及Kephart等人的美国专利US5613002中都公开了用于恢复受病毒感染的计算机程序的方法。所公开的这些方法包括在受到病毒感染之前生成一个数据指纹并将该指纹进行存储。然后生成第二个数据指纹并将其与在前数据串进行比较,从而确定出该数据是否被病毒破坏并将数据恢复到其初始状态。这些技术不能防止病毒感染,而且它们不能防御其它类型的恶意程序。本人的美国专利US6073239公开了一种方法,其中对文件的I/O活动进行过滤。每当一个程序试图感染或者将代码引入到另一个程序文件中时,都将对其加以拒绝。然而该方法仅被设计成适合于防御可执行文件型的病毒。它不对其它类型的病毒如宏病毒以及其它类型的恶意程序如蠕虫程序、特洛伊木马程序、后门或侦探软件起作用,因为这些恶意程序既不引入代码也不修改其它程序,而是直接进行恶意动作如破坏数据。Jablon等人的美国专利US5421006公开了一种在系统初始化阶段评定计算机系统软件完整性的方法。在允许其执行之前对启动进程加以校验。然而该方法既不能防止受保护的进程在最初即被破坏,它也不能处理数据和程序——除非它们与系统启动相关。其它安全性方法要点在于确保得到授权的程序运行而阻止所有其它未经授权的程序。然而遗憾的是这些技术并非总是适合于开放系统,在这种开放系统中用户会接收和交换许多文件。一种通用的安全系统要点在于建立访问控制清单(即ACL、DACL),上述访问控制清单规定了限制和权限,从而根据这些用户的权限而允许用户访问或者不允许访问某些特定资源。例如通常允许系统管理员修改任何文件而同时一般用户既不能阅读也不能修改某些机密或关键性文件。上述安全系统通常被集成到现代的操作系统中从而可确保单用户基础(per-user basis)上的数据的安全性和机密性。然而重要的是区分并理解,该安全配置是被设计来处理用户信用的问题,而不是代码信用的问题。在其系统之内运行恶意程序的用户会在无意中损害各资源和文件的完整性,而他们被允许访问这些资源和文件并无进一步保护措施。例如我们说用户X被赋予了访问共享文件A、B和C的全权。如果该用户运行了一个受病毒感染的程序,病毒将可以阅读、感染甚至破坏文件A、B和C。这是由于事实上访问控制清单即如此设计,使得程序和任务运行于启动它们的用户的安全环境(securitycontext)中。这样即使用户实际不想危害文件A、B、C,然而根据用户的权限,他所运行的程序确实对这些文件造成了危害——无论该用户意愿如何。这就是恶意代码问题的核心。如果一个用户运行了不友好代码,该代码将可以破坏和偷窃其用户访问的系统或网络之内的任何数据。如果系统管理员运行了一个不友好代码,整个系统和网络将会立即遇到危险。除了这些安全性问题外,访问控制清单是为每一个文件和资源静态确定的。在文件每天都被共享和交换的环境中,由于用户通常不会花时间为每一个产生或接收的新文件分配权限安全属性,这样就不会具有防御恶意代码的足够的安全性能。这样的系统公开于以下文献中欧洲专利EP-A-0 472 487或者《计算机通讯》杂志第13卷第9期第571-580页(Computer Communication vol.13 no.9 pp.571-580)J.Moffett等人所著论文《确认分布式系统的任意访问控制的策略》(Specifying Discretionary Access Control Policy for DistributedSystem)。“沙箱”技术能对可疑程序进行测试,它是使这些可疑程序安全地运行在一个安全的“沙箱”环境中而不会使被测试的程序对系统或其文件造成危害。然而因为例如这些程序侦测到他们正在被测试或者它们被设计成随机的或在某些日期执行攻击性活动,所以在测试期间这些恶意程序可能不会立即执行攻击性或者期望的活动。因此在测试期间一个程序看起来运行正常,但是一旦它通过测试并允许进行实际的运行,该程序可能会对系统造成危害。而且由于正面程序(positiveprogram)也许基于正当的原因而需要访问系统内的文件和资源,因本文档来自技高网...

【技术保护点】
一种防止不友好代码保护计算机的方法,包括如下步骤:规定至少两个置信组;将计算机内的客体和进程分配到所述置信组中的一个内,而不考虑所述计算机的用户的权限;根据一个进程对一个客体或第二个进程的操作,将进程的一个置信组与客体的一个置信 组或者与第二进程的置信组相比较;根据所述比较步骤的结果确定是否允许进行该操作。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:E多坦
申请(专利权)人:安泰马维尔有限公司
类型:发明
国别省市:VG[英属维尔京群岛]

相关技术
    暂无相关专利
网友询问留言 已有1条评论
  • 来自[天津市电信IDC机房] 2015年03月09日 20:34
    1.埋,多音字:(1)mái,把东西放在坑里用土、雪、落叶盖上。或指隐藏。如“掩埋”“埋葬”。(2)mán,指因为事情不如意而对人或事物表示不满、责怪。如“埋怨”。
    0
1
相关领域技术
  • 暂无相关专利