检测计算装置上的安全性弱点的制作方法

文档序号:6521437阅读:166来源:国知局
检测计算装置上的安全性弱点的制作方法
【专利摘要】通过下面的步骤识别计算装置上的安全性弱点:检测计算装置上的进程间通信;确定进程间通信是否与安全性弱点的预定义规范一致;以及响应于确定进程间通信与安全性弱点的预定义规范一致,使得在计算装置上执行预定义动作。
【专利说明】检测计算装置上的安全性弱点
【技术领域】
[0001]本发明一般地涉及用于检测安全性弱点的基于计算机的工具。
【背景技术】
[0002]由计算机操作系统(诸如,iOS?和Android?)提供的进程间通信信道已显示出使计算机用户暴露于安全性风险(诸如,广播窃取、活动劫持、服务劫持、广播注入以及活动和服务的未授权启动)。例如,用于在进程(包括应用或应用内的组件)之间移动数据的Android?的基于Intent的机制已显示出由于发送敏感信息的输入的Intent或不安全的Intent的不合适的验证而使用户暴露于风险。

【发明内容】

[0003]在本发明的一个方面,提供一种用于识别计算装置上的安全性弱点的方法,所述方法包括:检测计算装置上的进程间通信;确定进程间通信是否与安全性弱点的预定义规范一致;以及响应于确定进程间通信与安全性弱点的预定义规范一致,使得在计算装置上执行预定义动作。
[0004]在本发明的其它方面,提供实现本发明的系统和计算机程序产品。
【专利附图】

