CN101093531B - 一种提高计算机软件安全的方法 - Google Patents

一种提高计算机软件安全的方法 Download PDF

Info

Publication number
CN101093531B
CN101093531B CN2007100218228A CN200710021822A CN101093531B CN 101093531 B CN101093531 B CN 101093531B CN 2007100218228 A CN2007100218228 A CN 2007100218228A CN 200710021822 A CN200710021822 A CN 200710021822A CN 101093531 B CN101093531 B CN 101093531B
Authority
CN
China
Prior art keywords
mandate
virus
computer software
security
authorization
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
Application number
CN2007100218228A
Other languages
English (en)
Other versions
CN101093531A (zh
Inventor
李宏强
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN2007100218228A priority Critical patent/CN101093531B/zh
Publication of CN101093531A publication Critical patent/CN101093531A/zh
Application granted granted Critical
Publication of CN101093531B publication Critical patent/CN101093531B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种提高计算机软件安全的方法,其本质和原理是在任何可执行的代码在被载入内存执行之前必须经过严格的明确的身份验证与授权,阻止不明代码或被病毒感染的代码被执行。二进制授权的前提是身份验证,因此其客体是所有可能被执行的对象(不论是直接执行还是间接解释执行或调用执行),所有对象的主体信息在经过授权机制时首先被进行加密的身份标识,主体对象任何可能的变动(包含位置、名称、时间、内容等等所有信息)均会导致身份标识的变化,这样经过安全授权的对象一旦感染病毒或其它原因被修改,其授权将会失去,可避免病毒或有害代码的执行和继续传播。

Description

一种提高计算机软件安全的方法
技术领域
本发明涉及计算机安全领域,通过对计算机中运行的代码进行授权(二进制授权),提高计算机软件的安全。本发明可应用于病毒、木马及网络攻击的防御、软件知识产权的保护及新一代操作系统等方面。
背景技术
目前随着计算机应用技术的发展和应用范围的扩大,安全问题成为计算机领域一个非常重要的内容,据咨询机构Infonetics最新出炉的研究报告,2006年全球网络安全设备和软件市场收入比上年增长了15%,达到了45亿美元,并有望在2007年首次超过50亿美元(数据来源:中国电子政务网-http:∥www.e-gov.org.cn/wangluoanquan/news003/200703/52284.html),而这仅仅是网络安全市场,表明计算机安全已经成为当前该领域一个非常严重的问题。以下分别列举目前计算机安全领域几个主要的方面来说明:
1、病毒防御:传统的病毒防御大多采用特征码比对的方式,目前主流的市场杀毒软件大多采用此方式,这种方式明显的缺陷很多,如滞后于新型病毒、病毒库越来越庞大、面对不断的新病毒变种疲于应付、消耗大量的计算机资源(如内存、CPU计算能力)和人力物力等等,非常被动,不符合计算机发展的趋势。目前还有一些防病毒产品采用了所谓“行为特征判断”、“微点主动防御”(“国家八六三计划反计算机入侵和防病毒研究中心”专家委员会专家刘旭提出)等方法,但这种方法的效果很值得怀疑,此类方法一些已经应用于市场多年(如瑞星等产品),效果并不理想。因为目前计算机应用范围的扩大,各种用途的软件不可胜数,新病毒的思路和方法也层出不穷,严格地讲,可以说并不存在病毒和非病毒之间明确的“行为特征”差异,也不存在任何一种算法能够实现“完全主动防御”所有病毒。因此,传统的这些防病毒方法并不是好的出路。
还有一些与传统方法有区别的思路,如已公开的发明“危机病毒防治的软件自我保护方法”(公开号:CN1068205A)、“计算机软件保护方法”(公开号:CN1155700A)、“一种计算机病毒防御方法”(公开号:CN01140073.0、“一种预防病毒程序传染的方法和系统”(公开号:CN01113879.3)、“一种基于软件身份认证技术的计算机安全保护方法”(公开号:CN 200610078622.1)等等,由于各种缺陷,均不能或很难有效地彻底解决病毒问题。如CN01113879.3发明采用简单限制程序读写来处理,既增加成本,又限制软件功能发展利用,同时具有很大的局限性(很多病毒并不只限于在本机读写);发明CN01140073.0分别针对各类常见病毒采用不同方式进行处理,效果也不理想,如对脚本病毒的处理采用判断提示的方法,但实际中脚本和非脚本的判断并非明显,而且脚本并不全是以独立文件形式存在;对宏病毒的处理则涉及相关知识产权和商业机密的壁垒,而且宏病毒的处理显然过于浪费资源;对文件型病毒的处理采用写入重定位,再利用知识库进行查询处理,但文件型病毒并非只存在于可执行文件中,可执行文件也并非全是一成不变的,对可执行文件的写操作及变化不全是病毒行为等等;而且除了该发明列举的4类病毒之外还有其它类型的病毒;发明CN 200610078622.1以软件身份识别为基础,采用安全认证数据库和认证服务器进行集中认证的方法,这种方法有一定的先进性,但也存在一些明显的缺陷,如什么是软件?以该发明的描述看,显然是以“可执行文件特征码”为主体,存在较大的漏洞;该发明采用的“可信赖的权威机构认证”也存在时间、成本、可行性等方面的问题;该发明需要事先建立固定的安全认证数据库,操作与维护均相当繁杂,包含已知和未知的程序数量可能有无数个,如何事先建立?对开发人员而言这种系统下调试程序将成为一种非常困难的操作,而且一旦实际需要执行具有一定危害特征的程序时在这种系统下将很难实现,无法实现向下兼容;该发明采用网络协议的方式与认证服务器进行数据交换(即使认证服务器在同一台机器上),对无网络设备或未安装相关协议的计算机则无法实施,通过网络协议进行数据交换的过程也容易被追踪与篡改;另外采用这种方式成本非常高,也不能解决大量的单独使用的计算机的问题。
近年来微软针对软件安全方面也采取了很多的措施,如以NTFS格式为代表的一系列安全措施,这种方式在一定程度上加强了系统的安全性,但由于其有以下局限性导致效果有限:安全授权主体是用户,未涉及到全部可执行代码;对可执行对象未进行有效的身份验证;使用范围有限等等。
2、木马和恶意软件、广告软件及黑客攻击等:目前对于此类安全问题,一般采用放火墙(包括软硬件)和相关查杀木马等软件来解决,主要存在以下几方面的问题:成本过高、消耗资源过大、使用不方便、功能滞后等问题。
发明内容
为了概括本发明的目的,在这里描述了本发明的某些方面、优点和新颖特征。应了解,无需所有这些方面、优点和特征包含在任一特殊的实施例中。
本发明的目的是提供一种以“二进制授权”为核心的方法,无论是用于病毒木马等防御方面,还是用于操作系统方面,均可实现一种比目前使用的计算机系统更为安全可靠的系统,同时还具备软件知识产权保护的辅助作用。从短期看,本发明可很快用于病毒防御领域,不采用任何“特征码”或“行为分析判断”等方法,可在很大程度和范围内防御新出现的任何以现有病毒原理为基础的病毒,历史上的原有病毒将只有收藏价值,从长期看,本发明可用于新一代操作系统的设计,实现后既可完全兼容原有旧版本环境下的软件(实现历史投资保护),又使现有的病毒原理在新的环境下失去生存的基础,极大地提高了未来可能出现的“新型原理病毒”的技术门槛,“新型原理病毒”将成为可预见时期内成本极端昂贵的只存在于理论中的问题。
计算机经历了从单机到网络的发展,也经理了从单任务到多任务的发展。Windows NT刚出现的时候其C2级安全标准吸引了当时很大的注意力,到目前为止,随着安全问题的日益严重,是到了提高操作系统安全级别的时候了。根据美国国防部的计算机安全等级(正式名称为可信任计算机标准评估标准),C2级以上的标准如下:
B1级:标志安全性保护:要求特别的安全性计划,所有的保密数据都要加一标志,在系统中传递这些数据时必须核对标志。用户不能自己改变这些标志。
B2级:结构化保护,要求结构化的、正规的安全性计划。用户账户验证功能增强,以确定每个用户合法的安全性权限。
B3级:安全域:要求安全性系统尽可能小,排除一切无权限代码执行。这些代码可能不利于系统的安全性和测试,要求有附加的有关安全性管理的工具。系统必须有很强的反无权改动和侵入。
A1级:核实的设计:功能和B3相同,但A1要经过更严格、更正规的测试。
如果采用该标准提高操作系统的安全等级,哪怕是进一小步采用B1级标准,操作系统就需要完全重新开发,而这种标准的操作系统对现有大部分市场而言,不仅仅是造成大量历史投资的浪费,还带来了完全不同的更为复杂的操作方式,客户将很难接受这样的新操作系统。因此,按照这种标准进行升级是很不现实的。针对目前的安全问题,采用有针对性的方法予以解决,而又不会带来操作系统太大的变动,是一个理想的选择。
在此基础上,本发明针对目前病毒、木马等流行安全问题,提出二进制授权的方法,二进制授权的原理(可参照附图1)与目前的流行网络系统的用户授权与验证类似,授权的客体是计算机内所有自成单位的可执行的二进制对象,包括但不限于可执行文件、动态链接库等文件,凡是可组成一系列完整在计算机内存执行的二进制对象,都被系统标识为可授权的对象,授权方式可采用多种方式,不同的应用场合可采用不同授权方式(参照附图3)。
在这种条件下,任何外来的可执行的对象均为未经授权的,在本机内是不能运行的,除非经过显式的明确的授权,本机内未经授权的包含可执行二进制代码的对象也相同。这样外来病毒或木马等二进制对象在本机是不能执行的,自然不具备传播和破坏能力。即使用户因各种原因需要选择给病毒或木马授权以运行,但因为授权是可分级的,因此,对于怀疑病毒或危险的不明程序等对象,可采用有限授权的方式,系统会对一些不明的边缘程序采取监控保护的模式处理,可避免或限制其某类行为模式或活动范围,这样即使病毒发作甚至感染其它对象,也很容易被控制,因为被感染后的对象将变成无授权对象,导致其不能继续传播。
在一般情况下,系统内90%以上的程序和可执行对象的授权均是一次性简单完成的,只有在安装或接受新程序或对象时才需要授权,因此,授权读一系统使用造成的影响是很小的,不会因此而导致使用上的极不方便。
授权的方式是采用分级、加密来进行的,二进制对象的唯一特征码与授权信息均为加密处理过,任何对二进制对象的改变(包括长度和内容等信息)将导致授权信息的无效,即使误操作对病毒类程序进行了不应该的授权,但这种机制导致病毒的每一次传播都将被发现而且除非用户不断地误操作或彻底完全授权才能保证病毒在机器内的不断传播,当然,这种操作是机制内完全允许的,如同目前用户主动格式化硬盘或删除重要的数据一样。
由于采用私钥进行加密,每台机器的授权信息都是不同的,甚至加密方法都是不同的,简单的机器间的程序复制需要明确授权后方可进行,复制的程序将不会被允许运行,如果软件采用了加密措施,那么复制的软件可以做到不被允许授权执行,利用这种机制,软件开发商可轻易实现防止软件的非法复制,这可用于知识产权的保护。这还有一种用途,如目前金融领域广泛采用的证书,在此机制下如果将证书也纳入,那么将明显提高其安全性,比如在目前的系统中,一些金融或其他机构的证书(如中国建设银行的银行卡支付证书),在Ghost之后,备份还原到其它机器时,证书是可用的,这显然造成很大的风险,而授权机制可保证该证书Ghost备份被还原到非原始条件的机器时无效。另外,授权机制还允许程序发布者设置一定的灵活的允许授权条件,只有首先符合目标程序内部设置的条件的程序才允许被授权执行,这样为软件开发商保护软件不被非法拷贝提供一种途径。
本发明的有益效果:
本发明与现有的一些计算机安全领域的技术产品相比,具有非常明显的优点:防病毒类产品越做越庞大,投入的各类资源也越来越大,但国内媒体在2006年出现的“熊猫烧香”病毒事件后却有了“病毒已经成为一个产业”的说法,这不能不说是一种讽刺,社会财富被大量消耗,对计算机和信息产业的发展也造成极大的负面影响;网络安全事故层出不穷,给相关机构带来很大的损失;微软新一代操作系统WindowsVista从推出测试版本和正式版本以来,安全方面的问题不断被提出;网络安全市场逐年增大,2007年将可能突破50亿美元等等。如果采用本发明,短期内新的防病毒软件即可开发出来,传统的病毒和木马等安全威胁将得到极大的控制;未来一旦采用此发明技术的操作系统出现,那这些威胁会更将被控制在可忽略的范围内,同时也将对计算机文化造成很大的影响,大量目前从事计算机安全领域的人才和用于计算机安全领域的资源被解放出来,必将推动计算机和信息技术的大发展。
附图说明
图1、二进制授权的原理;
图2、二进制授权的客体对象;
图3、不同应用环境下的授权方式示例;
图4、对传统病毒的处理方式;
图5、木马程类序的处理方式;
图6、部分黑客攻击处理方式示例;
图7、软件知识产权保护示例。
具体实施方式
以下参照附图对本发明的原理及技术方案做进一步的说明。
1、二进制授权的原理(可参照附图1)
本发明的本质和原理是在任何可执行的代码在被载入内存执行之前必须经过严格的明确的身份验证与授权,阻止不明代码后被病毒感染的代码被执行。
2、二进制授权的前提是身份验证,因此其客体是所有可能被执行的对象(不论是直接执行还是间接解释执行或调用执行),所有对象的主体信息在经过授权机制时首先被进行加密的身份标识,主体对象任何可能的变动(包含位置、名称、时间、内容等等所有信息)均会导致身份标识的变化,这样经过安全授权的对象一旦感染病毒或其它原因被修改,其授权将会失去,可避免病毒的继续传播,参考附图2。
3、授权机制可采用各种不同的方式来进行。授权和身份标识可采用如下三种不同的方式:一是根据对象结构在其内部(如头部、中间或尾部)加入加密的身份与授权信息;二是显式或隐式建立与对象对应的独立的授权对象;三是在操作系统内统一建立集中的身份与授权信息库。参照附图3。
4、授权机制的具体应用可参照附图4-7。由于授权机制本身是显式授权,同时授权机制有独立的强制密码保护机制,在自身软硬件环境之外的第三方突破该机制的难度非常大,传统的病毒在传统的条件下的执行和传播是不受任何限制的,而在该机制下病毒的每一步执行和传播都将面临难以逾越的障碍。同时传统的很多黑客和攻击行为也将面临极大的限制,软件的安全性将得到极大的提高。
虽然本发明已以较佳实施例公开如上,但它们并不是用来限定本发明,任何熟习此技艺者,在不脱离本发明之精神和范围内,自当可作各种变化或润饰,因此本发明的保护范围应当以本申请的权利要求保护范围所界定的为准。

Claims (5)

1.一种提高计算机软件安全的方法,包括以下步骤:
身份验证,判断是否为授权客体,所有可能被执行的对象,包含任何直接或间接、编译型、解释型或其它任何类型可能被载入执行的对象,均为授权客体;
授权,任何可执行的代码在被载入内存执行之前必须经过严格的明确的身份验证与授权,所有对象的主体信息在经过授权机制时首先被进行加密的身份标识,主体对象任何可能的变动均会导致身份标识的变化,只有经过授权的对象才允许被执行;
身份和授权无误,则载入内存执行,身份和授权错误,则拒绝执行并记录;
授权可分层次与等级,不同等级的授权可进行不同的执行后处理;
所述的授权机制可采用各种不同的方式来进行,授权和身份标识采用如下三种不同的方式:一是根据对象结构在其内部加入加密的身份与授权信息;二是显式或隐式建立与对象对应关联的独立的授权对象;三是在操作系统内统一建立集中的身份与授权信息库。
2.根据权利要求1所述的提高计算机软件安全的方法,其特征在于,所述的客体对象任何可能的变动包含位置、名称、时间、内容所有信息。
3.根据权利要求1所述的提高计算机软件安全的方法,其特征在于,所述的授权客体包括执行文件、动态连接文件、静态连接文件、其它控件类对象、宏类型文件、其它脚本文件及解释执行类对象、其它任意可装载运行对象。
4.根据权利要求1所述的提高计算机软件安全的方法,其特征在于,在操作系统层面或在操作系统与应用程序之间或在应用程序层面建立的一套安全验证与授权体系。
5.根据权利要求1所述的提高计算机软件安全的方法,其特征在于,通过身份验证与授权保护个体计算机安全,切断病毒或木马及其它有害代码的执行及感染途径,实现保护全体计算机的安全。
CN2007100218228A 2007-04-30 2007-04-30 一种提高计算机软件安全的方法 Expired - Fee Related CN101093531B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007100218228A CN101093531B (zh) 2007-04-30 2007-04-30 一种提高计算机软件安全的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007100218228A CN101093531B (zh) 2007-04-30 2007-04-30 一种提高计算机软件安全的方法

Publications (2)

Publication Number Publication Date
CN101093531A CN101093531A (zh) 2007-12-26
CN101093531B true CN101093531B (zh) 2011-05-11

Family

ID=38991786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100218228A Expired - Fee Related CN101093531B (zh) 2007-04-30 2007-04-30 一种提高计算机软件安全的方法

Country Status (1)

Country Link
CN (1) CN101093531B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299760B (zh) * 2008-05-28 2011-07-20 北京星网锐捷网络技术有限公司 信息安全处理方法与信息安全处理系统、通信设备
CN102135877B (zh) * 2010-01-27 2014-05-28 金蝶软件(中国)有限公司 自动化构建方法及装置
US20120079278A1 (en) * 2010-09-28 2012-03-29 Microsoft Corporation Object security over network
US8776223B2 (en) * 2012-01-16 2014-07-08 Qualcomm Incorporated Dynamic execution prevention to inhibit return-oriented programming
US9166987B2 (en) 2013-04-25 2015-10-20 Tencent Technology (Shenzhen) Company Limited Preventing identity fraud for instant messaging
CN111159691B (zh) * 2019-12-23 2022-03-11 北京工业大学 一种应用程序动态可信验证方法及系统
CN114091023A (zh) * 2021-11-23 2022-02-25 国汽智控(北京)科技有限公司 可执行文件的检查方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN101093531A (zh) 2007-12-26

Similar Documents

Publication Publication Date Title
Firesmith Specifying reusable security requirements.
CN103620613B (zh) 用于基于虚拟机监视器的反恶意软件安全的系统和方法
CN101093531B (zh) 一种提高计算机软件安全的方法
Ahmadvand et al. A taxonomy of software integrity protection techniques
Fattori et al. Hypervisor-based malware protection with accessminer
Paccagnella et al. Logging to the danger zone: Race condition attacks and defenses on system audit frameworks
Maniath et al. Survey on prevention, mitigation and containment of ransomware attacks
McIntosh et al. Applying staged event-driven access control to combat ransomware
Yang et al. Solarwinds software supply chain security: Better protection with enforced policies and technologies
McIntosh Intercepting ransomware attacks with staged event-driven access control
Bishop et al. Case studies of an insider framework
Gu et al. Continuous intrusion: Characterizing the security of continuous integration services
Unnibhavi et al. Secure and Policy-Compliant Query Processing on Heterogeneous Computational Storage Architectures
Lu et al. DIFCS: a secure cloud data sharing approach based on decentralized information flow control
CN101819619A (zh) 一种防止病毒及木马的方法
Crandall et al. Holographic vulnerability studies: Vulnerabilities as fractures in interpretation as information flows across abstraction boundaries
Al-Shorafat Security in software engineering requirement
Khurshid et al. ShieLD: Shielding Cross-zone Communication within Limited-resourced IoT Devices running Vulnerable Software Stack
Wolf Ransomware detection
Wadali et al. How Efficient Is Blockchain While Dealing with Android Malware? A Review Paper
Javed et al. Blockchain-Based Logging to Defeat Malicious Insiders: The Case of Remote Health Monitoring Systems
Delaney The effectiveness of antivirus software
Srivastava et al. Sandbox Technology in a Web Security Environment: A Hybrid Exploration of Proposal and Enactment
Roy et al. Modelling of enterprise insider threats
Feng et al. Security audit in mobile apps security design

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110511

Termination date: 20140430