Api监控方法和装置的制作方法

文档序号:6375158阅读:299来源:国知局
专利名称:Api监控方法和装置的制作方法
技术领域
本发明涉及終端安全技术领域,特别是涉及ー种API监控方法和装置。
背景技术
随着手机等智能移动终端的发展,智能移动终端上的应用程序层出不穷,而智能移动终端的操作系统通常会提供各种各样的API。所谓API (Application ProgrammingInterface,应用程序编程接ロ)是ー些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问ー组例程的能力,而又无需访问源码 或理解内部工作机制的细节。智能移动终端上的应用程序可通过调用API来实现ー些特定的功能,例如,读取通讯录、读取地理位置信息、读写短信、访问网络、修改系统文件等等。然而,一些非法或恶意的应用程序会滥用API做ー些不法的事情,例如私自调用联系人信息并上传、读取用户的地理位置信息、监听用户的通话或静默卸载用户程序等,从而造成了智能移动终端的安全性问题。传统的API监控方法,通常在安装某个应用程序吋,会罗列该应用程序所使用的权限和技术语言。然而,这些罗列的权限和技术语言难以被普通用户所理解,且常常被用户所忽略掉,从而使得一些非法或恶意的应用程序运行在智能移动终端中,给智能移动终端带来安全隐患。

发明内容
基于此,有必要针对传统技术中的安全性问题,提供一种能提高安全性的API监控方法。ー种API监控方法,包括以下步骤检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中;当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。此外,还有必要提供一种能提高安全性的API监控装置。ー种API监控装置,包括检测模块,用于检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中;控制执行模块,用于当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。相对于现有技术,上述API监控方法和装置通过检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中,如果存在敏感API权限列表中,则根据与敏感API权限对应的预设处理方式对API权限的调用进行相应处理。通过对敏感的API权限的调用进行控制,在应用程序的运行过程中能有效控制权限的调用,因此能够有效提高计算机或其他智能終端设备的使用安全性。


