一种物联网第三方规则安全性的检测方法和装置

文档序号:26948939发布日期:2021-10-16 00:15阅读:98来源:国知局
一种物联网第三方规则安全性的检测方法和装置

1.本发明涉及物联网安全技术领域,特别是涉及一种物联网第三方规则安全性的检测方法和装置。


背景技术:

2.物联网应用通过连接各种其他未连接的服务来增强用户的能力。这些应用程序由外部信息源触发,以对外部信息接收器执行操作。基于物联网的规则引擎技术是当前便利用户的一大趋势,主要是通过脚本制定规则来实现一系列操作。目前基于规则引擎原理的快捷指令等技术发展迅速,在这些规则脚本给用户带来便利的同时也产生了一些令人担忧的安全性问题。
3.现有快捷指令功能(如ios提供的快捷指令)对用户的使用有一定门槛,对于未经过编程语言学习的普通用户,往往只能创建并使用简单的规则。但是许多用户想使用更高级的规则,或分享自己设计的规则,基于用户的广泛需求,出现了第三方写好的规则(即一段可执行代码),即第三方规则。第三方规则的格式比较固定,基本为“功能+来源+规则正文”的格式。其中“功能”用简单的短语描述了该规则可提供的功能;“来源”即较为正规的第三方规则机构的署名,标识了该第三方规则的来源,指明了该第三方规则的提供者;“规则正文”即为在系统上可运行的规则代码。第三方规则降低了用户使用高级规则以及分享自己设计的规则的门槛,但是也会容易受到恶意脚本的攻击,包括获取用户的敏感隐私信息等。
4.现阶段能够运用第三方规则的系统中,若用户想使用第三方规则,则需在系统的设置界面打开“允许不受信任的规则”开关。这是使用第三方规则的用户无法避免的一步,否则系统不会允许第三方规则运行。系统开发者虽然为使用第三方规则的用户提供了系统原生的保护系统,但该保护系统会在用户开启“允许不受信任的规则”开关后停止大部分功能,或仅提供不完全的功能。目前的技术并没有对这些第三方规则进行足够严格的安全性检查,只要用户选择使用第三方提供的规则,系统便不再为用户的安全负责,几乎关闭所有的安全检测措施。
5.第三方规则在运行的过程中可能访问恶意网址,运行恶意代码,甚至访问有关用户财产和信息安全的用户资源,如摄像头、话筒等,造成了很大的安全隐患。因此需要一种物联网第三方规则安全性的检测方法和装置,以保护用户在使用第三方规则的系统安全。


技术实现要素:

