一种防止病毒及木马的方法

文档序号:6601045阅读:108来源:国知局
专利名称:一种防止病毒及木马的方法
技术领域
本发明涉及计算机运行安全的技术,具体是指一种能够有效防止病毒和木马影响 计算机运行安全的方法。
背景技术
病毒和木马严重影响计算机的安全运行,为了避免和防止计算机在运行的过程中 受到攻击或侵犯,现有技术中已公开了很多防止技术病毒和木马的方案,如使用特征码及 病毒库的方式,由于病毒及木马不断地出现及不断地变异,很难做到有效并及时地对病毒 及木马进行防范。随着病毒及木马的不断增加,病毒库会不断地增大,从而大大地影响系统 的运行。由于是使用特征码的方式,所以容易产生误报,影响用户的操作。此外,现有的方案中也有不采用特征码及病毒库的方案,如授权公告号是 CN100520797C、专利号是ZL200710032109. 3的中国发明专利,公开了一种一防止病毒动态 攻击程序的装置和方法,其中,该方法是这样实现的创建一桌面管理器;所述桌面管理器 为一受到桌面边界保护模块保护的桌面的列表;创建一桌面;将所述桌面加入到所述桌面 管理器;利用所述桌面边界保护模块对与所述桌面相关的操作进行监控,使所述桌面受到 保护;所述桌面边界保护模块包括一程序授权管理模块,所述程序授权管理模块根据其包 含的已授权程序列表监控和/或拦截系统中线程或进程对与所述被保护桌面相关操作的 执行行为。上述方案仅可以阻止病毒跨桌面进行攻击操作,如向其他桌面上的程序进行 HookS、消息、伪造窗口的钓鱼攻击等,以确保此其他桌面中运行的程序难以被盗号木马等 病毒动态攻击,其应用范围及保护效果并不广泛。

发明内容
本发明旨在克服现有技术的不足提供一种不使用特征码及病毒库、能够有效安全 的防止病毒和木马的方法。为了实现上述目的,本发明设计出一种防止病毒及木马的方法,其包括如下过程 对要运行的程序,预先标明该程序在运行时需要对真实环境对象的访问权限;构建一虚拟 机,该虚拟机能够管理程序自身标明的在运行时对真实环境对象的访问权限,为程序的运 行构建相应虚拟及真实的环境;当某一程序在自身标明需要对真实环境中的某一对象进行 访问时,虚拟机会判断该程序是否具有相应的该对象的访问权限,如果有则为其提供真实 的环境,如果没有则以友好的界面提示给用户或提供默认的虚拟环境给程序。本发明防止病毒及木马的方法中所述的虚拟机在程序满足下列一项或二项以上 的条件时,可以自动允许该访问权限A、对象创建者优先拥有对象的设置权限;B、同一身份的程序应该可以相互不受限制地访问;C、如果程序没有自身标明其运行时对真实环境对象的访问权限,例如一些旧有的 程序,虚拟机默认只允许该程序所在目录及其子目录下的所有权限,临时目录下的所有权限,系统目录下的读权限及一些对系统及其它应用程序没有任何影响的相应的权限。D、为了防止钓鱼程序,例如某程序在桌面上创建一快捷方式叫Q0,图标也与QQ的一样,这样用户就很容易错误地打开QO这个程序,所以任何程序如果要在桌面创建快捷方 式的话,可以在其前面加上标号,并在其快捷图标上也加上标号,类似程序也可以做相应的处理。作为对本发明的进一步改进所述的对要运行的程序还可以有限制地标明与其相 关的内容的被访问权限。作为对本发明的更进一步改进所述的对要运行的程序使用加密签名的方式自身 标明自己的身份及其被访问的权限,以便于虚拟机管理其它程序对它的访问。为了防止标明的身份或标明的被访问权限被伪造及篡改,所述的加密签名的方法 可以是如下a、软件制造商生成一组公匙对(私匙,公匙及模);b、接着软件开发商对已标明身份及权限的程序进行HASH运算,得出HASH结果;C、然后再将HASH结果使用私匙进行加密,得出加密后的数字签名;d、最后,将加密后的数字签名附加到程序的指定位置以便第三方软件验证。本发明防止病毒和木马的方法中所述的真实环境对象是指非虚拟系统的对象,可 以为进程或文件或系统硬件或管道或注册表或桌面;所述的访问权限是指读取或写入或删 除或建立。本发明具有的优点1、不使用特征码及病毒库的方式,本发明方法是让程序运行在一个虚拟与真实相 交互的环境中并管理其运行,无论病毒及木马如何变异或生产根本性的变化,都无法脱离 虚拟机对它的限制,所以能有效地及时防范病毒及木马对真实系统中受限文件的侵害。2、由于本发明不使用特征码及病毒库的方式,所以不会因病毒库不断地增大,而 影响系统的运行。3、本发明方法要求程序自身标明其运行时对真实对象的访问权限,不使用特征码 及病毒库的方式,所以也不会产生误报,且由于程序能清楚地标明自身对真实对象的存取 权限,所以应用该方法的第三方杀毒软件能有效地清楚对程序进行解释,并以良好的人机 界面告知用户。


