CN106911649A - 一种检测网络攻击的方法和装置 - Google Patents

一种检测网络攻击的方法和装置 Download PDF

Info

Publication number
CN106911649A
CN106911649A CN201510981890.3A CN201510981890A CN106911649A CN 106911649 A CN106911649 A CN 106911649A CN 201510981890 A CN201510981890 A CN 201510981890A CN 106911649 A CN106911649 A CN 106911649A
Authority
CN
China
Prior art keywords
request message
network
storehouse
suspicion
keyword
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.)
Pending
Application number
CN201510981890.3A
Other languages
English (en)
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510981890.3A priority Critical patent/CN106911649A/zh
Publication of CN106911649A publication Critical patent/CN106911649A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种网络攻击的检测方法和装置,通过在对网络请求消息合集内网络请求消息进行网络攻击检测前,根据预设关键字库对网络请求消息合集进行过滤,过滤掉安全的网络请求消息,仅保留可能发生网络攻击的嫌疑请求消息,后续对嫌疑请求消息进行网络攻击检测,能够大幅提高网络攻击的检测效率。

Description

一种检测网络攻击的方法和装置
技术领域
本申请涉及网络安全技术领域,尤其涉及一种检测网络攻击的方法和装置。
背景技术
网络攻击作为引发网络安全危机的常见因素,是指利用网络存在的漏洞和安全缺陷对网络进行恶意攻击的行为,由于其可操作性强且很容易导致网络异常,甚至奔溃,严重影响了网络的正常使用。业内关于如何检测网络攻击也愈发关注。
现有一种检测网络攻击的方法包括如下步骤:针对攻击构造关键字符;根据关键字符来构造正则表达式;在接收到网络请求消息后,对该网络请求消息进行正则表达式匹配,在该网络请求消息中存在与正则表达式匹配得的数据时,则确定该网络请求消息中存在网络攻击。
然而,该种现有技术存在如下缺陷:
由于人们通过网络进行工作和学习的机会不断增加,网络请求消息的量级也越来越大,对这些网络请求消息逐一进行正则表达式匹配以发现网络攻击的耗时越来越长,导致难以快速检测到这些网络请求消息中的网络攻击行为。
发明内容
本申请实施例提供一种检测网络攻击的方法和装置,能够快速检测到网络请求消息中的网络攻击行为。
为解决上述技术问题,本发明的实施例中提供一种检测网络攻击的方法,包括:
接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字;
对所述嫌疑请求消息进行网络攻击检测。
优选的,所述预设关键字库包括至少两个关键字,所述关键字还具有用于描述所述关键字所适用的对象的名称的属性;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息之前,所述方法包括:
对所述网络请求消息合集内网络请求消息进行协议解析,得到组成所述网络请求消息的对象,所述对象具有名称和内容;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字,具体包括:
在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的关键字,作为目标关键字;
在所述网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
优选的,所述对所述嫌疑请求消息进行网络攻击检测,具体包括:
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对;
判断是否存在符合正则表达式的对象,若是,判定发生网络攻击。
优选的,将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对之前,所述方法还包括:
在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式;
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对,具体包括:
将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
优选的,所述判定发生网络攻击之后,所述方法包括:
拦截所述对象符合正则表达式的网络请求消息。
优选的,所述判定发生网络攻击之后,所述方法包括:
对所述对象符合正则表达式的网络请求消息的发起者和响应者发出网络攻击警告。
为解决上述技术问题,本发明的实施例中提供一种检测网络攻击的装置,包括:
接收模块,接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息;
过滤模块,根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字;
处理模块,对所述嫌疑请求消息进行网络攻击检测。
优选的,所述预设关键字库包括至少两个关键字,所述关键字还具有用于描述所述关键字所适用的对象的名称的属性;
所述装置包括解析模块,用于在根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息之前,对所述网络请求消息合集内网络请求消息进行协议解析,得到组成所述网络请求消息的对象,所述对象具有名称和内容;
所述过滤模块,具体用于:
在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的关键字,作为目标关键字;
在所述网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
优选的,所述处理模块,具体用于:
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对;
判断是否存在符合正则表达式的对象,若是,判定发生网络攻击。
优选的,所述装置还包括目标表达式确认模块,用于在将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对之前,在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式;
所述处理模块,具体用于:
将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
优选的,所述装置还包括拦截模块,用于判定发生网络攻击之后,拦截所述对象符合正则表达式的网络请求消息。
优选的,所述装置还包括提示模式,用于判定发生网络攻击之后,对所述对象符合正则表达式的网络请求消息的发起者和响应者发出网络攻击警告。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过在对网络请求消息合集内网络请求消息进行网络攻击检测前,根据预设关键字库对网络请求消息合集进行过滤,过滤掉安全的网络请求消息,仅保留可能发生网络攻击的嫌疑请求消息,后续对嫌疑请求消息进行网络攻击检测,能够大幅提高网络攻击的检测效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例中检测网络攻击的方法的流程图。
图2为本发明的另一实施例中检测网络攻击的方法的流程图。
图3为本发明实施例中检测网络攻击的装置的模块图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本发明实施例中检测网络攻击的方法的流程图,该方法的执行主体可以是一个专用于检测网络攻击的服务器。
该方法包括如下步骤:
S20、接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息。
网络请求消息合集内包括多条网络请求消息,这些网络请求消息可以包括目前网络中常见的涉及到数据请求的信息,例如可以是门户网站的访问请求信息、或邮件下载请求信息等。
随着网络技术的快速发展,网络请求消息合集内的网络请求消息的数量可能极大,例如可能是10万的量级。
在本申请实施例中,网络请求消息合集内的网络请求消息符合相同的网络协议,例如可以是如下的应用层协议:(1)交换的报文类型,如请求报文和响应报文;(2)各种报文类型的语法,如报文中的各个字段公共详细描述;(3)字段的语义,即包含在字段中信息的含义;(4)进程何时、如何发送报文及对报文进行响应。有些应用层协议是由RFC文档定义的,因此它们位于公共领域。例如,web的应用层的协议HTTP(超文本传输协议,RFC2616)就作为一个RFC供用户使用。如果浏览器开发者遵从HTTP RFC规则,所开发出的浏览器就能访问任何遵从该文档标准的web,服务器并获取相应的web页面。还有很多别的应用层协议是专用的不能随意应用于公共领域。例如,很多现有的P2P文件共享系统使用的是专用应用层协议。目的,应用层协议主要有以下几种。(1)域名系统(Domain Name System,DNS):用于实现网络设备名字到IP地址映射的网络服务。(2)文件传输协议(FileTransfer Protocol,FTP):用丁实现交互式文件传输功能。(3)简单邮件传送协议(Simple Mail Transfer Protocol,SMTP):用于实现电子邮箱传送功能(4)超文本传输协议(HyperText Transfer Protocol,HTTP):用于实现WWW服务。(5)简单网络管理协议(simple Network Management Protocol,SNMP):用于管理与监视网络设备。(6)远程登录协议(Telnet):用于实现远程登录功能。
S40、根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字。
预设关键字库包括多条关键字:关键字1、关键字2、关键字3、关键字4、关键字5,……,关键字N。所述预设关键字库内关键字可以按照主类、子类和规则的方式来组织。
这些关键字用于表示一般进行网络攻击时会在网络请求消息中注入的常用字或分隔符。以针对门户网站的SQL注入攻击为例,网络请求消息中一般具有常用的关键字以及分隔符,如“select”、“and”、“;”、“--”等。可以将前述“select”、“and”、“;”、“--”等作为关键字并存入预设关键字库内。
在服务器获取到网络请求消息合集后,在其中筛选是否存在关键字,若是某个网络请求消息中存在关键字则表明该网络请求消息发生网络攻击的概率较大,因此将其列为嫌疑请求消息,反之,若是网络请求消息内并无关键字,则该网络请求消息肯定未发生网络攻击,其为安全的。
S60、对所述嫌疑请求消息进行网络攻击检测。
由于嫌疑请求消息是通过步骤S40在网络请求消息合集内筛选得到,相对于网络请求消息合集内的大量级的网络请求消息,很好的控制了步骤S60中需要处理的请求消息的数量,大大提高了网络攻击的检测效率。
在本发明的实施例中,通过步骤S40对于网络请求消息合集的过滤,可以过滤接近99%的网络请求消息,大大提高了网络攻击的检测效率。
图2为本发明的另一实施例中检测网络攻击的方法的流程图。相对于图1所示的方法,区别包括:步骤S20和S40之间还存在步骤S30,具体如下。
S30、对网络请求消息合集内网络请求消息进行协议解析,得到组成网络请求消息的对象,所述对象具有名称和内容。
为了说明方便,本发明实施例以http协议消息进行说明。则对该消息进行协议分析,即通过http rfc协议规范进行协议分析,从而获得消息包含的各个http协议字段,这些协议字段即组成网络请求消息的对象。以http协议为例,本发明的对象是指http消息预定义字段,例如,url、reference、参数、cookie等字段。对象的名称即url、reference、参数、cookie等字段名称,对象的内容即这些字段的数据。
本领域技术人员了解,对于http协议,请求信息包括希望返回的文件名和客户机信息。客户机信息以请求头发送给服务器,请求头包括HTTP方法和头字段。HTTP方法常用的有GET、HEAD、POST、PUT、DELETE、LINK、UNLINK等方法。头字段包括:DATE:请求发送的日期和时间;PARGMA:用于向服务器传输与实现无关的信息,这个字段还用于告诉代理服务器,要从实际服务器而不是从高速缓存取资源;FORWARDED:可以用来追踪机器之间,而不是客户机和服务器的消息,这个字段可以用来追踪在代理服务器之间的传递路由;MESSAGE_ID:用于唯一地标识消息;ACCEPT:通知服务器客户所能接受的数据类型和尺寸(*/*表示可以接受所有类型的数据);AOTHORIZATION:向服务器提供旁路安全保护和加密机制,若服务器不需要这个字段,则不提供这个字段;FROM:当客户应用程序希望想服务器提供有关其电子邮件地址时使用;IF-MODEFIED-SINCE用于提供条件GET;如果所请求的文档自从所指定的日期以来没有发生变化,则服务器应不发送该对象;如果所发送的日期格式不合法,或晚于服务器的日期,服务器会忽略该字段;BEFERRER:向服务器进行资源请求用到的对象;MIME-VERTION:用于处理不同类型文件的MIME协议版本号;USER-AGENT:有关发出请求的客户信息。
通常http消息包括客户机向服务器的http请求消息和服务器向客户机的http响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。http的头域包括通用头,请求头,响应头和实体头四个部分。
例如,一个典型的http请求消息为:
GEThttp://class/download.microtool.de:80/somedata.exe
Host:download.microtool.de
Accept:*/*
Pragma:no-cache
Cache-Control:no-cache
Referer:http://class/download.microtool.de/
User-Agent:Mozilla/4.04[en](Win95;I;Nav)
Range:bytes=554554-
其中,Host头域指定请求资源的Intenet主机和端口号,必须表示请求url的原始服务器或网关的位置;Referer头域允许客户端指定请求uri的源资源地址,这可以允许服务器生成回退链表,可用来登陆、优化cache等;Range头域可以请求实体的一个或者多个子范围;User-Agent头域内容包含发出请求的用户信息。
对应网络请求消息的组成对象,预设关键字库内每个关键字也包括属性,属性用于表明这些关键字适用的网络请求消息中对象的名称。具体地,关键字1具有属性A、关键字2具有属性B、关键字3具有属性B、关键字4具有属性C、关键字5具有属性C,……,关键字N具有属性N。
仍以http协议消息为例,属性可以设置成相对应的对象的名称,即url、reference、参数、cookie等字段名称。
步骤S40则适应性的调整为包括如下两个步骤。
S42、在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的预设关键字,作为目标关键字。
在网络请求消息解析出对象后,根据这些对象的名称在预设关键字库内筛选,以确定属性和网络请求消息的对象的名称相同的预设关键字,则作为目标关键字。
以通过步骤S30获取到对象A、对象B为例,查找预设关键字库进行匹配,如果确定对象A的数据不包含具有属性A的关键字1,则确定没有与对象A匹配到的关键字,进一步地,对对象B的数据与具有属性B的关键字2和关键字3进行匹配,如果对象B的数据不包含关键字2但是包含关键字3,则确定匹配到关键字3。对于预设关键字库包含的其他关键字,由于它们的属性并非获取到的对象(A和B),因此不会匹配到。
S44、在网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
对网络请求消息库内网络请求消息的对象进行筛选,得到对象的数据中包括目标关键字的网络请求消息,作为嫌疑请求消息。
通过在预设关键字库内预先筛选出目标关键字,可以提高筛选出嫌疑请求消息的速度,保证网络攻击的检测效率。
在发明的实施例中,可以采用多模匹配算法进行关键字匹配。关键字匹配算法包括多种,例如Trie树、AC算法、WM算法等等。本发明实施例优选采用ACBM算法。ACBM算法是在AC自动机的基础之上,引入了BM算法的多模扩展,实现的高效的关键字匹配。ACBM算法的核心思想就是让每次匹配的起始位置跨度尽可能的大,以提高效率。和AC自动机不同的是,ACBM算法不需要扫描目标文本串中的每一个字符,可以利用本次匹配不成功的信息,跳过尽可能多的字符,实现高效匹配。在匹配步骤如下:1、选定一个匹配起始位置。2、使用AC树进行匹配,如果匹配失效,跳转步骤1;如果匹配成功,可根据应用需要跳转至步骤1或者退出。ACBM算法中的AC算法部分比AC自动机算法的实现要简单,不需要考虑失效函数的问题,也就是说ACBM算法中实现的AC算法部分是一棵树,而在AC自动机的实现是一个图。ACBM算法中的BM算法的实现要比BM算法本身的实现要复杂一些,因为这是对BM算法的多模式一种扩展。ACBM算法中的核心数据结构包括:1、MinLen,模式串集合中最短那个模式串的长度:比较失配时最多跳跃的字符个数不能超过Minlen。2、ACTree,由模式串集合构建出的状态树,构建方法和AC自动机的构建方法相同,而且不需要计算失效函数,比较简单。3、BCshift:ACTree对应一个坏字符数组,当匹配失效时,查找该数组计算坏字符偏移量。4、GSshift:AC树的每一个节点对应一个好后缀偏移量。
步骤S60则适应性的调整为包括如下4个步骤。
S62、将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对。
预设正则库包括多条正则表达式:正则表达式1、正则表达式2、正则表达式3、正则表达式4、正则表达式5,……,正则表达式N。所述预设正则库内正则表达式按照主类、子类和规则的方式来组织。
与预设关键字库一致,每一条正则表达式具有属性,这个属性用于描述该正则表达式所适用的网络请求消息内的对象。具体地,正则表达式1具有属性A(即,正则表达式1的属性为对象A)、正则表达式2具有属性A、正则表达式3具有属性B、正则表达式4具有属性B、正则表达式5具有属性C,……,正则表达式N具有属性N。
优选的,可以在执行步骤S62之前,在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式,该目标表达式的属性和目标关键字的属性相同。则步骤S62则适应性调整为:将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
由于,目标表达式相对于正则表达式数量更少,从而提高了步骤S62的执行效率。
S64、判断是否存在符合正则表达式的对象,若是,执行步骤S66,若否,执行步骤S68。
嫌疑请求信息中的对象均与预设正则库内正则表达式进行比较,以明确对象是否符合正则表达式。
S66、判定发生网络攻击。
S68、判定未发生网络攻击。
由于预设正则库内正则表达式是根据网络攻击发生时,网络请求消息的对象数据被注入攻击用关键字后概括得到,因此,在对象符合正则表达式时,可以得到发生网络攻击的结论,反之则未发生网络攻击。
在本发明的实施例中,步骤S68、判定发生网络攻击之后,所述方法包括:
拦截所述对象符合正则表达式的网络请求消息。该网络请求消息即是发生了网络攻击的消息,该消息被拦截,可以保证用户的网络安全。
在本发明的实施例中,步骤S68、判定发生网络攻击之后,所述方法包括:
对所述对象符合正则表达式的网络请求消息的发起者和响应者发出网络攻击警告。
该网络请求消息确定发生网络攻击,通过向该网络请求消息的发起者和响应者发送网络攻击警告,使得用户能够明确网络发生危险,提高其安全意识。
图3为本发明实施例中,检测网络攻击的装置的模块图。该装置是基于前述检测方法来实现的,其细节可参考前述方法,在此不做赘述。
该装置包括如下模块。
接收模块20,接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息;
过滤模块40,根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字;
处理模块60,对所述嫌疑请求消息进行网络攻击检测。
优选的,所述网络请求消息合集内所有网络请求消息符合相同的网络协议。
优选的,所述网络协议包括TFTP、HTTP、SNMP、FTP、SMTP、DNS或Telnet协议。
优选的,所述预设关键字库包括至少两个关键字,所述关键字还具有用于描述所述关键字所适用的对象的名称的属性;
所述装置包括解析模块,用于在根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息之前,对所述网络请求消息合集内网络请求消息进行协议解析,得到组成所述网络请求消息的对象,所述对象具有名称和内容;
所述过滤模块40,具体用于:
在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的关键字,作为目标关键字;
在所述网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
优选的,所述处理模块60,具体用于:
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对;
判断是否存在符合正则表达式的对象,若是,判定发生网络攻击。
优选的,所述装置还包括目标表达式确认模块,用于在将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对之前,在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式;
所述处理模块40,具体用于:
将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
优选的,所述装置还包括拦截模块,用于判定发生网络攻击之后,拦截所述对象符合正则表达式的网络请求消息。
优选的,所述装置还包括提示模式,用于判定发生网络攻击之后,对所述对象符合正则表达式的网络请求消息的发起者和响应者发出网络攻击警告。
优选的,所述预设正则库内正则表达式按照主类、子类和规则的方式来组织;所述预设关键字库内关键字按照主类、子类和规则的方式来组织。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过在对网络请求消息合集内网络请求消息进行网络攻击检测前,根据预设关键字库对网络请求消息合集进行过滤,过滤掉安全的网络请求消息,仅保留可能发生网络攻击的嫌疑请求消息,后续对嫌疑请求消息进行网络攻击检测,能够大幅提高网络攻击的检测效率。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种检测网络攻击的方法,其特征在于,包括:
接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字;
对所述嫌疑请求消息进行网络攻击检测。
2.如权利要求1所述的方法,其特征在于,所述预设关键字库包括至少两个关键字,所述关键字还具有用于描述所述关键字所适用的对象的名称的属性;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息之前,所述方法包括:
对所述网络请求消息合集内网络请求消息进行协议解析,得到组成所述网络请求消息的对象,所述对象具有名称和内容;
根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字,具体包括:
在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的关键字,作为目标关键字;
在所述网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
3.如权利要求2所述的方法,其特征在于,所述对所述嫌疑请求消息进行网络攻击检测,具体包括:
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对;
判断是否存在符合正则表达式的对象,若是,判定发生网络攻击。
4.如权利要求3所述的方法,其特征在于,将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对之前,所述方法还包括:
在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式;
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对,具体包括:
将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
5.如权利要求3所述的方法,其特征在于,所述判定发生网络攻击之后,所述方法包括:
拦截所述对象符合正则表达式的网络请求消息。
6.如权利要求3所述的方法,其特征在于,所述判定发生网络攻击之后,所述方法包括:
对所述对象符合正则表达式的网络请求消息的发起者和响应者发出网络攻击警告。
7.一种检测网络攻击的装置,其特征在于,包括:
接收模块,接收网络请求消息合集,所述网络请求消息合集内包括多条网络请求消息;
过滤模块,根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息,所述嫌疑请求消息包括所述预设关键字库内关键字;
处理模块,对所述嫌疑请求消息进行网络攻击检测。
8.如权利要求7所述的装置,其特征在于,所述预设关键字库包括至少两个关键字,所述关键字具有用于描述关键字所适用的对象的名称的属性;
所述装置包括解析模块,用于在根据预设关键字库对所述网络请求消息合集进行过滤,得到嫌疑请求消息之前,对所述网络请求消息合集内网络请求消息进行协议解析,得到组成网络请求消息的对象,所述对象具有名称和内容;
所述过滤模块,具体用于:
在所述预设关键字库内筛选出属性和网络请求消息的对象的名称相同的关键字,作为目标关键字;
在所述网络请求消息库内筛选出对象的数据具有目标关键字的网络请求消息,作为嫌疑请求消息。
9.如权利要求8所述的装置,其特征在于,所述处理模块具体用于:
将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对;
判断是否存在符合正则表达式的对象,若是,判定发生网络攻击。
10.如权利要求9所述的装置,其特征在于,所述装置还包括:
目标表达式确认模块,用于在将所述嫌疑请求信息的对象与预设正则库内正则表达式进行逐一比对之前,在预设正则库内筛选出与所述目标关键字相关联的正则表达式,作为目标表达式;
所述处理模块,具体用于:
将所述嫌疑请求信息的对象与所述目标表达式进行逐一比对。
CN201510981890.3A 2015-12-23 2015-12-23 一种检测网络攻击的方法和装置 Pending CN106911649A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510981890.3A CN106911649A (zh) 2015-12-23 2015-12-23 一种检测网络攻击的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510981890.3A CN106911649A (zh) 2015-12-23 2015-12-23 一种检测网络攻击的方法和装置

Publications (1)

Publication Number Publication Date
CN106911649A true CN106911649A (zh) 2017-06-30

Family

ID=59206071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510981890.3A Pending CN106911649A (zh) 2015-12-23 2015-12-23 一种检测网络攻击的方法和装置

Country Status (1)

Country Link
CN (1) CN106911649A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449308A (zh) * 2018-01-18 2018-08-24 北京奇艺世纪科技有限公司 识别恶意资源访问的方法及装置
TWI681347B (zh) * 2017-12-26 2020-01-01 人因設計所股份有限公司 關鍵字示警系統之方法
CN111125693A (zh) * 2019-12-18 2020-05-08 杭州安恒信息技术股份有限公司 一种设备安全防护方法、装置及设备
CN111131250A (zh) * 2019-12-24 2020-05-08 杭州迪普科技股份有限公司 一种客户端识别方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399710A (zh) * 2007-09-29 2009-04-01 北京启明星辰信息技术有限公司 一种协议格式异常检测方法及系统
CN104519008A (zh) * 2013-09-26 2015-04-15 北大方正集团有限公司 跨站脚本攻击防御方法和装置、应用服务器
CN104899264A (zh) * 2015-05-21 2015-09-09 东软集团股份有限公司 一种多模式正则表达式匹配方法及装置
CN104954346A (zh) * 2014-03-31 2015-09-30 北京奇虎科技有限公司 基于对象分析的攻击识别方法及装置
CN104954345A (zh) * 2014-03-31 2015-09-30 北京奇虎科技有限公司 基于对象分析的攻击识别方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399710A (zh) * 2007-09-29 2009-04-01 北京启明星辰信息技术有限公司 一种协议格式异常检测方法及系统
CN104519008A (zh) * 2013-09-26 2015-04-15 北大方正集团有限公司 跨站脚本攻击防御方法和装置、应用服务器
CN104954346A (zh) * 2014-03-31 2015-09-30 北京奇虎科技有限公司 基于对象分析的攻击识别方法及装置
CN104954345A (zh) * 2014-03-31 2015-09-30 北京奇虎科技有限公司 基于对象分析的攻击识别方法及装置
CN104899264A (zh) * 2015-05-21 2015-09-09 东软集团股份有限公司 一种多模式正则表达式匹配方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI681347B (zh) * 2017-12-26 2020-01-01 人因設計所股份有限公司 關鍵字示警系統之方法
CN108449308A (zh) * 2018-01-18 2018-08-24 北京奇艺世纪科技有限公司 识别恶意资源访问的方法及装置
CN108449308B (zh) * 2018-01-18 2020-11-27 北京奇艺世纪科技有限公司 识别恶意资源访问的方法及装置
CN111125693A (zh) * 2019-12-18 2020-05-08 杭州安恒信息技术股份有限公司 一种设备安全防护方法、装置及设备
CN111131250A (zh) * 2019-12-24 2020-05-08 杭州迪普科技股份有限公司 一种客户端识别方法及装置
CN111131250B (zh) * 2019-12-24 2022-04-26 杭州迪普科技股份有限公司 一种客户端识别方法及装置

Similar Documents

Publication Publication Date Title
US9680856B2 (en) System and methods for scalably identifying and characterizing structural differences between document object models
US10536472B2 (en) Cognitive analysis of security data with signal flow-based graph exploration
US8010689B2 (en) Locational tagging in a capture system
US9094338B2 (en) Attributes of captured objects in a capture system
CN104396220B (zh) 用于安全内容检索的方法和设备
CN103744802B (zh) Sql注入攻击的识别方法及装置
CN112131882A (zh) 一种多源异构网络安全知识图谱构建方法及装置
CN107122221B (zh) 用于正则表达式的编译器
CN104954346B (zh) 基于对象分析的攻击识别方法及装置
US20120180137A1 (en) System and method for data mining and security policy management
CN112347485B (zh) 多引擎获取漏洞并自动化渗透的处理方法
Sikos AI in digital forensics: Ontology engineering for cybercrime investigations
CN104954345B (zh) 基于对象分析的攻击识别方法及装置
CN111177779B (zh) 数据库审计方法、其装置、电子设备及计算机存储介质
CN109074454A (zh) 基于赝象对恶意软件自动分组
CN109768992A (zh) 网页恶意扫描处理方法及装置、终端设备、可读存储介质
CN106911649A (zh) 一种检测网络攻击的方法和装置
CN110362992A (zh) 在基于云端环境中阻挡或侦测计算机攻击的方法和设备
CN113810381B (zh) 一种爬虫检测方法、web应用云防火墙、装置和存储介质
Soleymani et al. A Novel Approach for Detecting DGA‐Based Botnets in DNS Queries Using Machine Learning Techniques
CN113961930A (zh) Sql注入漏洞检测方法、装置及电子设备
US20200167477A1 (en) Security Testing Tool Using Crowd-Sourced Data
Jaeger et al. Normalizing security events with a hierarchical knowledge base
CN111770097A (zh) 一种基于白名单的内容锁防火墙方法及系统
CN106911647A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170630