一种提升杀毒应用程序安全性的方法及系统的制作方法_3

文档序号:9708663阅读:来源:国知局
体所处的REE环境是可能被攻击和篡改的,因此,本发明为避免杀毒应用程序主体扫描到的应用信息数据被篡改后去欺骗杀毒引擎,在杀毒应用程序主体和杀毒引擎服务器间数据交互上增加了非对称加密进行保护,所采用的加密算法和密钥强度可以保护应用信息数据的安全。
[0090]其中,本发明采用的加密技术手段可以扩展到所有REE和TEE数据交互的场景。
[0091]与上述方法实施例相对应,本发明还提供了一种提升杀毒应用程序安全性的系统。
[0092]参见图3,本发明实施例公开的一种提升杀毒应用程序安全性的系统的结构示意图,包括:
[0093]启动单元31,用于处于REE的杀毒应用程序主体利用接收到的用户输入的杀毒指令,启动杀毒功能;
[0094]其中,REE(RichExecut1n Environment,富执行环境)指的是AndroicULinux、Windows、1S等操作系统。在本申请中,REE主要指Android操作系统。
[0095]需要说明的是,本步骤中的杀毒应用程序主体功能包括传统杀毒应用程序中除了杀毒引擎之外的其他部分,包括用户界面、扫描应用程序部分等。
[0096]提取单元32,用于所述杀毒应用程序主体扫描所在设备上安装的各应用程序,并提取各所述应用程序的应用信息数据;
[0097]存放单元33,用于所述杀毒应用程序主体将所述应用信息数据存放到文件系统中;
[0098]命令发送单元34,用于所述杀毒应用程序主体调用杀毒引擎客户端,触发所述杀毒引擎客户端向处于TEE的杀毒引擎服务端发送病毒检测命令;
[0099]其中,TEE(TrustedExecut1n Environment,可信执行环境)相比REE而言,功能比较简单,且侧重于安全性设计,在本专利中特指基于TrustZone的安全操作系统。
[0?00] TrustZone是一个安全术语,中文名为安全域,这个概念是ARM公司(一家全球领先的半导体知识产权提供商)提出并推广的,可以理解为基于CPU (Centra I ProcessingUnit,中央处理器)硬件的安全域。
[0101]接收单元35,用于所述杀毒引擎服务端接收所述病毒检测命令,并从所述文件系统获取所述应用信息数据;
[0102]需要说明的是,文件系统是REE和TEE可以共同访问的,REE和TEE通过文件系统进行信息交互,交互内容包括病毒库、扫描应用程序扫描得到的应用信息数据等。
[0103]检测单元36,用于所述杀毒引擎服务端利用预先从所述文件系统加载的病毒库对所述应用信息数据进行检测,并将检测结果发送至所述杀毒引擎客户端;
[0104]具体的,杀毒引擎服务端利用病毒匹配算法将病毒库和应用信息数据进行匹配,从而实现对应用信息数据的检测。
[0105]结果发送单元37,用于所述杀毒引擎客户端将所述检测结果发送至所述杀毒应用程序主体。
[0106]综上可以看出,本发明提供的提升杀毒应用程序安全性的系统,杀毒应用程序主体将提取的各应用程序的应用信息数据存入文件系统中,处于TEE的杀毒引擎服务端从文件系统获取应用信息数据,然后利用预先加载的病毒库对该应用信息数据进行检测,并将检测结果通过杀毒引擎客户端发送给杀毒应用程序主体。可以看出,本发明将杀毒应用程度中的关键模块杀毒引擎服务端转移到基于TrustZone(安全域)的安全操作系统的TEE中,从而使杀毒应用程序在Android操作系统中运行到这些关键模块时,自动跳转到基于TrustZone的安全操作系统来执行,由于该安全操作系统本身是为安全设计,因此不会开源出源代码给攻击者研究,从而加大了攻击者分析和研究的难度。同时,基于TrustZone的安全操作系统在运行的时候,Android操作系统本身处于“冻结”状态,常规的Android病毒或者分析工具无法访问到基于TrustZone的安全操作系统。因此本发明可以有效加大杀毒应用程序被分析和恶意利用的难度,从而提升了杀毒应用程序的安全性。
[0107]为进一步优化上述实施例,还包括:
[0108]显示单元,用于所述杀毒应用程序主体在用户界面显示所述检测结果。
[0109]具体的,当杀毒引擎服务端在应用信息数据中检测到病毒时,杀毒应用程序主体会在用户界面显示病毒信息;
[0110]当杀毒引擎服务端在应用信息数据中没有检测到病毒时,杀毒应用程序主体会在用户界面显示当前设备正常的提示信息。
[0111]为进一步提升杀毒应用程序的安全性,本发明还对获取的应用信息数据进行了加
LU O
[0112]因此,在上述实施例中,存放单元33包括:
[0113]存放子单元331,用于所述杀毒应用程序主体利用公钥对所述应用信息数据进行加密,并将加密后的应用信息数据存放到文件系统中。
[0114]与此同时,检测单元36包括:
[0115]解密子单元361,用于所述杀毒引擎服务端利用与所述公钥对应的私钥对所述应用信息数据进行解密,得到解密后的应用信息数据;
[0116]检测子单元362,用于所述杀毒引擎服务端利用预先从所述文件系统加载的病毒库对所述解密后的应用信息数据进行检测,并将检测结果发送至所述杀毒引擎客户端。
[0117]具体参见图4,本发明另一实施例公开的一种提升杀毒应用程序安全性的系统的结构示意图,包括:
[0118]启动单元31,用于处于REE的杀毒应用程序主体利用接收到的用户输入的杀毒指令,启动杀毒功能;
[0119]提取单元32,用于所述杀毒应用程序主体扫描所在设备上安装的各应用程序,并提取各所述应用程序的应用信息数据;
[0120]存放子单元331,用于所述杀毒应用程序主体利用公钥对所述应用信息数据进行加密,并将加密后的应用信息数据存放到文件系统中;
[0121]命令发送单元34,用于所述杀毒应用程序主体调用杀毒引擎客户端,触发所述杀毒引擎客户端向处于TEE的杀毒引擎服务端发送病毒检测命令;
[0122]接收单元35,用于所述杀毒引擎服务端接收所述病毒检测命令,并从所述文件系统获取所述应用信息数据;
[0123]解密子单元361,用于所述杀毒引擎服务端利用与所述公钥对应的私钥对所述应用信息数据进行解密,得到解密后的应用信息数据;
[0124]检测子单元362,用于所述杀毒引擎服务端利用预先从所述文件系统加载的病毒库对所述解密后的应用信息数据进行检测,并将检测结果发送至所述杀毒引擎客户端;
[0125]结果发送单元37,用于所述杀毒引擎客户端将所述检测结果发送至所述杀毒应用程序主体。
[0126]由于杀毒应用程序主体所处的环境是Android操作系统,杀毒引擎服务端所处的环境是TrustZone操作系统,因此杀毒应用程序主体和杀毒引擎服务端是相互独立的,为保护二者传输信息的完整性,本发明使两部分程序分别持一个非对称加密的公私钥(比如,RSA加密算法),杀毒应用程序主体持公钥,在扫描得到应用信息数据后,利用公钥对该应用信息数据进行加密,然后将加密后的应用信息数据在文件系统进行存储;杀毒引擎服务端持有私钥,在从文件系统获取应用信息数据后,利用私钥对其解密,得到解密后的应用信息数据。
[0127]综上可以看出,本发明通过对扫描得到的应用信息数据进行加密保证了被检测信息的完整性,同时保证其未被篡改。
[0128]为进一步提升杀毒应用程序的安全性,上述实施例中的病毒库为加密病毒库。
[0129]杀毒引擎服务端从文件系统加载病毒库后,首先对该病毒库进行解密,然后利用解密后的病毒库对解密后的应用信息数据进行检测。
[0130]其中,病毒库的加密过程可以和应用信息数据一样,或是采用其他方式加密,本发明在此不做限定。
[0131]需要说明的是,本发明为进一步加大攻击者分析和研究杀毒应用程序的难度
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1