图1为本发明防止病毒和木马的方法的原理示意图。
具体实施例方式为了便于本领域技术人员的理解,下面将结合具体实施例对本发明原理作进一步 的详细描述如图1所示,本发明需要创建一虚拟机,通过虚拟机管理要运行的程序,虚拟机实 现真实系统与虚拟系统的交互。本发明防止病毒和木马的方法包括如下过程对要运行的程序,预先标明该程序 在运行时需要对真实环境对象的访问权限;构建一虚拟机,该虚拟机能够管理程序自身标明的在运行时对真实环境对象的访问权限,为程序的运行构建相应虚拟及真实的环境;当 某一程序在自身标明需要对真实环境中的某一对象进行访问时,虚拟机会判断该程序是否 具有相应的该对象的访问权限,如果有则为其提供真实的环境,如果没有则以友好的界面 提示给用户或提供默认的虚拟环境给程序。本发明防止病毒和木马的方法中所述的真实环境对象是指非虚拟系统的对象,可 以为进程或文件和/或系统硬件和/或管道和/或注册表和/或桌面等;所述的访问权限 是指读取和/或写入和/或删除和/或建立等操作。本发明防止病毒和木马的方法可以以XML格式的资源方式来标明其运行时需要 对真实环境对象的访问权限。程序标明其访问权限的目的主要是为了让虚拟机进行对其管 理。只需要制定统一的标准就可以。以WINDOWS的PE文件为例〈访问权限〉
〈读权限〉< 文件 ><file_l>c :\windows\user32. dll</file_l><file_2>D :\text. txt</file_2></ 文件 >< 进程 ><process_l>word. exe</process_l></ 进程 ></读权限><写权限>〈文件〉<file_l>c :\temp\temp. txt</file_l></ 文件 ><注册表><reg_l>HKEY_CURRENT_USER\SOFTWARE\ytkj</reg_l></ 进程 ></写权限></访问权限〉将以上XML内容添加到程序的资源中,资源类型为RT_RCDATA,资源ID为ID_ PERMISSION,完成以上操作后,程序就能够清楚地表明自身在运行时需要读取user32. dll 及d Atext. txt文件,并能够以读取的权限访问进程WORD. ΕΧΕ,同时程序在运行时还需要 对文件 c :\temp\temp. txt 及注册表 HKEY_CURRENT_USER\SOFTWARE\ytkj 进行写操作。这样虚拟机在为其构建运行环境时就可以根据程序自身标明要求的对真实对象 的访问进行管理,以决定是否允许其访问真实的环境系统。本发明防止病毒和木马的方法可以有限制地标明与其相关的内容的被访问权限。 例如当前程序所在目录下的某一特定文件夹的中内容的是否可以被读写。本发明防止病毒和木马的方法中的程序可以以加密签名的方式标明自身的身份,例如制造商,产品名,版本号等,同时程序还可以自身标明是否可以被其它程序访问或与其 相关的内容是否可以被访问。例如程序可以自身标明自身可以被任意访问,或只能读取不 能写入,或只有具有相同身份的程序才能写入(例如同一制造商或同一产品名的程序)。程 序除了可以标明自身被访问权限外,还可以有限制地标明与其相关的内容的被访问权限, 例如当前程序所在目录下的某一特定文件夹的中内容的是否可以被读写。为了防止标明的身份或标明的被访问权限被伪造及篡改,所以应对其进行加密签 名,加密签名的方法可以有多种,其中之一可以是如下A、软件制造商生成一组公匙对(私匙,公匙及模)B、接着软件开发商对已标明身份及权限的程序进行HASH运算,得出HASH结果
C、然后再将HASH结果使用私匙进行加密,得出加密后的数字签名D、最后,将加密后的数字签名附加到程序的指定位置以便第三方软件验证。虚拟机要验证两个程序是否具有相同的身份,首先验证两者的模及公匙是否相 同,如果相同,则使用模及公匙对加密后的签名进行解密,并验证其对应的HASH结果,看是 否有被伪造及篡改,如果没有,则再验证解密后的制造商及产品名等是否相同。本发明防止病毒和木马的方法中的虚拟机,主要管理程序自身标明的要求对真实 环境的访问,其它的则提供虚拟环境给程序。当程序自身标明要访问某一文件时,虚拟机会 查看被访问的文件标明的权限,是否允许该程序访问,如果可以,则提供真实的环境给该程 序,否则会提示用户做相应的处理或只提供虚拟环境给程序。简单举例如下例如WINDOWS的一些系统的文件的读取,它一般是许可的,如果程序标明要求读 取这些系统文件,虚拟机将会映射真实的文件过去。例如WINDOWS的一些系统的文件的写入,它一般是不允许的,如果程序标明要求 写这些系统文件,虚拟机会对其进行判断,如果程序具有与被操作的文件具有相同的身份, 则将其真实文件映射过去,否则将会拒绝这个要求,并提示用户做相应的处理,或提供虚拟 的文件。例如一些公共文件的访问如注册表,当程序标明要求读取某一注册表键值时,虚 拟机在全局表中查找该注册表键值是否已被其它程序所注册,并设置了相应的权限,如果 没有,就将它登记到全局表中,如果有,则看设置的权限是否允许该程序访问,并进行相应 的处理。该全局表由虚拟机的提供商一般是第三方杀毒软件来进行维护。本发明防止病毒及木马的方法中所述的虚拟机在程序满足下列一项或二项以上 的条件时,可以自动允许该访问权限A、对象创建者优先拥有对象的设置权限;B、同一身份的程序应该可以相互不受限制地访问;C、如果程序没有自身标明其运行时对真实环境对象的访问权限,例如一些旧有的 程序,虚拟机默认只允许该程序所在目录及其子目录下的所有权限,临时目录下的所有权 限,系统目录下的读权限及一些对系统及其它应用程序没有任何影响的相应的权限。D、为了防止钓鱼程序,例如某程序在桌面上创建一快捷方式叫Q0,图标也与QQ的 一样,这样用户就很容易错误地打开QO这个程序,所以任何程序如果要在桌面创建快捷方 式的话,可以在其前面加上标号,并在其快捷图标上也加上标号,类似程序也可以做相应的处理。 上述内容,仅为发明的部份较佳实施例,并非用于限制本发明的实施方案,本领域 技术人员根据本发明的构思,做出的适当变通或修改,都应在本发明的保护范围之内。
权利要求
一种防止病毒及木马的方法,其特征在于,其包括如下过程对要运行的程序,预先标明该程序在运行时需要对真实环境对象的访问权限;构建一虚拟机,该虚拟机能够管理程序自身标明的在运行时对真实环境对象的访问权限,为程序的运行构建相应虚拟及真实的环境;当某一程序在自身标明需要对真实环境中的某一对象进行访问时,虚拟机会判断该程序是否具有相应的该对象的访问权限,如果有则为其提供真实的环境,如果没有则以友好的界面提示给用户或提供默认的虚拟环境给程序。
2.根据权利要求1所述的防止病毒及木马的方法,其特征在于所述的虚拟机在程序 满足下列一项或二项以上的条件时,可以自动允许该访问权限A、对象创建者优先拥有对象的设置权限;B、同一身份的程序应该可以相互不受限制地访问;C、如果程序没有自身标明其运行时对真实环境对象的访问权限,虚拟机默认只允许该 程序所在目录及其子目录下的所有权限,临时目录下的所有权限,系统目录下的读权限及 一些对系统及其它应用程序没有任何影响的相应的权限。
3.根据权利要求1或2所述的防止病毒及木马的方法,其特征在于所述的对要运行 的程序还可以有限制地标明与其相关的内容的被访问权限。
4.根据权利要求1或2所述的防止病毒及木马的方法,其特征在于程序可以使用加 密签名的方式自身标明自己的身份及其被访问的权限,以便于虚拟机管理其它程序对它的 访问ο
5.根据权利要求4所述的防止病毒及木马的方法,其特征在于为了防止标明的身份 或标明的被访问权限被伪造及篡改,所述的加密签名的方法是如下a、软件制造商生成一组公匙对;b、接着软件开发商对已标明身份及权限的程序进行HASH运算,得出HASH结果;c、然后再将HASH结果使用私匙进行加密,得出加密后的数字签名;d、最后,将加密后的数字签名附加到程序的指定位置以便第三方软件验证。
6.根据权利要求1所述的防止病毒及木马的方法,其特征在于所述的真实环境对象 是指非虚拟系统的对象,所述的对象为进程或文件或系统硬件或管道或注册表或桌面;所 述的访问权限是指读取或写入或删除或建立。
全文摘要
本发明公开了一种防止病毒及木马的方法,其包括如下过程对要运行的程序,预先标明该程序在运行时需要对真实环境对象的访问权限;构建一虚拟机,该虚拟机能够管理程序自身标明的在运行时对真实环境对象的访问权限,为程序的运行构建相应虚拟及真实的环境;当某一程序在自身标明需要对真实环境中的某一对象进行访问时,虚拟机会判断该程序是否具有相应的该对象的访问权限,如果有则为其提供真实的环境,如果没有则以友好的界面提示给用户或提供默认的虚拟环境给程序。本发明可以让程序运行在一个虚拟与真实相交互的环境中并管理其运行,无论病毒及木马如何变异或生产根本性的变化,都无法脱离虚拟机对它的限制,所以能有效地及时防范病毒及木马对真实系统中受限文件的侵害。
文档编号G06F21/22GK101819619SQ201010151699
公开日2010年9月1日 申请日期2010年4月14日 优先权日2010年4月14日
发明者梁庆生 申请人:梁庆生
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1