1.一种在终端中执行的基于应用证书来检测应用安装包的安全性的方法,包括:
(a)在应用证书库中,查找与待检测的应用安装包中包含的应用相对应的应用证书;
(b)对在所述应用证书库中查找到的应用证书以及所述应用安装包中包含的应用证书进行比对;以及
(c)基于所述比对的结果,根据一条或多条预定检测标准来提供相应的检测结果。
2.根据权利要求1所述的方法,其中,所述应用证书库位于所述终端中,且是由所述终端从远程服务器下载的。
3.根据权利要求2所述的方法,还包括:
(d)向所述远程服务器发送更新请求,所述更新请求用于请求更新所述应用证书库;
(e)从所述远程服务器接收更新请求结果以及可能的用于更新应用证书库的更新数据。
4.根据权利要求3所述的方法,在步骤(e)之后还包括:
如果所述更新请求结果指示存在针对所述应用证书库的更新,则所述终端使用接收到的所述更新数据来更新所述应用证书库。
5.根据权利要求3所述的方法,其中,所述更新数据是完全更新数据或增量更新数据。
6.根据权利要求1所述的方法,其中,所述应用证书库中的每一条应用证书记录至少包括:
用于识别应用的应用特征数据;以及
与该应用相对应的应用证书。
7.根据权利要求1所述的方法,其中,所述应用证书包括以下数据中的至少一项:版本信息、序列号、签名算法、发行机构、有效期、证书所有人、证书所有人公开密钥、以及证书发行者对证书的签名信息。
8.根据权利要求7所述的方法,其中,所述预定检测标准包括:在所述应用证书库中查找到的应用证书和所述应用安装包中包含的应用证书之间比对得到的不匹配项是否包括以下一项或多项:版本信息、序列号、签名算法、发行机构、证书所有人、证书所有人公开密钥、以及证书发行者对证书的签名信息。
9.根据权利要求8所述的方法,其中,步骤(c)包括:
如果确定不匹配项包括版本信息、序列号、签名算法、发行机构、证书所有人、证书所有人公开密钥、以及证书发行者对证书的签名信息中的一项或多项,则提供指示所述应用安装包的应用证书非法的检测结果,否则提供指示所述应用安装包的应用证书合法的检测结果。
10.根据权利要求1所述的方法,其中,如果所述应用安装包被加密,则在所述应用安装包自解密之后,才执行步骤(a)及其后续步骤。
11.根据权利要求1所述的方法,其中,如果所述应用安装包未被加密,则在获取到所述应用安装包之后,就执行步骤(a)及其后续步骤。
12.根据权利要求1所述的方法,在步骤(a)之前还包括:
将所述应用安装包保存在存储器的临时隔离区中。
13.根据权利要求12所述的方法,在步骤(c)之后还包括:
如果所述检测结果指示所述应用安装包的应用证书合法,则将所述应用安装包移动至原目标下载位置并继续正常安装步骤;以及
如果所述检测结果指示所述应用安装包的应用证书非法,则终止所述应用安装包的安装过程和/或向所述终端的用户告警。
14.根据权利要求1所述的方法,其中,如果在步骤(a)中未找到与待检测的应用安装包中包含的应用相对应的应用证书,则所述方法在步骤(a)和步骤(b)之间包括:
(a1)向远程服务器提交所述应用安装包并请求所述远程服务器更新应用证书库;
(a2)从所述远程服务器接收针对所述应用证书库的更新数据;以及
(a3)使用接收到的所述更新数据来更新所述应用证书库。
15.一种基于应用证书来检测应用安装包的安全性的终端,包括:
查找单元,用于在应用证书库中,查找与待检测的应用安装包中包含的应用相对应的应用证书;
比对单元,用于对在所述应用证书库中查找到的应用证书以及所述应用安装包中包含的应用证书进行比对;以及
提供单元,用于基于所述比对的结果,根据一条或多条预定检测标准来提供相应的检测结果。
16.一种在服务器中执行的辅助检测应用安装包的安全性的方法,包括:
(a)从应用的官方发布渠道获取所述应用;
(b)针对所述应用执行一项或多项安全性分析;
(c)基于所述一项或多项安全性分析的结果,判断所述应用的安全性;以及(d)将被判断为安全的应用的应用证书存放到应用证书库中。
17.根据权利要求16所述的方法,其中,所述安全性分析包括以下各项中的一项或多项:证书信息分析、权限要求分析、网络行为分析、以及关键API调用分析。
18.根据权利要求16所述的方法,其中,所述应用证书包括以下数据中的至少一项:版本信息、序列号、签名算法、发行机构、有效期、证书所有人、证书所有人公开密钥、以及证书发行者对证书的签名信息。
19.根据权利要求16所述的方法,其中,所述应用证书库中的每一条应用证书记录至少包括:
用于识别应用的应用特征数据;以及
与该应用相对应的应用证书。
20.根据权利要求16所述的方法,还包括:
(e)从终端接收更新请求,所述更新请求用于请求更新所述终端上的终端应用证书库;
(f)根据所述更新请求中包括的版本信息,判断所述终端是否应当更新其终端应用证书库;以及
(g)基于所述判断,向所述终端发送更新请求结果以及可能的用于更新所述终端的终端应用证书库的更新数据。
21.根据权利要求20所述的方法,其中,所述更新数据是完全更新数据或增量更新数据。
22.根据权利要求16所述的方法,还包括:
从终端接收用于针对特定应用安装包来更新应用证书库的请求和所述特定应用安装包的数据;
针对所述特定应用安装包中包含的应用执行一项或多项安全性分析;
基于所述一项或多项安全性分析的结果,判断所述特定应用安装包中包含的应用的安全性;以及
基于所述判断,更新所述服务器的应用证书库,并向所述终端发送与所述特定应用安装包相关的针对所述终端的终端应用证书库的更新数据。
23.一种辅助检测应用安装包的安全性的服务器,包括:
获取单元,用于从应用的官方发布渠道获取所述应用;
分析单元,用于针对所述应用执行一项或多项安全性分析;
判断单元,用于基于所述一项或多项安全性分析的结果,判断所述应用的安全性;以及存放单元,用于将被判断为安全的应用的应用证书存放到应用证书库中。
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-01-16
|
2012-10-19
| | |
2
| |
2011-10-19
|
2011-04-28
| | |
3
| |
2010-12-15
|
2010-08-31
| | |
4
| |
2006-10-11
|
2006-05-16
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 1 | | 2014-06-30 | 2014-06-30 | | |
2 | | 2014-07-18 | 2014-07-18 | | |
3 | | 2016-11-15 | 2016-11-15 | | |
4 | | 2015-02-28 | 2015-02-28 | | |
5 | | 2014-09-26 | 2014-09-26 | | |
6 | | 2014-07-31 | 2014-07-31 | | |
7 | | 2014-05-16 | 2014-05-16 | | |
8 | | 2015-02-28 | 2015-02-28 | | |
9 | | 2014-12-10 | 2014-12-10 | | |
10 | | 2014-07-31 | 2014-07-31 | | |