本发明涉及互联网通信技术领域,特别是一种基于数字证书的应用程序进程控制方法与系统。
背景技术:
操作系统启动过程中会启动许多系统本身的进程和服务,同时还会启动很多应用程序,包括系统自带程序以及后期客户所安装的程序。为保证操作系统的安全性,操作系统在运行过程中应该提前识别哪些程序具有恶意,哪些程序需要阻止。目前,大部分是通过提取程序特征进行存储,无法快速高效的起到识别的作用,程序控制不严密的情况时有发生,如果这些程序或者应用程序中有恶意的程序,并且顺利启动,容易感染病毒或者遭受攻击,将会对操作系统造成破坏,这是十分危险的,特别是在很多涉密行业。
数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件,最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名,数字证书还有一个重要的特征就是只在特定的时间段内有效。当使用数字证书进行身份认证时,将随机生成128位的身份码,每份数字证书都能生成相应但每次都不可能相同的数码,从而保证数据传输的保密性,即相当于生成一个复杂的密码。
如何将数字证书技术应用于系统启动,利用数字证书强大的安全特性保证操作系统开机启动时不会加载带有病毒或者不安全的应用程序,是本领域技术人员应该考虑的问题。
技术实现要素:
本发明的目的是提供一种基于数字证书的应用程序进程控制方法与系统,旨在解决当前对于应用程序启动需要依靠计算哈希值造成的识别缓慢的问题,实现快速高效的对应用程序进行识别预警,提高操作系统的安全性和可靠性。
为达到上述技术目的,本发明提供了一种基于数字证书的应用程序进程控制方法,包括以下步骤:
S101、将操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值放入数据库中;
S102、进行数字证书解析,如果解析成功则判定为正规程序,否则进入下一步;
S103、将解析不出签名的应用程序特征值与数据库中的特征值进行匹配,匹配成功则允许加载,否则需要通过用户进行确认。
优选地,所述操作系统的关键项为操作系统安全程序的进程信息。
优选地,所述应用程序特征值为应用程序进程信息。
优选地,所述步骤S102具体为:
S201、利用数字证书的公钥计算数字证书的签名值,验证其是否与该数字证书的签名值相同,如果相同,则验证成功;否则验证失败并进入步骤S203;
S202、验证接收到的数字证书是否标记为已吊销,是则验证通过,否则验证失败;
S203、如果验证成功后则判定为正规程序,否则标记为待处理应用程序。
优选地,所述步骤S103具体操作为:
S301、加载应用程序进程;
S302、将加载的应用程序进程信息与数据库中存放的可执行应用程序进程记录进行比对;
S303、如果数据库中存在相同的应用程序进程信息,则对应用程序进行放行;否则对应用程序进行冻结,交由用户确认。
本发明还提供了一种基于数字证书的应用程序进程控制系统,包括:
特征值数据库搭建模块,用于将操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值放入数据库中;
数字证书解析模块,用于进行数字证书解析;
特征值匹配模块,用于将解析不出签名的应用程序特征值与数据库中的特征值进行匹配,匹配成功则允许加载,否则需要通过用户进行确认。
优选地,所述操作系统的关键项为操作系统安全程序的进程信息。
优选地,所述应用程序特征值为应用程序进程信息。
优选地,所述数字证书解析模块具体包括:
签名值验证单元,用于利用数字证书的公钥计算数字证书的签名值,验证其是否与该数字证书的签名值相同;
吊销状态验证单元,用于验证接收到的数字证书是否标记为已吊销;
数字证书判定单元,用于如果验证成功后则判定为正规程序,否则标记为待处理应用程序。
优选地,所述特征值匹配模块具体包括:
进程加载单元,用于加载应用程序进程;
进程比对单元,用于将加载的应用程序进程信息与数据库中存放的可执行应用程序进程记录进行比对;
进程判定单元,用于如果数据库中存在相同的应用程序进程信息,则对应用程序进行放行;否则对应用程序进行冻结,交由用户确认。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
与现有技术相比,本发明通过设置应用程序特征值数据库,在数据库中存放操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值,在系统启动应用程序时,可根据当前启动应用程序的特征值与数据库记录进行比对,以此完成数据库对应用程序的自动筛查鉴别,对于数据库中未能鉴别的应用程序交由用户确认是否放行,从而保证了系统启动时加载应用程序的安全性,解决了现有技术中对于应用程序启动需要依靠计算哈希值造成的识别缓慢的问题,实现快速高效的对应用程序进行识别预警,极大程度上提高了操作系统的安全性和可靠性。
附图说明
图1为本发明实施例中所提供的一种基于数字证书的应用程序进程控制方法流程图;
图2为本发明实施例中所提供的一种数字证书解析方法流程图;
图3为本发明实施例中所提供的一种应用程序特征值比对方法流程图;
图4为本发明实施例中所提供的一种基于数字证书的应用程序进程控制系统框架图。
具体实施方式
为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
下面结合附图对本发明实施例所提供的一种基于数字证书的应用程序进程控制方法与系统进行详细说明。
如图1所示,本发明实施例公开了一种基于数字证书的应用程序进程控制方法,包括以下步骤:
S101、将操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值放入数据库中;
S102、进行数字证书解析,如果解析成功则判定为正规程序,否则进入下一步;
S103、将解析不出签名的应用程序特征值与数据库中的特征值进行匹配,匹配成功则允许加载,否则需要通过用户进行确认。
Windows操作系统启动的时候首先启动自身需要的应用程序,要求识别过程高效,不影响程序的启动效率。因此将操作系统的关键项和常见的经过用户确认过的未签名或者签名解析不出的应用程序特征值,即应用程序进程信息放入数据库中,以供启动操作系统时对应用程序进行匹配以及判断,即当用户不清楚启动的应用程序是做何操作,以及会不会对操作系统造成损害,通过设置数据库并在数据库中进行匹配鉴别,根据分析结果,配置成通过或拒绝该访问程序。
在操作系统底层对应用程序进行数据采集与存储,采集的程序是未进行数字签名或者签名解析失败的程序。优选地,采集所有的操作系统中未进行数字签名或者签名解析失败的程序,从而可以更好的兼容所有操作系统。通过该操作,可以对操作系统安全性进行加固。
在数据库建立后,其中存放的是所有可执行的应用程序进程信息,即应用程序白名单,对于数据库的完善,需要每隔一段时间进行循环重新扫描,并根据数据库实时诊断操作,加入新的应用程序进程信息,从而数据库趋于更高的全面性。
当操作系统启动时,对应用程序进行数字证书解析,如果解析成功则判定正规程序,并对该应用程序进行放行,运行该应用程序;否则,需要进一步处理,其具体操作如图2所示:
S201、利用数字证书的公钥计算数字证书的签名值,验证其是否与该数字证书的签名值相同,如果相同,则验证成功;否则验证失败并进入步骤S203;
S202、验证接收到的数字证书是否标记为已吊销,是则验证通过,否则验证失败;
S203、如果验证成功后则判定为正规程序,否则标记为待处理应用程序。
对于待进一步处理的应用程序,将解析不出签名的应用程序特征值与数据库中的特征值进行匹配,具体操作如图3所示:
S301、加载应用程序进程;
S302、将加载的应用程序进程信息与数据库中存放的可执行应用程序进程记录进行比对;
S303、如果数据库中存在相同的应用程序进程信息,则对应用程序进行放行;否则对应用程序进行冻结,交由用户确认。
通过设置双重验证程序,按照级别依次进行数据库和用户鉴别后再对应用程序进行放行,将所有恶意启动的读写和执行权限进行过滤,最大限度保证了系统启动的安全性。
本发明实施例通过设置应用程序特征值数据库,在数据库中存放操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值,在系统启动应用程序时,可根据当前启动应用程序的特征值与数据库记录进行比对,以此完成数据库对应用程序的自动筛查鉴别,对于数据库中未能鉴别的应用程序交由用户确认是否放行,从而保证了系统启动时加载应用程序的安全性,解决了现有技术中对于应用程序启动需要依靠计算哈希值造成的识别缓慢的问题,实现快速高效的对应用程序进行识别预警,极大程度上提高了操作系统的安全性和可靠性。
如图4所示,本发明实施例还公开了一种基于数字证书的应用程序进程控制系统,包括:
特征值数据库搭建模块,用于将操作系统的关键项和经过确认的未签名或者签名解析不出的应用程序特征值放入数据库中;
数字证书解析模块,用于进行数字证书解析;
特征值匹配模块,用于将解析不出签名的应用程序特征值与数据库中的特征值进行匹配,匹配成功则允许加载,否则需要通过用户进行确认。
所述操作系统的关键项为操作系统安全程序的进程信息。
所述应用程序特征值为应用程序进程信息。
所述数字证书解析模块具体包括:
签名值验证单元,用于利用数字证书的公钥计算数字证书的签名值,验证其是否与该数字证书的签名值相同;
吊销状态验证单元,用于验证接收到的数字证书是否标记为已吊销;
数字证书判定单元,用于如果验证成功后则判定为正规程序,否则标记为待处理应用程序。
所述特征值匹配模块具体包括:
进程加载单元,用于加载应用程序进程;
进程比对单元,用于将加载的应用程序进程信息与数据库中存放的可执行应用程序进程记录进行比对;
进程判定单元,用于如果数据库中存在相同的应用程序进程信息,则对应用程序进行放行;否则对应用程序进行冻结,交由用户确认。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。