CN107506648B - 查找应用漏洞的方法、装置和*** - Google Patents

查找应用漏洞的方法、装置和*** Download PDF

Info

Publication number
CN107506648B
CN107506648B CN201710666451.2A CN201710666451A CN107506648B CN 107506648 B CN107506648 B CN 107506648B CN 201710666451 A CN201710666451 A CN 201710666451A CN 107506648 B CN107506648 B CN 107506648B
Authority
CN
China
Prior art keywords
attack
attack surface
application
intrusion detection
network intrusion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710666451.2A
Other languages
English (en)
Other versions
CN107506648A (zh
Inventor
王加水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201710666451.2A priority Critical patent/CN107506648B/zh
Publication of CN107506648A publication Critical patent/CN107506648A/zh
Application granted granted Critical
Publication of CN107506648B publication Critical patent/CN107506648B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例公开了一种查找应用漏洞的方法、装置和***,该方法包括:根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;获取该应用在运行时攻击面对应的监控数据;根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。

Description

查找应用漏洞的方法、装置和***
技术领域
本申请涉及计算机软件技术领域,尤其涉及一种查找应用漏洞的方法、装置和***。
背景技术
应用漏洞,是指能够削弱应用安全性的缺陷;应用攻击面,是指应用环境中可以被未授权用户(攻击者)输入或提取数据而受到攻击的点位。
在应用漏洞挖掘过程中,攻击面描述了代码中可能存在着尚待挖掘的安全漏洞的位置。比如在基于浏览器的攻击中,http协议、html页面、加载插件等等都构成了浏览器的攻击面。寻找合适的应用攻击面,在应用漏洞挖掘中起到重要的作用。
目前常用的方式还是通过人工审计来确定攻击面,查找应用漏洞,效率较差。
发明内容
本申请实施例的目的是提供一种查找应用漏洞的方法、装置和***,以实现应用漏洞的快速查找。
为解决上述技术问题,本申请实施例是这样实现的:
第一方面,提出了一种查找应用漏洞的方法,该方法包括:
根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取该应用在运行时攻击面对应的监控数据;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
第二方面,提出了一种应用漏洞查找装置,该装置包括:
确定单元,根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取单元,获取该应用在运行时攻击面对应的监控数据;
该确定单元,还根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
第三方面,提出了一种电子设备,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取该应用在运行时攻击面对应的监控数据;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
第四方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取该应用在运行时攻击面对应的监控数据;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
由以上本申请实施例提供的技术方案可见,本申请实施例方案至少具备如下一种技术效果:
通过应用的攻击面的监控数据和应用的攻击面对应的网络入侵检测规则确定可能存在漏洞的攻击面,从而能够有效辅助提高应用漏洞的挖掘效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一个实施例查找应用漏洞的交互流程图。
图2是本申请的一个实施例查找应用漏洞的方法流程图。
图3是本申请的一个实施例电子设备的结构示意图。
图4是本申请的一个实施例应用漏洞查找装置的结构示意图。
具体实施方式
本申请实施例提供一种查找应用漏洞的方法、装置和***。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为了方便理解本申请实施例,首先在此介绍本申请实施例描述中会引入的几个要素。
攻击面:用来描述应用的代码中攻击者可以执行并而进攻的代码,描述了应用的代码中存在的可能尚未被发现的安全漏洞的位置。攻击面的主要属性可包括攻击向量、获取的权限、内存安全性、复杂性等。攻击面从分类上可分为远程攻击面、客户端攻击面、物理相邻攻击面等。
攻击向量:表示攻击面所需要的用户交互以及认证条件,限制了给定攻击面中发现任意安全漏洞的影响后果。有些攻击面需要进行物理接触才能发动一次完整的攻击,有些攻击面则需要运用社会工程学,诱骗用户对链接进行点击。
获取的权限:表示攻击面所需要的权限。有的攻击面背后的代码可能以极高的权限运行,如内核代码等;有的攻击面背后的代码则可能在沙盒中以受限权限运行。
内存安全性:不同的语言编写的应用具有不同等级的内存安全性,例如,对于以c系语言和非c系语言编写的应用来说,c系语言编写的应用存在更多的安全漏洞。
复杂性:一般来说,越复杂的代码,算法,协议越容易出现漏洞。
图1是本申请的一个实施例攻击面提取预判***的***框图。如图1所示,该攻击面提取预判***可包括:启动器、规则中心、预判器和hook器四个功能模块。
其中,启动器:用于前期应用的静态程序检测及环境检测,一般一个应用运行过程中,可能会存在与进程的交互,或者因为环境配置会有不同功能的体现,而启动器的作用就是尽可能多地搜集应用静态及运行的信息,以便在应用的运行环境发生变化时,使得规则中心一些特定的网络入侵检测规则生效。
规则中心:通过已知道的攻击面中可能存在的漏洞点,配置成网络入侵检测规则,通过规则中心统一管理网络入侵检测规则,下发给预判器进行智能分析。
Hook器:需要对应用的常用***调用或者敏感类做一些监控。应用的不同攻击面一般会对应不同的Hook器。通过Hook器可以描述应用的功能点对应的攻击面。Hook器会与预判器进行联动,预判器确定需要哪些方面的监控信息,Hook器来实时提供。
预判器:通过规则中心,以及与每个功能的Hook器的联动,进行攻击面情况的预判,对最终的应用攻击面情况进行输出,形成攻击面初步研判报告。
下面,结合图1,对本申请实施例的方法进行说明。
图2是本申请的一个实施例查找应用漏洞的方法流程图。图2的方法可包括:
S201,根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面。
应理解,通过对应用的静态程序检测信息和运行环境检测信息的分析,可以得到应用中的攻击面信息。
在图1所示的攻击面提取预判***中,预判器根据hook器采集的数据进行预判之前,需要确定应用中有哪些攻击面,并根据攻击面调用对应的hook 器监控数据。
应理解,根据应用的静态程序检测信息,可确定应用的一部分攻击面信息。
例如,如果应用中具有浏览器插件,则可确定该应用存在浏览器攻击面。现代Web浏览器作为功能最为强大的客户端应用代表,支持HTML,Javascript 和丰富的web应用。除了渲染和执行应用逻辑之外还支持一些底层协议。如 FTP,HTTP。这些都是有数量惊人的后台代码实现的,而其中的每个组件都带有一个攻击面。浏览器攻击面可以通过诱导点击,“水坑”等方法进行攻击。
又例如,对于以web驱动的移动应用程序来说,也存在对应的攻击面,每个web驱动的移动应用暴露的攻击面都是不同的。
又例如,现有的很多应用中都会植入广告网络,广告网络由于嵌入嵌入式浏览器引擎(WebView),浏览器攻击对于这些应用都是存在的,但一般只能通过中间人攻击人向量。而且与传统浏览器攻击不同,这种组件还会暴露额外的攻击面,可以利用Java类型的反射攻击进行远程攻破。另外,广告框架可能会对隐私构成显著威胁。
当然,根据应用的静态程序检测信息,还可确定应用的其它攻击面信息,本申请实施例在此不再一一赘述。
另外,一个应用的运行过程中,可能会存在与进程的交互,或者因为环境配置会有不同功能的体现。根据应用与进程的交互信息或应用在运行时的功能体现,也可确定应用的一部分攻击面信息。
例如,应用在运行时,往往需要与外部设备交互。
应用可基于网络协议与外部设备交互。以Android***为例,在Android ***中,包含了对IP,TCP,UDP,ICMP等协议的实现。如果在IP包的处理过程中出现可以用的缓冲区溢出漏洞,将成为最为严重的安全漏洞,可以远程执行内核中的任意代码。
另外,应用与外部设备交互时所采用的通信技术,往往也是攻击面所在。以Android设备为例,Android设备都支持多种基于射频的无线技术,几乎都支持蓝牙和wifi和GPS,较新的还支持NFC(近场通信),每种无线技术都具有特有的频率,且极易受到大量的攻击,包括主动攻击和被动攻击。其中,主动攻击包括阻塞,欺骗,中间人(MitM)等形式。由于wifi和蜂窝网络是用于访问整个互联网,因此可以达到非常丰富的攻击面。
当然,应理解,在确定应用中的攻击面之前,还可获取该应用的静态程序检测信息,以及应用的运行环境检测信息。在图1所示的攻击面提取预判***中,可通过启动器获取该应用的静态程序检测信息,以及应用的运行环境检测信息。为了更全面更准确地确定应用的攻击面,一般需要尽可能地获取该应用的静态程序检测信息,以及应用的运行环境检测信息。当然,在具体的应用中,也需要考虑采集数据量的成本与性能提升幅度。
S202,获取该应用在运行时攻击面对应的监控数据。
可选地,作为一个实施例,在获取攻击面对应的监控数据时,可根据攻击面的类型确定应用对应的监控数据。
具体地,步骤S202可实现为:根据该应用中第一攻击面的类型,获取第一攻击面的类型所对应的监控数据。
例如,假设攻击面为80端口、http的攻击面,则在本申请实施例中,可监控应用接收的数据中经过80端口的数据,以获取80端口接收的数据的信息。
当然,应理解,根据该应用中第一攻击面的类型,获取第一攻击面的类型所对应的监控数据,具体可实现为:
根据该应用中第一攻击面的类型,确定第一攻击面对应的hook器,该hook 器用于拦截该应用在该第一攻击面上接收到的数据;
根据第一攻击面对应的hook器,获取该应用在第一攻击面对应的监控数据。
在图1所示的攻击面提取预判***中,预判器在确定攻击面后,还可确定攻击面对应的hook器。
应理解,不同攻击面的类型,需要通过调用不同的hook器以采集攻击面的漏洞检测所需的数据。
可选地,作为一个实施例,在获取攻击面对应的监控数据时,可根据攻击面的类型或攻击面对应的网络入侵检测规则确定应用对应的监控数据。
还是以前面的80端口、http的攻击面为例,假设其攻击面的网络入侵检测规则包括如下内容:if port==80:http attack,则可监控应用接收的数据中经过 80端口的数据,以获取80端口接收的数据的信息。
当然,应理解,除了使用hook器获取数据外,在本申请实施例中,还可通过snort工具的嗅探器抓取攻击面对应的监测数据。Snort工具通过在网络 TCP/IP的5层结构的数据链路层进行抓取网络数据包,抓包时需将网卡设置为混杂模式,根据操作***的不同,采用libpcap或winpcap函数从网络中捕获数据包,然后将捕获的数据包送到包解码器进行解码。网络中的数据包有可能是以太网包、令牌环包、TCP/IP包、802.11包等格式。在这一过程包解码器将其解码成Snort认识的统一的格式。
S203,根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
在图1所示的攻击面提取预判***中,预判器可通过规则中心,以及与每个功能的Hook器的联动,根据hook器获取的数据与规则中心对应的规则的匹配关系,确定攻击面是否存在漏洞,并对最终的应用攻击面情况进行输出,形成攻击面初步研判报告。
本申请实施例中,通过应用的攻击面的监控数据和应用的攻击面对应的网络入侵检测规则确定可能存在漏洞的攻击面,从而能够有效辅助提高应用漏洞的挖掘效率。
可选地,作为一个实施例,在步骤S203之前,该方法还可包括:
根据该应用的攻击面的类型,确定该应用的攻击面对应的网络入侵检测规则。
应理解,在配置网络入侵检测规则时,可采用多种工具实现。一种常见的工具为snort工具。在本申请实施例中,可通过snort工具的网络入侵检测***配置攻击面的网络入侵检测规则。
例如,假设根据某个攻击面的类型,可确定其网络入侵检测是检测流入202.12.1.0这个网段的TCP包长度是否超过3000B,并在检测到超过3000B的 TCP包时发出警告,则其对应的网络入侵检测规则可用snort工具配置如下: alert tcp any any->202.12.1.0/24 80(msg:”misc large tcp packet”;dsize:>3000;)。
当然,应理解,根据攻击面的类型,只能确定网络入侵检测规则的基本语法,还需要结合具体的需要,调整网络入侵检测规则的内容。例如,检测流入的网段为202.12.2.0,TCP包的大小限制为4000B,则上述的网络入侵检测规则应适应性调整。
本申请实施例中,通过配置攻击面类型对应的网络入侵检测规则,以便通过分析攻击面对应的监控数据,确定攻击面是否存在漏洞。
可选地,作为另一个实施例,在步骤S203之前,该方法还可包括:
根据该应用的攻击面,从网络入侵检测规则数据库中获取该应用的攻击面对应的网络入侵检测规则,其中,该网络入侵检测规则数据库用于存储攻击面与经过训练的网络入侵检测规则之间的映射关系。
应理解,对于相同类型的攻击面而言,其所属的应用可能不同,但其对应的网络入侵检测规则基本上是相同或相似的。因此,在本申请实施例中,可将网络入侵检测效果较好的规则及其对应的攻击面之间的映射关系,存储在一个网络入侵检测规则数据库中,当应用需要进行网络入侵检测时,从网络入侵检测规则数据库调取应用的攻击面对应的网络入侵检测规则,加载到应用的入侵检测规则中。
当然,应理解,步骤S203具体可实现为:如果该应用中第一攻击面的监控数据符合第一攻击面的网络入侵检测规则规定的漏洞的数据特征,则确定该应用的第一攻击面为可能存在漏洞的攻击面。
还是以snort工具为例,当snort工具得到snort工具中的嗅探器获取并处理后的数据后,或者得到本申请实施例的hook器获取的数据后,可通过预处理插件对该数据进行预处理。预处理插件的功能就是在规则匹配误用检测之前运行,完成TIP碎片重组,http解码,telnet解码等功能。预处理包括能分片的数据包进行重新组装,处理一些明显的错误等问题。预处理的过程主要是通过插件来完成,比如Http预处理器完成对Http请求解码的规格化,Frag2事务处理器完成数据包的组装,Stream4预处理器用来使Snort状态化,端口扫描预处理器能检测端口扫描的能力等。
Snort工具的网络入侵检测***通过对获取的数据包,进行各规则的分析后,根据规则链,可采取Activation(报警并启动另外一个动态规则链)、Dynamic (由其它的规则包调用)、Alert(报警),Pass(忽略),Log(不报警但记录网络流量)等的响应机制。例如,对于前述的规则:alert tcp any any->202.12.1.0/24 80(msg:”misc large tcp packet”;dsize:>3000;),当Snort工具的网络入侵检测***检测到流入202.12.1.0这个网段的TCP包长度超过3000B,则可发出警告,表示该规则对应的攻击面可能存在漏洞。
应理解,在snort工具的网络入侵检测***配置的规则中,其规则语法涉及到协议的类型、内容、长度、报头等各种要素。处理规则文件的时候,可用三维链表来存规则信息以便和后面的数据包进行匹配并发生响应。规则检测的处理能力需要根据规则的数量,运行Snort工具的机器性能,网络负载等因素决定。
在snort工具中,经过检测后的数据包需要以各种形式将规则匹配结果进行输出,输出形式可以是输出到alert文件、其它日志文件、数据库UNIX域或 Socket等。本申请实施例中,可根据数据的文件,分析确定应用的攻击面中可能存在的漏洞。
当然,应理解,在本申请实施例中,还可根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的个数。
例如,在snort工具的网络入侵检测***中,可通过分析规则生效的日志,并根据日志的内容、类型等,确定规则对应的攻击面中可能存在的漏洞的个数。通过确定攻击面可能存在的漏洞的个数,可以一定程度上确定攻击面被入侵的风险等级。当然,应理解,漏洞个数多的攻击面的风险等级,并不一定高于漏洞个数少的攻击面的风险等级。攻击面的风险等级,还需要考虑漏洞被利用的可能性、漏洞被利用后带来的危害,等等。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图3是本申请的一个实施例电子设备的结构示意图。请参考图3,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory, RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成应用漏洞查找装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取该应用在运行时攻击面对应的监控数据;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
上述如本申请图3所示实施例揭示的应用漏洞查找装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor, NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field -Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图2的方法,并实现图1所示实施例的攻击面提取预判***的功能,或应用漏洞查找装置在图2所示实施例的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图2所示实施例的方法,并具体用于执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取该应用在运行时攻击面对应的监控数据;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
图4是本申请的一个实施例应用漏洞查找装置400的结构示意图。请参考图4,在一种软件实施方式中,应用漏洞查找装置400可包括:确定单元410 和获取单元420,其中,
确定单元410,根据应用的静态程序检测信息及运行环境检测信息确定该应用的攻击面;
获取单元420,获取该应用在运行时攻击面对应的监控数据;
确定单元410,还根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定该应用的攻击面中可能存在漏洞的攻击面,其中,该攻击面的网络入侵检测规则是针对该攻击面配置的用于网络入侵检测的规则。
本申请实施例中,通过应用的攻击面的监控数据和应用的攻击面对应的网络入侵检测规则确定可能存在漏洞的攻击面,从而能够有效辅助提高应用漏洞的挖掘效率。
可选地,作为一个实施例,确定单元410具体用于:如果所述应用中第一攻击面的监控数据符合第一攻击面的网络入侵检测规则规定的漏洞的数据特征,则确定所述应用的第一攻击面为可能存在漏洞的攻击面。
进一步地,确定单元410,还可确定该应用的第一攻击面中可能存在的漏洞的个数。
可选地,作为一个实施例,获取单元420,还从网络入侵检测规则数据库中获取该应用的攻击面对应的网络入侵检测规则,其中,该网络入侵检测规则数据库用于存储攻击面与经过训练的网络入侵检测规则之间的映射关系。
或者,可选地,作为另一个实施例,确定单元410还根据该应用的攻击面的类型,确定该应用的攻击面对应的网络入侵检测规则。
可选地,该网络入侵检测规则是通过snort工具配置的。
可选地,获取单元420具体用于根据该应用中第一攻击面的类型,获取第一攻击面的类型所对应的监控数据。
进一步地,获取单元420具体用于:
根据该应用中第一攻击面的类型,确定第一攻击面对应的hook器,该hook 器用于拦截该应用在该第一攻击面上接收到的数据;
根据第一攻击面对应的hook器,获取该应用在第一攻击面对应的监控数据。
或者,可选地,作为另一个实施例,获取单元420具体用于:根据该应用中第一攻击面的网络入侵检测规则,获取第一攻击面的网络入侵检测规则所需的监控数据。
应用漏洞查找装置400还可实现图2所示实施例的方法,具体实现可参考图1所示实施例的攻击面提取预判***或图2所示实施例的方法,不再赘述。
总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (11)

1.一种查找应用漏洞的方法,包括:
根据应用的静态程序检测信息及运行环境检测信息确定所述应用的攻击面,其中,根据所述静态程序检测信息检测的攻击面至少包括浏览器插件的组件的攻击面、web驱动的攻击面、植入广告网络的攻击面中的一种或多种,根据所述运行环境检测信息检测的攻击面至少包括所述应用与外部设备交互时所采用的通信技术和/或网络协议;
根据所述应用的攻击面的类型,确定所述应用的攻击面对应的网络入侵检测规则;
获取所述应用在运行时攻击面对应的监控数据,攻击面对应的监控数据基于攻击面的类型或攻击面对应的网络入侵检测规则确定;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面,其中,所述攻击面的网络入侵检测规则是针对所述攻击面配置的用于网络入侵检测的规则。
2.如权利要求1所述的方法,其特征在于,根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面,包括:
如果所述应用中第一攻击面的监控数据符合第一攻击面的网络入侵检测规则规定的漏洞的数据特征,则确定所述应用的第一攻击面为可能存在漏洞的攻击面。
3.如权利要求2所述的方法,其特征在于,
所述方法还包括:确定所述应用的第一攻击面中可能存在的漏洞的个数。
4.如权利要求1所述的方法,其特征在于,在根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面之前,所述方法还包括:
根据所述应用的攻击面,从网络入侵检测规则数据库中获取所述应用的攻击面对应的网络入侵检测规则,其中,所述网络入侵检测规则数据库用于存储攻击面与经过训练的网络入侵检测规则之间的映射关系。
5.如权利要求1或4所述的方法,其特征在于,
所述网络入侵检测规则是通过snort工具配置的。
6.如权利要求1所述的方法,获取所述应用在运行时攻击面对应的监控数据,包括:
根据所述应用中第一攻击面的类型,获取第一攻击面的类型所对应的监控数据。
7.如权利要求6所述的方法,其特征在于,根据所述应用中第一攻击面的类型,获取第一攻击面的类型所对应的监控数据,包括:
根据所述应用中第一攻击面的类型,确定第一攻击面对应的hook器,所述hook器用于拦截所述应用在所述第一攻击面上接收到的数据;
根据第一攻击面对应的hook器,获取所述应用在第一攻击面对应的监控数据。
8.如权利要求1所述的方法,获取所述应用在运行时攻击面对应的监控数据,包括:
根据所述应用中第一攻击面的网络入侵检测规则,获取第一攻击面的网络入侵检测规则所需的监控数据。
9.一种应用漏洞查找装置,其特征在于,包括:
确定单元,根据应用的静态程序检测信息及运行环境检测信息确定所述应用的攻击面,其中,根据所述静态程序检测信息检测的攻击面至少包括浏览器插件的攻击面、web驱动的攻击面、植入广告网络的攻击面中的一种或多种,根据所述运行环境检测信息检测的攻击面至少包括所述应用与外部设备交互时所采用的通信技术和/或网络协议;
获取单元,获取所述应用在运行时攻击面对应的监控数据,攻击面对应的监控数据基于攻击面的类型或攻击面对应的网络入侵检测规则确定;
所述确定单元,还根据攻击面的类型,确定攻击面对应的网络入侵检测规则,以及根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面,其中,所述攻击面的网络入侵检测规则是针对所述攻击面配置的用于网络入侵检测的规则。
10.一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定所述应用的攻击面,其中,根据所述静态程序检测信息检测的攻击面至少包括浏览器插件的攻击面、web驱动的攻击面、植入广告网络的攻击面中的一种或多种,根据所述运行环境检测信息检测的攻击面至少包括所述应用与外部设备交互时所采用的通信技术和/或网络协议;
根据所述应用的攻击面的类型,确定所述应用的攻击面对应的网络入侵检测规则;
获取所述应用在运行时攻击面对应的监控数据,攻击面对应的监控数据基于攻击面的类型或攻击面对应的网络入侵检测规则确定;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面,其中,所述攻击面的网络入侵检测规则是针对所述攻击面配置的用于网络入侵检测的规则。
11.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
根据应用的静态程序检测信息及运行环境检测信息确定所述应用的攻击面,其中,根据所述静态程序检测信息检测的攻击面至少包括浏览器插件的攻击面、web驱动的攻击面、植入广告网络的攻击面中的一种或多种,根据所述运行环境检测信息检测的攻击面至少包括所述应用与外部设备交互时所采用的通信技术和/或网络协议;
根据所述应用的攻击面的类型,确定所述应用的攻击面对应的网络入侵检测规则;
获取所述应用在运行时攻击面对应的监控数据,攻击面对应的监控数据基于攻击面的类型或攻击面对应的网络入侵检测规则确定;
根据攻击面对应的监控数据,和攻击面对应的网络入侵检测规则,确定所述应用的攻击面中可能存在漏洞的攻击面,其中,所述攻击面的网络入侵检测规则是针对所述攻击面配置的用于网络入侵检测的规则。
CN201710666451.2A 2017-08-07 2017-08-07 查找应用漏洞的方法、装置和*** Active CN107506648B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710666451.2A CN107506648B (zh) 2017-08-07 2017-08-07 查找应用漏洞的方法、装置和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710666451.2A CN107506648B (zh) 2017-08-07 2017-08-07 查找应用漏洞的方法、装置和***

Publications (2)

Publication Number Publication Date
CN107506648A CN107506648A (zh) 2017-12-22
CN107506648B true CN107506648B (zh) 2021-02-23

Family

ID=60689037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710666451.2A Active CN107506648B (zh) 2017-08-07 2017-08-07 查找应用漏洞的方法、装置和***

Country Status (1)

Country Link
CN (1) CN107506648B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218315B (zh) * 2018-09-20 2021-06-01 华为技术有限公司 一种安全管理方法和安全管理装置
DE102018221349A1 (de) * 2018-12-10 2020-06-10 Robert Bosch Gmbh Verfahren zur Verwaltung eines Speichers
CN111435393B (zh) * 2019-01-14 2024-04-16 北京京东尚科信息技术有限公司 对象漏洞的检测方法、装置、介质及电子设备
DE102019205977A1 (de) 2019-04-25 2020-10-29 Robert Bosch Gmbh Elektromechanischer Bremsdruckerzeuger für ein hydraulisches Bremssystem eines Fahrzeugs und Verfahren zum Herstellen eines elektromechanischen Bremsdruckerzeugers
CN110381047B (zh) * 2019-07-11 2021-09-03 武汉思普崚技术有限公司 一种网络攻击面追踪的方法、服务器和***
CN110213301B (zh) * 2019-07-11 2021-09-03 武汉思普崚技术有限公司 一种转移网络攻击面的方法、服务器和***
CN110365673B (zh) * 2019-07-11 2021-09-03 武汉思普崚技术有限公司 一种隔离网络攻击面的方法、服务器和***
CN110365674B (zh) * 2019-07-11 2021-09-03 武汉思普崚技术有限公司 一种预测网络攻击面的方法、服务器和***
CN110619219B (zh) * 2019-07-31 2021-08-24 广州亚美信息科技有限公司 应用程序源码保护方法、装置、计算机设备和存储介质
CN111740992B (zh) * 2020-06-19 2022-08-30 北京字节跳动网络技术有限公司 网站安全漏洞检测方法、装置、介质及电子设备
CN113660296B (zh) * 2021-10-21 2023-04-18 中国核电工程有限公司 一种工控***防攻击性能的检测方法、装置及计算机设备
CN114070648A (zh) * 2021-12-02 2022-02-18 北京神州新桥科技有限公司 配置网络安全策略的评估方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8584242B2 (en) * 2011-07-12 2013-11-12 At&T Intellectual Property I, L.P. Remote-assisted malware detection
US10318728B2 (en) * 2014-12-16 2019-06-11 Entit Software Llc Determining permissible activity based on permissible activity rules
CN106022116B (zh) * 2016-05-12 2018-11-06 南京大学 基于安卓程序应用间攻击的自动化补丁***及方法

Also Published As

Publication number Publication date
CN107506648A (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
CN107506648B (zh) 查找应用漏洞的方法、装置和***
US10558807B2 (en) Method and device for providing access page
US10601848B1 (en) Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
Chen et al. Finding unknown malice in 10 seconds: Mass vetting for new threats at the {Google-Play} scale
US10140451B2 (en) Detection of malicious scripting language code in a network environment
US8997231B2 (en) Preventive intrusion device and method for mobile devices
CN107612924B (zh) 基于无线网络入侵的攻击者定位方法及装置
US9081961B2 (en) System and method for analyzing malicious code using a static analyzer
CN111294345B (zh) 一种漏洞检测方法、装置及设备
CN102932329B (zh) 一种对程序的行为进行拦截的方法、装置和客户端设备
CA2968201A1 (en) Systems and methods for malicious code detection
CN107465702B (zh) 基于无线网络入侵的预警方法及装置
US20170353434A1 (en) Methods for detection of reflected cross site scripting attacks
CN103746992B (zh) 基于逆向的入侵检测***及其方法
WO2017071148A1 (zh) 基于云计算平台的智能防御***
CN107332804B (zh) 网页漏洞的检测方法及装置
CN107566401B (zh) 虚拟化环境的防护方法及装置
CN111565202B (zh) 一种内网漏洞攻击防御方法及相关装置
Luoshi et al. A3: automatic analysis of android malware
CN111464526A (zh) 一种网络入侵检测方法、装置、设备及可读存储介质
CN112532631A (zh) 一种设备安全风险评估方法、装置、设备及介质
CN116340943A (zh) 应用程序保护方法、装置、设备、存储介质和程序产品
Ramachandran et al. Android anti-virus analysis
US10721148B2 (en) System and method for botnet identification
CN113987468A (zh) 安全检查方法和安全检查装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant