终端可信软件的度量和认证的制作方法

文档序号:6504661阅读:467来源:国知局
终端可信软件的度量和认证的制作方法
【专利摘要】本发明专利首先对应用软件可信性的静态度量和动态度量分别进行了研究,并从可行性方面分别对两种度量方法进行了分析和改进;然后,对实现应用软件可信性混合度量需要使用的相关关键技术进行了分析和介绍,主要是系统调用截获技术,包括核心级的截获技术和用户级的截获技术;最后,设计和实现了应用软件可行性混合度量的应用系统,系统是C/S工作模式,从阻止危害软件的运行来保护计算机系统的安全。
【专利说明】终端可信软件的度量和认证
【技术领域】:
[0001]首先,对应用软件可信性的静态度量和动态度量分别进行了研究,并从可行性方面分别对两种度量方法进行了分析和改进;然后,对实现应用软件可信性混合度量需要使用的相关关键技术进行了分析和介绍,主要是系统调用截获技术,包括核心级的截获技术和用户级的截获技术;最后,设计和实现了应用软件可行性混合度量的应用系统,系统是C/S工作模式,从阻止危害软件的运行来保护计算机系统的安全。
【背景技术】:
[0002]现代社会是信息时代,信息的传递无时无刻不在影响着人们的生活,随着信息技术的发展,信息安全问题越来越严重。信息安全问题已经上升到国家安全层面,信息安全问题面临着前所未有的挑战。由防火墙、入侵检测和病毒防范为主构成的传统信息安全系统,在变化多端的恶意攻击手段面前毫无防御能力,“老三样、堵漏洞、做高墙、防外攻,防不胜防”就是信息安全的基本现状[1]。面对信息安全的种种问题,人们意识到要解决信息安全问题,必须确保计算机源头的信息安全,必须从计算机的芯片、硬件结构等底层出发,对计算机平台进行综合管理,这样出现了可信计算[2]。近年来,可信计算技术正越来越受到人们的关注,成为信息安全新的热点研究方向,自1983年美国国防部制定了世界上第一个《可信计算机系统评价准则》TCSEC(Trusted computer system evaluation criteria) [3],可信计算已经经历了很长的发展历程,国内外已经取得一些成就,一些技术已经在实践中得到了应用。可信计算体现整体安全思想,有别于传统的安全技术,从终端开始防范攻击。可信计算的核心思想是在计算机系统中加入一个可信芯片,把可信芯片作为一个信任根,从信任根开始一级度量认证一级,一级信任一级,这样就建立一个信任链,从信任根开始到硬件设备、操作系统、应用软件、网络系统,形成一个完整的可信计算机系统[4]。一个可信计算机系统由可信根、可信硬件平台、可信操作系统和可信操作系统之上的可信应用系统组成。

【发明内容】
:
[0003](I)对应用软件可信性的静态度量方法进行研究,主要分析了静态度量方法存在的劣势,提出将验证数据库分到客户端和服务器端两部分,客户端存放少量的常用数据,这样能够很好地保证验证效率。
[0004](2)对应用软件可信性的动态度量方法进行研究,主要从实时监控应用软件的软件行为方面进行了研究,对危害软件的危害行为进行了总结归纳,监控应用软件的软件行为主要是监控软件的危害行为,在这些危害行为发生之前阻止其发生,保证计算机的安全。
[0005](3)基于以上两种应用软件可信性的度量方法,提出一种混合度量方面,并且从可信性、应用性方面进行了分析。对其中所需要使用到的技术进行了深入的研究,如系统调用截获技术、驱动程序设计等。
[0006](4)设计和实现了一个基于应用软件可信性混合度量的安全防护系统。该系统是在C/S模式下工作,分客户端和服务器两部分,客户端又包括应用层和驱动层两次结构。该系统能够很好地阻止危害软件危害行为的发生,保证计算机安全稳定地运行。
【专利附图】