图I为ー个实施例中的API监控方法的流程示意图;图2为ー个实施例中进行敏感权限设置的方法流程图;图3为展示敏感API权限列表中的API权限类型的界面示意图;图4为第一权限展示界面的示意图;图5为展示询问界面的界面示意图;图6为第二权限展示界面的示意图;图7为ー个实施例中API监控装置的结构示意图;图8为另ー个实施例中API监控装置的结构示意图;图9为又ー个实施例中API监控装置的结构示意图。
具体实施例方式如图I所示,在一个实施例中,ー种API监控方法,包括以下步骤步骤S102,检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中。敏感API权限是指应用程序安装或运行时调用的API实现ー些会涉及到隐私信息的功能,例如,读取通话记录、读取地理位置信息、监听用户通话、修改系统文件等。若应用程序调用敏感API实现这些功能,会给智能移动终端带来很大的安全隐患。具体的,敏感API权限列表中记录了用来实现这些隐私功能的API。步骤S104,当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。应用程序在运行时,会调用各种API实现对应的功能,若调用的API存在预设的敏感API权限列表中,则获取与调用的API权限对应的预设处理方式。在一个实施例中,可按照API对应的功能类型对敏感API权限列表中的API权限进行分类,例如,读取通话记录的API和读取联系人信息的API可归为ー类,读取移动终端识别码的API和读取移动终端型号的API可归为ー类等。具体的,敏感API权限列表中可记录API权限类型与对应类型中的API权限。进ー步的,可定义预设的敏感API权限列表中的API权限类型,将使用该API权限类型中的API权限的应用程序与其API权限类型的对应关系进行存储。具体的,API权限类型可包含通话隐私权限、录音权限、短信隐私权限、联网权限、位置隐私权限和系统信息权限中的至少ー种。在一个实施例中,可展示敏感API权限列表中的API权限以及使用这些API权限的应用程序,并可对这些应用程序调用的敏感API权限进行设置。具体的,如图2所示,进行敏感权限设置的方法流程如下步骤S202,通过隐私监控界面展示敏感API权限列表中的API权限类型。敏感API权限列表中的API权限类型可包含通话隐私权限、录音权限、短信隐私权限、联网权限、位置隐私权限和系统信息权限中的至少ー种。如图3所示,可通过隐私监控界面展示这些API权限类型和对应的软件信息。
步骤S204,获取输入的对API权限类型的权限查看指令,根据应用程序与其API权限类型的对应关系,查找并展示与权限查看指令请求的API权限类型对应的应用程序。应用程序在安装时,可获取其所使用的所有API权限(即应用程序在运行时调用的所有API),因此可预先存储应用程序与其所使用的API权限的对应关系。如图3所示,可通过隐私监控界面获取输入的API权限类型的权限查看指令,该权限查看指令可为API权限类型的点击指令。由于预先存储了应用程序与其API权限类型的对应关系,可根据该对应关系查找与请求的API权限类型对应的应用程序。进ー步的,如图4所示,进入到第一权限展示界面,通过第一权限展示界面展示查找到的应用程序和该应用程序所使用的在敏感API列表中的API权限。具体的,可通过列表形式展示查找到的所有应用程序名称,并对应展示应用程序所使用的敏感API权限列表中的API权限(即敏感API权限)。通过第一权限展示界面将应用程序所使用的敏感API权限进行展示,可便于对应 用程序在运行中会调用到的敏感API权限进行查看,方便知晓应用程序的运行是否会给终端带来安全隐患,从而能够对应用程序的权限进行有效管理。步骤S206,获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。如图4所示,可通过第一权限展示界面展示应用程序所使用的敏感API权限的设置(即预先设置的对该敏感API权限的处理方式),该设置标明了应用程序在运行时对其所调用的API权限的处理方式(例如,对应用程序I调用的API权限的处理方式为允许,则可以闻売文字的形式显不允许)。具体的,所述的处理方式,包括以下方式的至少ー种每次调用都允许使用、毎次调用都禁止使用和每次调用都询问。第一权限展示界面可通过多个处理方式的选项供选择,例如允许、禁止和每次调用都询问的多个选项,用户可选择对应的选项进行处理方式的输入,则存储应用程序所使用的API权限的处理方式。进ー步的,若获取输入的处理方式为每次调用都允许,则当检测到应用程序运行时调用的API权限存在敏感API权限列表中时,直接允许调用。若获取输入的处理方式为每次调用都禁止,则当检测到应用程序运行时调用的API权限存在敏感API权限列表中吋,直接禁止调用,即转为空操作。在一个实施例中,当检测到应用程序运行调用的API权限存在敏感API权限列表中吋,获取调用的API权限的处理方式,若处理方式为每次调用都询问,则展示调用的API权限的询问界面。进ー步的,通过该询问界面获取API权限的允许或禁止指令,根据允许或禁止指令对API权限进行放行或拦截。具体的,在询问界面中包含用于接收允许或禁止指令的控件,通过该控件获取用户输入的允许或禁止指令。若获取到API权限的允许指令,则对该API权限的调用进行放行,即将API权限的调用中转到系统权限,实现API权限对应的功能;若获取到API权限的禁止指令,则对该API权限的调用进行拦截,即将API权限的调用中转到空操作,不执行任何操作。如图5所示,当调用的敏感API权限的权限设置标记为每次调用都询问,则展示询问界面(如图5所示中的弹出窗ロ),并在询问界面上展示对应该敏感API权限的权限信息。例如,展示“通讯录正在访问,读取信息”的权限信息。在询问界面上提供设置允许和拒绝两个选项,当获取到该API权限的允许指令,则对该API权限进行放行,当获取到该API权限的禁止指令,则对该API权限进行拦截。通过对应用程序在运行时调用的敏感API权限进行设置,在应用程序运行时可按照对应的处理方式进行允许或禁止或每次调用都询问的权限控制。当用户未进行处理方式的设置时,优选可默认设置敏感API权限的权限设置为每次调用都询问,使得应用程序在运行时调用的API若涉及隐私信息吋,能够主动询问用户是否允许或禁止调用,因此能够有效控制应用程序的权限调用,从而提高了安全性。在另ー个实施例中,上述方法还可包括获取应用程序的权限展示指令,根据预设的应用程序与其所使用的API权限之间的对应关系查找并展示与权限展示指令请求的应用程序对应的API权限。对于应用程序所使用到的所有API,可预先存储应用程序与这些API的对应关系。进ー步的,可通过应用程序管理界面展示应用程序列表,并通过应用程序管理界面获取应用程序的权限展示指令,从而通过第二权限展示界面展示该应用程序对应的API权限。·例如,可在应用程序管理界面展示应用程序名称。如图6所示,获取对应用程序名称的点击操作,弹出第二权限展示界面,展示该应用程序对应的API权限。进ー步的,在一个实施例中,可通过第二权限展示界面获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。本实施例中,当应用程序运行时获取应用程序所使用的API权限的处理方式,根据获取到的处理方式对API权限的调用进行相应处理。本实施例中,对于应用程序所使用的所有API权限,都可通过第二权限展示展示界面对API权限的处理方式进行设置,从而能够对应用程序运行时所调用的所有API权限进行监控,进一步提闻了安全性。如图7所示,在一个实施例中,ー种API监控装置,包括检测模块10和控制执行模块20,其中检测模块10用于检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中。敏感API权限是指应用程序安装或运行时调用的API实现ー些会涉及到隐私信息的功能,例如,读取通话记录、读取地理位置信息、监听用户通话、修改系统文件等。若应用程序调用敏感API实现这些功能,会给智能移动终端带来很大的安全隐患。具体的,敏感API权限列表中记录了用来实现这些隐私功能的API。控制执行模块20用于当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。应用程序在运行时,会调用各种API实现对应的功能,若调用的API存在预设的敏感API权限列表中,则控制执行模块20获取与调用的API权限对应的预设处理方式。在一个实施例中,可按照API对应的功能类型对敏感API权限列表中的API权限进行分类。进ー步的,如图8所示,上述系统还可包括敏感API定义模块30、敏感权限展示模块40和敏感权限设置模块50,其中敏感API定义模块30用于定义预设的敏感API权限列表中的API权限类型,将使用该API权限类型中的API权限的应用程序名称与其API权限类型的对应关系进行存储。
敏感权限展示模块40用于通过隐私监控界面展示敏感API权限列表中的API权限类型;获取输入的对API权限类型的权限查看指令,根据应用程序与其API权限类型的对应关系,查找并展示与权限查看指令请求的API权限类型对应的应用程序。具体的,API权限类型可包含通话隐私权限、录音权限、短信隐私权限、联网权限、位置隐私权限和系统信息权限中的至少ー种。如图3所示,可通过隐私监控界面展示这些API权限类型和对应的软件信息。进ー步的,敏感权限展示模块40可用于通过隐私监控界面获取输入的API权限类型的权限查看指令,该权限查看指令可为API权限类型的点击指令。由于预先存储了应用程序与其API权限类型的对应关系,敏感权限展示模块40可根据该对应关系查找与请求的API权限类型的应用程序,并通过第一权限展示界面展示查找到的应用程序和该应用程序所使用的在敏感API列表中的API权限。具体的,敏感权限展示模块40可通过列表形式展示查找到的所有应用程序名称,并对应展示应用程序所使用的敏感API权限列表中的API权限(即敏感API权限)。
敏感权限设置模块50用于获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。进ー步的,敏感权限展示模块40还可用于通过第一权限展示界面展示应用程序所使用的敏感API权限的设置,该设置标明了应用程序在运行时对其所调用的API权限的处理方式。具体的,所述的处理方式,包括以下方式的至少ー种每次调用都允许使用、毎次调用都禁止使用和每次调用都询问。第一权限展示界面可通过多个权限设置的选项供选择,例如允许、禁止和每次调用都询问的多个选项,用户可选择对应的选项进行处理方式的输入,则敏感权限设置模块50存储应用程序所使用的API权限的处理方式。进ー步的,控制执行模块20还用于若获取输入的处理方式为每次调用都允许,则当检测到应用程序运行时调用的API权限存在敏感API权限列表中时,直接允许调用。若获取输入的处理方式为每次调用都禁止,则当检测到应用程序运行时调用的API权限存在敏感API权限列表中时,直接禁止调用,即转为空操作。在一个实施例中,控制执行模块20还用于当检测到应用程序运行调用的API权限存在敏感API权限列表中吋,获取调用的API权限的处理方式,若处理方式为每次调用都询问,则展示调用的API权限的询问界面。本实施例中,控制执行模块20还用于通过该询问界面获取API权限的允许或禁止指令,根据允许或禁止指令对API权限进行放行或拦截。具体的,在询问界面中包含用于接收允许或禁止指令的控件,通过该控件获取用户输入的允许或禁止指令。控制执行模块20若获取到API权限的允许指令,则对该API权限的调用进行放行,即将API权限的调用中转到系统权限,实现API权限对应的功能;若获取到API权限的禁止指令,则对该API权限的调用进行拦截,即将API权限的调用中转到空操作,不执行任何操作。在另ー个实施例中,如图7所示,上述装置还可包括第二存储模块60、应用程序权限展示模块70和应用程序权限设置模块80,其中第二存储模块60用于存储应用程序与应用程序所使用的API权限之间的对应关系O
应用程序权限展示模块70用于获取应用程序的权限展示指令,根据该对应关系查找并展示与权限展示指令请求的应用程序对应的API权限。对于应用程序所使用到的所有API,第二存储模块60可存储应用程序与这些API的对应关系。进ー步的,应用程序权限展示模块70可通过应用程序管理界面展示应用程序列表,并通过应用程序管理界面获取应用程序的权限展示指令,从而通过第二权限展示界面展示该应用程序对应的API权限。应用程序权限设置模块80用于通过第二权限展示界面获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。本实施例中,控制执行模块20还用于当应用程序运行时获取应用程序所使用的API权限的处理方式,根据获取到的处理方式对API权限的调用进行相应处理。本实施例中,对于应用程序所使用的所有API权限,都可通过第ニ权限展示展示界面对API权限的处理方式进行设置,从而能够对应 用程序运行时所调用的所有API权限进行监控,进ー步提高了安全性。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种API监控方法,包括以下步骤 检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中; 当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。
2.根据权利要求I所述的方法,其特征在于,所述方法还包括 定义所述预设的敏感API权限列表中的API权限类型; 将使用所述API权限的应用程序与其API权限类型的对应关系进行存储。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括 通过隐私监控界面展示所述API权限类型; 获取对API权限类型的权限查看指令; 根据所述对应关系查找并展示与所述权限查看指令请求的API权限类型对应的应用程序。
4.根据权利要求3所述的方法,其特征在于,在展示与所述权限查看指令请求的API权限类型对应的应用程序的步骤之后,进一步包括 获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。
5.根据权利要求4所述的方法,其特征在于,所述处理方式包含以下方式的至少一种每次调用都允许使用、每次调用都禁止使用和每次调用都询问。
6.根据权利要求2至5中任一项所述的方法,其特征在于,所述API权限类型包含通话隐私权限、录音权限、短信隐私权限、联网权限、位置隐私权限和系统信息权限中的至少一种。
7.根据权利要求I所述的方法,其特征在于,所述方法还包括 获取应用程序的权限展示指令,根据预设的应用程序与其所使用的API权限之间的对应关系查找并展示与所述权限展示指令请求的应用程序对应的API权限。
8.根据权利要求7所述的方法,其特征在于,在展示与权限展示指令请求的应用程序对应的API权限的步骤之后,进一步包括 获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式; 所述方法还包括当应用程序运行时获取应用程序所使用的API权限的所述处理方式,根据获取到的处理方式对API权限的调用进行相应处理。
9.一种API监控装置,其特征在于,包括 检测模块,用于检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中; 控制执行模块,用于当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行放相应处理。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括 敏感API定义模块,用于定义所述预设的敏感API列表中的API权限类型;将使用所述API权限的应用程序与其API权限类型的对应关系进行存储。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括 敏感权限展示模块,用于通过隐私监控界面展示所述API权限类型;获取输入的API权限类型的权限查看指令,根据所述对应关系查找并展示与所述权限查看指令请求的API权限类型对应的应用程序。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括 敏感权限设置模块,用于获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式。
13.根据权利要求12所述的装置,其特征在于,所述处理方式包含以下方式的至少一种每次调用都允许使用、每次调用都禁止使用和每次调用都询问。
14.根据权利要求10至13任一项所述的装置,其特征在于,所述API权限类型包含通话隐私权限、录音权限、短信隐私权限、联网权限、位置隐私权限和系统信息权限中的至少一种。
15.根据权利要求9所述的装置,其特征在于,所述装置还包括 应用程序权限展示模块,用于获取应用程序的权限展示指令,根据预设的应用程序与其所使用的API权限之间的对应关系查找并展示与所述权限展示指令请求的应用程序对应的API权限。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括 应用程序权限设置模块,用于获取输入的处理方式,存储应用程序所使用的API权限的所述处理方式; 所述控制执行模块还用于当应用程序运行时获取应用程序所使用的API权限的所述处理方式,根据获取到的处理方式对API权限的调用进行相应处理。
全文摘要
本发明涉及一种API监控方法,包括以下步骤检测应用程序运行时调用的API权限是否存在预设的敏感API权限列表中;当应用程序调用的API权限存在预设的敏感API权限列表中时,根据与所述调用的API权限对应的预设处理方式对API权限的调用进行相应处理。上述API监控方法,能够有效控制涉及隐私信息的敏感权限的调用,因此能够提高安全性。此外,本发明还提供了一种API监控装置。
文档编号G06F21/22GK102819715SQ201210290349
公开日2012年12月12日 申请日期2012年8月15日 优先权日2012年8月15日
发明者曾星, 梁家辉, 汤文亮, 李丹华 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1