6.本发明的目的是:提供一种物联网第三方规则安全性的检测方法和装置,保护用户在使用第三方规则的系统安全。
7.为了实现上述目的,本发明提供了一种物联网第三方规则安全性的检测方法,包括:
8.获取第三方规则的规则代码。
9.将所述第三方规则和云端数据库中的验证记录进行比对,若已验证为安全,则允许运行,若已验证为危险,则不允许运行。
10.若所述第三方规则不存在相应的验证记录,则对所述第三方规则中的规则代码进行权限提取并判断提取出的权限中是否包含敏感资源,若不包含敏感资源则将提取出的权限发送给用户并请求用户授权。
11.若包含敏感资源,则对所述第三方规则进行url检测和恶意代码检测,并将检测结果上传至所述云端数据库,以更新所述验证记录。
12.进一步的,所述对所述第三方规则进行url检测和恶意代码检测,具体为:
13.若所述第三方规则同时通过url检测和恶意代码检测,则标记所述第三方规则为安全并上传到云端数据库的验证记录中,将提取出的权限发送给用户并请求用户授权。
14.若所述第三方规则未同时通过url检测和恶意代码检测,则标记所述第三方规则为危险并上传到云端数据库的验证记录中,同时禁止所述第三方规则运行。
15.进一步的,所述url检测的检测方法包括:
16.提取所述第三方规则需要访问的第一url。
17.使用预先定义的恶意网址库对所述第三方规则需要访问的第一url进行恶意网址过滤。
18.若所述第一url存在于恶意网址库中,则确定所述第三方规则未通过url检测。
19.若所述第一url不存在于恶意网址库中,则确定所述第三方规则通过url检测。
20.进一步的,所述恶意代码检测的检测方法包括:
21.提取所述规则代码的特征值,并判断所述特征值是否包含于代码特征库中。
22.若包含,则确定所述第三方规则包含恶意代码,未通过恶意代码检测。
23.若不包含,则将提取到的特征值和良性代码的特征值进行比较,若所述特征值大于良性代码的特征值,则所述第三方规则包含恶意代码,未通过恶意代码检测。
24.进一步的,所述恶意代码检测的检测方法还包括:
25.当检测到提取到的特征值大于良性代码的特征值时,则将所述特征值更新到代码特征库中。
26.进一步的,所述检测方法还包括:
27.响应用户反馈的授权信息并分配权限给所述第三方规则,所述授权信息包括对每个提取到的权限的授权状态,所述授权状态包括永久授权、仅此次授权和拒绝授权。
28.进一步的,所述检测方法还包括:
29.当检测到所述第三方规则运行完毕后,撤销所述第三方规则的所有权限并记录第三方规则运行时的权限的授权状态,当再次运行所述第三方规则时,根据记录的权限的授权状态重新对所述第三方规则进行赋权。
30.进一步的,在将所述第三方规则和云端数据库中的验证记录进行比对前,所述检测方法还包括:获取所述第三方规则的规则来源,检测规则来源是否存储于可信列表,若规则来源存储于可信列表,则允许所述第三方规则运行;若规则来源未存储于可信列表,则将所述第三方规则和云端数据库中的验证记录进行比对。
31.本发明还公开了一种物联网第三方规则安全性的检测装置,包括:第一获取模块、第一检测模块、第二检测模块和第三检测模块。
32.所述第一获取模块,用于获取第三方规则的规则代码。
33.所述第一检测模块,将所述第三方规则和云端数据库中的验证记录进行比对,若已验证为安全,则允许运行,若已验证为危险,则不允许运行。
34.所述第二检测模块,若所述第三方规则不存在相应的验证记录,则对所述第三方规则中的规则代码进行权限提取并判断提取出的权限中是否包含敏感资源,若不包含敏感资源则将提取出的权限发送给用户并请求用户授权。
35.所述第三检测模块,若包含敏感资源,则对所述第三方规则进行url检测和恶意代码检测,并将检测结果上传至所述云端数据库,以更新所述验证记录。
36.进一步的,所述检测装置还包括第一响应模块和撤权赋权模块:
37.所述第一响应模块,用于响应用户反馈的授权信息并分配权限给所述第三方规则,所述授权信息包括对每个提取到的权限的授权状态,所述授权状态包括永久授权、仅此次授权和拒绝授权。
38.所述撤权赋权模块,用于当检测到所述第三方规则运行完毕后,撤销所述第三方规则的所有权限并记录第三方规则运行时的权限的授权状态,当再次运行所述第三方规则时,根据记录的权限的授权状态重新对所述第三方规则进行赋权。
39.本发明实施例一种物联网第三方规则安全性的检测方法和装置与现有技术相比,其有益效果在于:将所述第三方规则和云端数据库中的验证记录进行比对,可以节约检测时间提高检测效率;当第三方规则不存在相应的验证记录,检测提取出的权限是否包含敏感资源,在不涉及敏感资源时,直接询问用户权限分配后即可运行,以此减少安全性检测所花费的时间,尽量减少安全性检测对用户使用规则造成的影响,提升了用户体验。当提取出的权限包含敏感资源时,检测第三方规则来源和规则代码的安全性,在满足用户使用第三方规则需求的同时,保证运行在用户系统的第三方规则是安全的,避免用户系统敏感资源的泄露。
附图说明
40.图1是本发明一种物联网第三方规则安全性的检测方法的流程示意图;
41.图2是本发明一种物联网第三方规则安全性的检测装置的第一结构示意图;
42.图3是本发明一种物联网第三方规则安全性的检测装置的第二结构示意图。
具体实施方式
43.下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
44.实施例1:
45.本发明公开了一种物联网第三方规则安全性的检测方法,应用于第三方规则的检测过程,主要包括如下步骤包括:
46.步骤s1,获取第三方规则的规则代码。
47.步骤s2,将所述第三方规则和云端数据库中的验证记录进行比对,若已验证为安全,则允许运行,若已验证为危险,则不允许运行。
48.步骤s3,若所述第三方规则不存在相应的验证记录,则对所述第三方规则中的规
则代码进行权限提取并判断提取出的权限中是否包含敏感资源,若不包含敏感资源则将提取出的权限发送给用户并请求用户授权。
49.步骤s4,若包含敏感资源,则对所述第三方规则进行url检测和恶意代码检测,并将检测结果上传至所述云端数据库,以更新所述验证记录。
50.在步骤s1中,结合背景技术对第三方规则的介绍,本领域技术人员可以采取多种方式获取第三方规则的规则代码,可行的获取方式包括但不限于以下几种。通过用户主动粘贴到识别框或访问用户剪贴板的方式获得第三方规则的规则代码(正文)、摘要等信息,用于接下来的检测。
51.在步骤s2中,在本发明的实施例中,建立并维护一个已检测的未知来源的规则的云端数据库。该数据库包含已通过检测的安全规则和未通过检测的危险规则,以及用户的使用评价。该数据库可按第三方规则提供的功能进行分组,当输入新的未知来源的第三方规则时,先根据功能找到该规则对应的组,再寻找是否有完全相同的第三方规则已存在。若已存在且已被验证为安全,则允许运行;若已存在且已被验证为危险,则不允许运行;若不存在于云端数据库中,则按流程进行安全检测,并在检测后按照该第三方规则提供的功能和检测结果将其加入云端数据库的相应组内。
52.在步骤s3中,通过对第三方规则的规则代码进行分析,提取出其需要的权限,并根据要访问资源的私密性为规则危险度分级。根据其危险度的高低选择是否跳过部分安全检测流程。根据第三方规则要求的权限,向用户请求权限。
53.在本发明的实施例中,所述检测方法还包括:
54.响应用户反馈的授权信息并分配权限给所述第三方规则,所述授权信息包括对每个提取到的权限的授权状态,所述授权状态包括永久授权、仅此次授权和拒绝授权。
55.根据敏感资源私密性的不同为用户提供多种授权方式,如不再询问(即永久授权)、仅此次授权和拒绝授权等。并按照用户选择的权限分配方式为第三方规则分配其所需权限。
56.在本发明的实施例中,所述检测方法还包括:
57.当检测到所述第三方规则运行完毕后,撤销所述第三方规则的所有权限并记录第三方规则运行时的权限的授权状态,当再次运行所述第三方规则时,根据记录的权限的授权状态重新对所述第三方规则进行赋权。
58.在第三方规则运行完毕后确认是否进行了相应的撤权操作。若没撤权则撤权,保证在第三方规则不运行时不具有任何权限;若已撤权则保存运行时的权限状态,对于用户已允许永久授权的权限,在第三方规则下次运行时直接赋予。
59.在本发明中,通过权限提取、权限分配、权限撤销,做到权限的分级和权限的精准分配,防止权限被滥用。
60.在步骤s4中,所述对所述第三方规则进行url检测和恶意代码检测,具体为:
61.若所述第三方规则同时通过url检测和恶意代码检测,则标记所述第三方规则为安全并上传到云端数据库的验证记录中,将提取出的权限发送给用户并请求用户授权。
62.若所述第三方规则未同时通过url检测和恶意代码检测,则标记所述第三方规则为危险并上传到云端数据库的验证记录中,同时禁止所述第三方规则运行。
63.在本发明中,第三方规则在用户的系统中运行之前,对其进行恶意url和恶意代码
的检测,这将避免包含恶意代码的规则运行于系统,造成用户系统死循环、个人信息泄露等问题。
64.在本发明的实施例中,所述url检测的检测方法包括:
65.提取所述第三方规则需要访问的第一url;使用预先定义的恶意网址库对所述第三方规则需要访问的第一url进行恶意网址过滤;若所述第一url存在于恶意网址库中,则确定所述第三方规则未通过url检测;若所述第一url不存在于恶意网址库中,则确定所述第三方规则通过url检测。
66.在本发明的实施例中,所述恶意代码检测的检测方法包括:
67.提取所述规则代码的特征值,并判断所述特征值是否包含于代码特征库中。若包含,则确定所述第三方规则包含恶意代码,未通过恶意代码检测。若不包含,则将提取到的特征值和良性代码的特征值进行比较,若所述特征值大于良性代码的特征值,则所述第三方规则包含恶意代码,未通过恶意代码检测。
68.在本发明的实施例中,所述恶意代码检测的检测方法还包括:
69.当检测到提取到的特征值大于良性代码的特征值时,则将所述特征值更新到代码特征库中。
70.在本发明的实施例中,在将所述第三方规则和云端数据库中的验证记录进行比对前,所述检测方法还包括:获取所述第三方规则的规则来源,检测规则来源是否存储于可信列表,若规则来源存储于可信列表,则允许所述第三方规则运行;若规则来源未存储于可信列表,则将所述第三方规则和云端数据库中的验证记录进行比对。
71.在本发明的实施例中,对第三方规则的来源进行检测,并与来源检测模块维护的可信列表比对。若来源已存在于可信列表中,则进行权限分配后就允许规则运行,不再执行url检测和恶意代码检测;若第三方规则的来源未知,则继续按流程进行安全检测。
72.在本发明的实施例中,建立并维护一个可信(来源)列表并保存其公钥,进入该列表的可信来源应具有一定的规则审核能力并与本系统达成可信约定;当检测到所述第三方规则的规则来源存储于可信列表时,基于数字签名技术或其他身份认证方式,使用可信来源的公钥对认证消息进行验证;也可通过数字证书的方式确认第三方规则的可信性。
73.在本实施例中,通过对第三方规则的规则来源进行检测,并维护可信列表,当第三方规则来源可信时直接允许其运行于系统,大大提高了安全性检测的速度。
74.实施例2:
75.在实施例1的基础上,在应用场景“用户打开手机nfc功能,将手机靠近电视遥控器上的nfc时,自动打开某视频软件,手机的某视频软件就能投映到智能电视机上”中,用户需要下载相应的第三方规则来实现这一功能,再用户安装此第三方规则时,本发明的技术方案在此场景的具体应用为;
76.1)用户预先从获取所述第三方规则。
77.2)系统将第三方规则中包含的来源信息与来源检测模块维护的可信列表比对,检测出该第三方规则的来源不存在于可信列表中,即认定第三方规则来源未知,继续执行规则安全性检测。
78.3)将该第三方规则与云端数据库已保存的数据记录进行比对,发现云端数据库中不存在该规则,继续进行安全性检测。
79.4)系统提取第三方规则的权限,发现该指令涉及访问某聊天软件的权限,由于聊天软件涉及支付功能,该第三方规则被认定为危险,对危险的规则实施恶意url检测和恶意代码检测。
80.5)将第三方规则需要访问的url传递给恶意网址库,对其进行安全性检测,并将安全性信息反馈给用户。
81.6)实施恶意代码检测流程:将该第三方规则的规则代码进行恶意代码检测,判断结果为该第三方规则的代码不是恶意代码。在云端数据库中上传该第三方规则的代码并标记为安全。
82.7)对于该第三方规则请求的敏感资源,向用户提供以下三种授权方式:不再询问(即永久授权)、仅此次授权和拒绝授权。用户选择了永久授权。按照用户选择的权限分配方式为该第三方规则分配所需权限。
83.8)第三方规则得到所需权限后,开始运行,提供相应的功能,使用授予的权限。
84.9)第三方规则运行完毕,检查第三方规则拥有的权限是否被回收,并将用户授予的永久权限存档,以便下次使用第三方规则时直接加载。
85.10)用户再次使用该第三方第三方规则时,不再向用户询问是否授权,直接加载上次运行后保存的永久权限存档,授予相应的权限。
86.实施例3:
87.本发明公开了一种物联网第三方规则安全性的检测装置,应用于第三方规则的检测中且应用实施例1的检测方法与实施例1具有相同的特定技术特征,包括:第一获取模块101、第一检测模块102、第二检测模块103和第三检测模块104。
88.所述第一获取模块100,用于获取第三方规则的规则代码。
89.所述第一检测模块102,将所述第三方规则和云端数据库中的验证记录进行比对,若已验证为安全,则允许运行,若已验证为危险,则不允许运行。
90.所述第二检测模块103,若所述第三方规则不存在相应的验证记录,则对所述第三方规则中的规则代码进行权限提取并判断提取出的权限中是否包含敏感资源,若不包含敏感资源则将提取出的权限发送给用户并请求用户授权。
91.所述第三检测模块104,若包含敏感资源,则对所述第三方规则进行url检测和恶意代码检测,并将检测结果上传至所述云端数据库,以更新所述验证记录。
92.本发明的实施例3为在实施例1的基础上撰写的检测装置,包含实施例1的全部技术特征,为了避免重复一些技术特征不在赘述。
93.在本发明的实施例中,检测装置还包括第一响应模块105和撤权赋权模块106。
94.所述第一响应模块105,用于响应用户反馈的授权信息并分配权限给所述第三方规则,所述授权信息包括对每个提取到的权限的授权状态,所述授权状态包括永久授权、仅此次授权和拒绝授权。
95.所述撤权赋权模块106,用于当检测到所述第三方规则运行完毕后,撤销所述第三方规则的所有权限并记录第三方规则运行时的权限的授权状态,当再次运行所述第三方规则时,根据记录的权限的授权状态重新对所述第三方规则进行赋权。
96.综上,本发明实施例提供一种物联网第三方规则安全性的检测方法和装置,有益效果为:
97.1、现有技术中,当用户想使用第三方规则时,必须打开“允许不受信任的规则”选项,才能自由的安装来自外部分享的规则。但来自第三方的规则可能会对用户系统的安全性造成威胁。通过本发明的检测方法和装置,可以检测第三方规则来源和指令代码的安全性,在满足用户使用第三方规则需求的同时,保证运行在用户系统的第三方规则是安全的,避免用户系统敏感资源的泄露。
98.2、将所述第三方规则和云端数据库中的验证记录进行比对,可以节约检测时间提高检测效率;当第三方规则不存在相应的验证记录,检测提取出的权限是否包含敏感资源,在不涉及敏感资源时,直接询问用户权限分配后即可运行,以此减少安全性检测所花费的时间,尽量减少安全性检测对用户使用规则造成的影响,提升了用户体验。当提取出的权限包含敏感资源时,检测第三方规则来源和规则代码的安全性,在满足用户使用第三方规则需求的同时,保证运行在用户系统的第三方规则是安全的,避免用户系统敏感资源的泄露。
99.3.现有技术中,第三方规则询问用户收否授权的过程,并没有给予用户多种可选择的授权方式。本发明为用户提供了更细粒度的权限分级选项,用户可以按自己的需求向规则授权,在增强用户使用体验的同时,更细粒度的权限分级也更有利于对授予规则的权限进行细粒度的控制。
100.4、在第三方规则运行完毕后确认是否进行了相应的撤权操作。若没撤权则撤权,保证在第三方规则不运行时不具有任何权限;若已撤权则保存运行时的权限状态,对于用户已允许永久授权的权限,在第三方规则下次运行时直接赋予。通过权限提取、权限分配、权限撤销,做到权限的分级和权限的精准分配,防止权限被滥用。
101.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1