【附图说明】:
[0007]图1:系统总体框架图
[0008]图2:系统运行过程图
[0009]图3:客服端各模块交互图
[0010]图4:服务器各模块交互图
【具体实施方式】:
[0011]一、系统的总体框架
[0012]系统总体框架分为以下三个部分(如附图图1):
[0013]客户端驱动层模块:客户端驱动层模块负责监控计算机中将要启动和加载的进程,将截获到将要启动和加载的进程信息发送到应用层的客户端;接受从客户端发送来的信息,并做出相应反应比如对运行进程的控制操作,如挂起进程、结束进程等操作。
[0014]客户端:与客户端的启动层进行交互包含获取从驱动层传来的进程信息和向驱动层发送操作命令;如果客户端数据库中不存在进程的信息,则需要将相关信息发送到服务器,并接收从服务器返回的查询结果;统计陌生程序出现的次数和状况,发送程序到服务器供服务器对陌生程序进程可信度量;实时监控应用软件的软件行为;定期对客户端数据库进行维护,清理一些不存在的应用软件信息,提高查询效率。
[0015]服务器:与客户端进行交互包括接收客户端发来的请求和回复根据请求查询的相应结果;度量新的应用软件的可信性。
[0016]二、系统运行过程
[0017]系统的整体运行过程(如附图图2所示):
[0018]首先在驱动层中设置一个回调函数,当有进程启动时,回调函数捕获到将要启动进程的进程信息然后从中解析出进程名称、进程所在路径等信息,并将这些信息传递给应用层的客户端程序,回调函数结束。
[0019]客户端对接收到的进程求其二进制代码的Hash值,然后首先从客户端的数据库中查询应用软件的可信性,如果客户端的数据库中不存在此应用软件的可信信息,则发送请求信息到服务器端,服务器端来完成进程信息的查询。通过与服务器端数据库中的进程比较来判断将要启动进程的可信性。服务器端将查询的结果返回客户端,客户端根据客户端数据库查询的结果或从服务器返回的结果做出相应的行动。如果是可信的进程就允许通过,让其正常运行;如果是不可信的危害进程,就结束进程阻止其运行。对于新出现的程序,比如用户自己编写的程序在客户端和服务器数据库中都不存在其可信信息,采取提醒用户的方式,如果用户自己希望这部分进程运行,就对这部分进程进行动态度量,实时监控这部分进行的软件行为,如果在度量过程中发现会产生危害的进程,则提醒用户,并且结束此进程阻止其继续运行。
[0020]三、系统主要功能设计与实现
[0021](I)客服端部分的设计与实现(如附图图3所示):
[0022]客户端主要包括进程启动截获模块、软件行为截获模块、数据库模块、数据库维护更新模块、与服务器通信等功能模块。各模块的相互交互如图3所示:
[0023]进程启动截获模块主要是对将要启动进程的截获操作、进程控制操作和对客户端数据库的操作。进程启动的截获采用的技术是截获系统服务分派表SSDT,通过编写驱动层程序来实现。进程控制包括挂起、结束、恢复等操作。
[0024]软件行为截获模块是对应用软件的软件行为截获,通过从用户级截获系统调用来实现。软件行为截获模块也有与用户交互、进程控制的功能,根据用户的选择进而来对截获的软件行为做出对应的操作。
[0025]数据库维护更新模块主要是为了保证数据库查询的高效性,定期对安装在客户端计算机上的应用软件进行扫描并与客户端限制列表中的内容进行比较,对限制列表定期进行更新维护。当计算机有新的应用软件安装时,对数据库进行增加,如果有的程序被卸载,相应地删除数据库中相关的内容。
[0026](2)服务器部分的设计与实现(如附图图4所示):
[0027]服务器主要包括可信验证模块、数据库操作模块、与客户端通信等功能模块。各模块的相互交互如附图图4所示。
[0028]数据库操作模块主要是进行根据客户端发送来的查询请求来对数据库进行查询、对新的数据项加入数据库等操作。
[0029]可信验证模块主要是验证应用软件的可信性来扩大服务器的数据库的容量,验证方法主要包括:收集软件厂商提供的正版软件的Hash值;通过在虚拟环境中运行应用软件,根据应用软件的软件行为和运行轨迹来判断软件的可信性,这部分工作需要手动来完成。
[0030]通信模块与客户端的通信模块一起完成服务器与客户端的通信功能,为服务器和客户端提供信息交互的作用。
【权利要求】
1.本专利在对应用软件可信性静态度量和动态度量进行研究的基础上,针对这两种度量方法存在的缺陷,提出了应用软件可信性的混合度量。
2.设计和实现了基于应用软件可信性混合度量的安全防护系统,该系统属于C/S工作模式,通过对运行在终端计算机上的应用软件可信性的度量,允许可信的应用软件运行,阻止不可信的应用软件运行,以达到保护终端计算机安全的目的。
3.本系统分为客户端和服务两部分,选用了SHA-1哈希算法,客户端和服务器的通信采用了 OpenSSL软件包提供的加解密、摘要算法、生成证书等服务。
4.本系统可以对应用软件的可信性进行度量,可以解决应用软件带来的危害问题,能够保证运行在计算机上的应用软件是安全可靠的,其发生的软件行为不会给计算机带来危害,如果有危害则在危害软件的行为发生前阻止其发生。
【文档编号】G06F21/51GK103679003SQ201310254451
【公开日】2014年3月26日 申请日期:2013年6月25日 优先权日:2013年6月25日
【发明者】韩永飞 申请人:厦门密安信息技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1