【附图说明】
[0005]通过下面结合附图进行的详细描述,将会更充分地理解和领会本发明,其中:
[0006]图1是根据本发明的实施例构造并且操作的用于检测计算装置上的安全性弱点的系统的简化概念性说明;
[0007]图2是根据本发明的实施例操作的图1的系统的操作的示例性方法的简化流程图说明;和
[0008]图3是根据本发明的实施例构造并且操作的计算系统的示例性硬件实现方式的简化方框图说明。
【具体实施方式】
[0009]现在在一个或多个实施例的上下文下描述本发明,但该描述旨在在整体上说明本发明,而不应该被解释为使本发明局限于示出的实施例。应该理解,本领域技术人员可进行各种修改,尽管未在这里具体示出,但所述各种修改落在本发明的真实精神和范围内。
[0010]所属【技术领域】的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。[0011]可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于一电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0012]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0013]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0014]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言一诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0015]下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
[0016]也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品。
[0017]计算机程序指令也可被加载到计算机、其它可编程数据处理装置或其它装置上以使得在计算机、其它可编程数据处理装置或其它装置上执行一系列操作步骤以便产生计算机实现的过程,从而在计算机或其它可编程设备上执行的指令提供用于实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
[0018]现在参照图1,图1是根据本发明的实施例构造并且操作的用于检测计算装置上的安全性弱点的系统的简化概念性说明。在图1的系统中,示出计算装置100,计算装置100可以是移动电话、个人数字助手或能够架设支持进程之间的通信的操作系统(诸如,可从California 州的 Mountain View 城的 Google Corporation 商购获得的 Android 操作系统或可从California州的Cupertino城的Apple Incorporated商购获得的iOS操作系统)的任何其它类型的计算装置。这里所使用的术语“进程”可表示在计算装置100上运行的软件应用、这种软件应用内的组件和操作系统自身的组件中的任何一种。示出在计算装置100上运行的两个这种进程102和104。
[0019]还示出在计算装置100上运行的看门狗应用106,其中看门狗应用106优选地包括通信检测器108和安全性分析器110。通信检测器108被构造为检测计算装置100上的进程间通信,诸如进程102和104之间的通信。例如,当计算装置100架设Android?操作系统时,通信检测器108可访问与安装在计算装置100上的软件应用关联的“manifest”数据以识别软件应用能够接受的称为“隐式intent”的进程间通信的类型,因此,通信检测器108修改看门狗应用106的manifest数据以指示它也能够接受相同类型的进程间通信。通信检测器108可另外或替代地被构造为能够使看门狗应用106接收来自在计算装置100上运行的任何进程的广播通信。
[0020]安全性分析器110被构造为对于由通信检测器108在计算装置100上检测到的任何进程间通信确定进程间通信是否与安全性弱点的预定义规范一致,优选地,这种预定义规范被存储在通信检测器108可访问的一组规范112中。安全性弱点可例如是易遭受完整性攻击或易遭受机密性破坏。如果进程间通信被确定为与安全性弱点的预定义规范一致,则安全性分析器110优选地使得在计算装置100上执行与安全性弱点的发现相关的预定义动作,优选地,这种预定义动作被存储在通信检测器108可访问的一组规范114中。这种动作可包括:诸如经计算装置100的扬声器或显示器向计算装置100的用户提供描述安全性弱点的通知和/或结束或另外隔离发出进程间通信的应用或组件。
[0021]诸如通过在计算机硬件中和/或在根据传统技术的非暂态计算机可读介质中所包含的计算机软件中实现图1中示出的任何元件,优选地由计算装置100实现任何元件,在计算装置100内实现任何元件或者另外计算装置100可访问任何元件。
[0022]现在参照图2,图2是根据本发明的实施例操作的图1的系统的操作的示例性方法的简化流程图说明。在图2的方法中,检测计算装置上的进程间通信(步骤200)。如果进程间通信与安全性弱点的预定义规范一致(步骤202),则使得在计算装置上执行与安全性弱点的发现相关的预定义动作(步骤204),诸如向计算装置100的用户提供描述安全性弱点的通知和/或结束或另外隔离发出进程间通信的应用或组件。
[0023]可在下面的例子的情况下示出图1的系统和图2的方法:
[0024]-进程102是银行业务应用。进程104广播由进程102和看门狗应用106接收的消息。进程102通过广播看门狗应用106确定为与银行账户信息一致的数据而对该消息做出响应。看门狗应用106响应于进程102从进程104接收的消息在计算装置100上显示指示进程102暴露敏感银行业务数据的通知。
[0025]-进程102是商业组织的电子邮件和日历客户机程序。进程104广播对与给定日期关联的消息和会议的请求。进程102通过广播看门狗应用106确定为由该组织拥有的敏感信息的各数据而对该消息做出响应。看门狗应用106响应于进程102从进程104接收的消息在计算装置100上显示指示进程102暴露敏感银行业务数据的通知。[0026]现在参照图3,图3表示根据本发明的实施例的计算系统的示例性硬件实现方式,根据该示例性硬件实现方式,可实现本发明的一个或多个组件/方法(例如,在图1-2的上下文下描述的组件/方法)。
[0027]如图中所示,可根据经计算机总线318或替代连接设备耦合的处理器310、存储器312、I/O装置314和网络接口 316实现用于控制对至少一个资源的访问的技术。
[0028]应该理解,这里所使用的术语“处理器”旨在包括任何处理装置,诸如例如包括CPU(中央处理单元)和/或其它处理电路的处理装置。还应该理解,术语“处理器”可表示超过一个处理装置,并且与处理装置关联的各种元件可由其它处理装置共享。
[0029]这里所使用的术语“存储器”旨在包括与处理器或CPU关联的存储器,诸如例如RAM、ROM、固定存储器装置(例如,硬盘驱动器)、可移动存储器装置(例如,盘)、闪存等。这种存储器可被视为计算机可读存储介质。
[0030]另外,这里所使用的短语“输入/输出装置”或“I/O装置”旨在包括例如用于把数据输入到处理单元的一个或多个输入装置(例如,键盘、鼠标、扫描仪等)和/或用于提供与处理单元关联的结果的一个或多个输出装置(例如,扬声器、显示器、打印机等)。
[0031]附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0032]将会理解,上述任何元件可被实现为计算机可读介质中所包含的计算机程序产品(诸如,实现为存储在磁或光学存储介质中或嵌入在计算机硬件内的计算机程序指令的形式),并且可由计算机执行或者由计算机以其它方式访问。
[0033]尽管可参照特定计算机硬件或软件描述这里的方法和设备或者可不参照特定计算机硬件或软件描述这里的方法和设备,但应该理解,这里描述的方法和设备可使用传统技术而被容易地实现于计算机硬件或软件。
[0034]尽管已参照一个或多个特定实施例描述本发明,但该描述旨在在整体上说明本发明,而不应该被解释为使本发明局限于示出的实施例。应该理解,本领域技术人员可进行各种修改,尽管未在这里具体示出,但所述各种修改落在本发明的真实精神和范围内。
【权利要求】
1.一种用于识别计算装置上的安全性弱点的方法,所述方法包括: 检测计算装置上的进程间通信; 确定进程间通信是否与安全性弱点的预定义规范一致;以及 响应于确定进程间通信与安全性弱点的预定义规范一致,使得在计算装置上执行预定义动作。
2.如权利要求1所述的方法,其中所述检测包括:接收广播类型进程间通信。
3.如权利要求1所述的方法,其中所述检测包括:指示接收预定义类型的进程间通信的能力。
4.如权利要求1所述的方法,其中所述确定包括:确定安全性弱点是易遭受完整性攻击。
5.如权利要求1所述的方法,其中所述确定包括:确定安全性弱点是易遭受机密性破坏。
6.如权利要求1所述的方法,其中所述使得在计算装置上执行预定义动作的步骤包括:使得向计算装置的用户提供描述安全性弱点的通知。
7.如权利要求1所述的方法,其中所述使得在计算装置上执行预定义动作的步骤包括:使得结束或隔离进程间通信的发出者。
8.如权利要求1所述·的方法,其中所述检测、通信和使得在计算装置上执行预定义动作的步骤被体现于下面的任何一项以及由下面的任何一项实现: a)计算机硬件,和 b)非暂态计算机可读介质中所包含的计算机软件。
9.一种用于识别计算装置上的安全性弱点的系统,所述系统包括: 处理器,被编程为启动可执行操作,所述可执行操作包括: 检测计算装置上的进程间通信; 确定进程间通信是否与安全性弱点的预定义规范一致;以及 响应于确定进程间通信与安全性弱点的预定义规范一致,使得在计算装置上执行预定义动作。
10.如权利要求9所述的系统,其中所述检测包括:接收广播类型进程间通信。
11.如权利要求9所述的系统,其中所述检测包括:指示接收预定义类型的进程间通信的能力。
12.如权利要求9所述的系统,其中所述确定包括:确定安全性弱点是易遭受完整性攻击。
13.如权利要求9所述的系统,其中所述确定包括:确定安全性弱点是易遭受机密性破坏。
14.如权利要求9所述的系统,其中所述使得在计算装置上执行预定义动作的步骤包括:使得向计算装置的用户提供描述安全性弱点的通知。
15.如权利要求9所述的系统,其中所述使得在计算装置上执行预定义动作的步骤包括:使得结束或隔离进程间通信的发出者。
16.如权利要求9所述的系统,其中所述检测、通信和使得在计算装置上执行预定义动作的步骤被体现于下面的任何一项以及由下面的任何一项实现:a)计算机硬件,和b)非暂态计算机可读介质中·所包含的计算机软件。
【文档编号】G06F21/57GK103853982SQ201310628914
【公开日】2014年6月11日 申请日期:2013年11月29日 优先权日:2012年12月5日
【发明者】R·海, D·卡尔曼, R·绍兹曼, O·特立普 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1