CN103916389A - 防御HttpFlood攻击的方法及防火墙 - Google Patents

防御HttpFlood攻击的方法及防火墙 Download PDF

Info

Publication number
CN103916389A
CN103916389A CN201410104519.4A CN201410104519A CN103916389A CN 103916389 A CN103916389 A CN 103916389A CN 201410104519 A CN201410104519 A CN 201410104519A CN 103916389 A CN103916389 A CN 103916389A
Authority
CN
China
Prior art keywords
address
list
source
message
page
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.)
Granted
Application number
CN201410104519.4A
Other languages
English (en)
Other versions
CN103916389B (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.)
Opzoon Technology Co Ltd
Original Assignee
Opzoon Technology 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 Opzoon Technology Co Ltd filed Critical Opzoon Technology Co Ltd
Priority to CN201410104519.4A priority Critical patent/CN103916389B/zh
Publication of CN103916389A publication Critical patent/CN103916389A/zh
Application granted granted Critical
Publication of CN103916389B publication Critical patent/CN103916389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种防御HttpFlood攻击的方法,包括如下步骤:防火墙生成并维护挑战列表;防火墙与用户建立TCP连接,并判断接收到的来自用户的get报文的源IP地址是否存在于挑战列表内;如果防火墙接收到的get报文的源IP地址不存在于挑战列表内,则防火墙拦截get报文并根据get报文构建JavaScript重定向页面,以及将get报文的源IP地址、get请求页面地址、生成的JavaScript重定向页面地址作为一个条目加入到挑战列表;防火墙在检测到挑战列表中有条目在预设时长内未进行重定向访问时,将该条目的源IP地址加入黑名单列表以阻止源IP地址的后续流量。本发明还提出一种防御HttpFlood攻击的防火墙。本发明不会导致防火墙的误判,具有较高的判断准确率。

Description

防御HttpFlood攻击的方法及防火墙
技术领域
本发明涉及安全防御技术领域,涉及一种防御HttpFlood攻击的方法及防火墙,特别涉及一种防御HttpFlood攻击的方法和一种防火墙。
背景技术
HttpFlood是针对WEB服务在第七层(应用层)协议发起的攻击,其危害性巨大,主要表现在发起方便、过滤困难和影响深远。HttpFlood的攻击者通过端口扫描程序在互联网上寻找匿名的HTTP代理或者SOCKS代理,攻击者通过匿名代理对攻击目标发起HTTP请求。HttpFlood可以模仿正常用户的网页请求行为,与网站业务紧密相关,不仅直接导致被攻击的WEB前端响应缓慢,还间接攻击到后端的JAVA等业务层逻辑以及更后端的数据库服务,导致增大数据库服务器的压力,甚至对日志存储服务器都带来影响。
目前使用的防御HttpFlood的方法主要包括:针对全局的报文数量进行阈值统计和针对源IP报文数量进行阈值统计的方法,但是这两种方法均存在一定局限性。根据针对源IP报文数量进行阀值统计的方法,当攻击方故意伪造成某源IP地址进行攻击时,会导致防火墙的误识别,从而阻断该源IP地址的用户的正常访问。而针对全局的报文数量进行阈值统计,会导致大量误拦截的现象出现。因此,防御HttpFlood的关键是进行攻击识别和人机识别以区分正常用户和软件攻击方。
发明内容
本发明鉴于上述情况而作出,其目的是提供一种防御HttpFlood攻击的方法,该方法通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户,具有较高的判断准确率。
为实现上述目的,本发明的实施方式提出一种防御HttpFlood攻击的方法,包括如下步骤:
防火墙生成并维护挑战列表,其中,所述挑战列表用于存储待检测安全状态的用户的IP地址;
所述防火墙与用户建立TCP连接,并判断接收到的来自所述用户的get报文的源IP地址是否存在于所述挑战列表内;
如果所述防火墙接收到的所述get报文的源IP地址不存在于所述挑战列表内,则所述防火墙拦截所述get报文并根据所述get报文构建JavaScript重定向页面,以及将所述get报文的源IP地址、get请求页面地址、生成的JavaScript重定向页面地址作为一个条目加入到所述挑战列表;
所述防火墙在检测到所述挑战列表中有条目在预设时长内未进行重定向访问时,将该条目的源IP地址加入黑名单列表以阻止所述源IP地址的后续流量。
根据本发明的一个方面,所述防火墙生成并维护所述挑战列表包括如下步骤:所述防火墙判断接收到的报文的源IP地址是否存在于黑名单列表或白名单列表中,如果均不存在,则将所述源IP地址加入至所述挑战列表,其中,所述白名单列表用于存储正常用户的IP地址,所述黑名单列表用于存储异常用户的IP地址,如果所述源IP地址存在于所述白名单列表中,则所述源IP地址的报文进入所述防火墙后直接进行转发,如果所述源IP地址存在于所述黑名单列表中,则所述源IP地址的报文进入所述防火墙后直接丢弃。
根据本发明的又一个方面,所述挑战列表包括多个条目,每个所述条目包括属于同一用户的源IP地址、get请求地址和JavaScript重定向页面地址。
根据本发明的再一个方面,在所述防火墙拦截所述get报文并根据所述get报文构建JavaScript重定向页面之后,还包括如下步骤:将所述JavaScript重定向页面作为请求页面返回至对应的所述用户。
根据本发明的另一个方面,还包括如下步骤:如果所述防火墙判断接收到的所述get报文的源IP地址存在于所述挑战列表中,则判断get请求页面地址和JavaScript重定向页面地址是否相同,如果相同,则判断所述用户为正常用户,将所述源IP地址加入白名单列表,将所述源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面,所述防火墙在与服务器建立连接后代理转发所述源IP地址的后续流量。
本发明提供的防御HttpFlood攻击的方法通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户。即,防火墙和用户建立三次握手后,防火墙接收到用户发来的get报文时,先代为拦截并根据该get报文构建JavaScript重定向页面,该JavaScript重定向页面重定向到get报文请求页面的域名的IP地址,如果用户为正常用户则可以自动完成重定向。防火墙在确认用户为正常用户后则重新重定向到原访问的地址,并将源IP地址加入白名单列表,转发后续流量,否则将源IP地址加入黑名单列表,阻止后续流量。本发明可以有效地进行攻击识别来判断发送报文的用户是否为攻击方,从而达到防御HttpFlood攻击的目的。这种方式不会导致防火墙的误判,具有较高的判断准确率。
本发明的又一个目的是提供一种防火墙,该设备通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户,具有较高的判断准确率。
为实现上述目的,本发明的实施方式提供一种防火墙,包括:列表管理模块,用于维护和存储挑战列表,其中,所述挑战列表用于存储待检测安全状态的用户的IP地址;通信模块,用于接收来自用户的报文并与所述用户建立TCP连接;判断模块,所述判断模块连接至所述列表管理模块,用于判断接收到的所述用户的get报文的所述源IP地址是否存在于所述挑战列表内;重定向页面构建模块,所述重定向页面构建模块连接至所述判断模块,用于在所述判断模块判断所述get报文的源IP地址不存在于所述挑战列表内时,拦截所述get报文并根据所述get报文构建JavaScript重定向页面;条目添加模块,所述条目添加模块连接至所述重定向页面构建模块,用于将所述get报文的源IP地址、get请求页面地址、生成的JavaScript重定向页面地址作为一个条目加入到所述挑战列表;网络控制模块,所述网络控制模块连接至所述列表管理模块和所述条目添加模块,用于在检测到所述挑战列表中有条目在预设时长内未进行重定向访问时,将所述条目的源IP地址加入黑名单列表以阻止所述源IP地址的后续流量。
根据本发明的一个方面,所述列表管理模块用于判断接收到的报文的源IP地址是否存在于黑名单列表或白名单列表中,如果均不存在,则将所述源IP地址加入至所述挑战列表,其中,所述白名单列表用于存储正常用户的IP地址,所述黑名单列表用于存储异常用户的IP地址,如果所述源IP地址存在于所述白名单列表中,则所述源IP地址的报文进入所述防火墙后直接进行转发,如果所述源IP地址存在于所述黑名单列表中,则所述源IP地址的报文进入所述防火墙后直接丢弃。
根据本发明的另一个方面,所述挑战列表包括多个条目,每个所述条目包括同一用户的源IP地址、get请求地址和JavaScript重定向页面地址。
根据本发明的再一个方面,所述通信模块还用于在所述防火墙拦截所述get报文并根据所述get报文构建JavaScript重定向页面之后,将所述JavaScript重定向页面作为请求页面返回至对应的所述用户。
根据本发明的另一个方面,所述判断模块在检测到接收到的所述get报文的源IP地址存在于所述挑战列表后,进一步判断所述get请求页面地址和JavaScript重定向页面地址是否相同,如果相同,则认为所述用户为正常用户,由所述条目添加模块将所述源IP地址加入白名单列表,所述重定向页面构建模块将所述源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面,并且所述网络控制模块在与服务器建立连接后代理转发所述源IP地址的后续流量。
本发明提供的防火墙通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户。即,防火墙和用户建立三次握手后,防火墙接收到用户发来的get报文时,先代为拦截并根据该get报文构建JavaScript重定向页面,该JavaScript重定向页面重定向到get报文请求页面的域名的IP地址,如果用户为正常用户则可以自动完成重定向。防火墙在确认用户为正常用户后则重新重定向到原访问的地址,并将源IP地址加入白名单列表,转发后续流量,否则将源IP地址加入黑名单列表,阻止后续流量。本发明可以有效地进行攻击识别来判断发送报文的用户是否为攻击方,从而达到防御HttpFlood攻击的目的。这种方式不会导致防火墙的误判,具有较高的判断准确率。
附图说明
图1是根据本发明实施方式的用户、防火墙和服务器的交互示意图;
图2是根据本发明第一实施方式的防御HttpFlood攻击的方法的流程图;
图3是根据本发明第二实施方式的防御HttpFlood攻击的方法的流程图;
图4是根据本发明实施方式的防御HttpFlood攻击的防火墙的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
首先,对本发明的防御HttpFlood攻击的方法的工作原理进行描述。现有的大部分HttpFlood的攻击方都不会维护和处理回复的报文进行JavaScript解析,因为正常地进行JavaScript解析会占用攻击方的系统资源,从而降低攻击效果。但是正常用户的浏览器均可以解析JavaScript。本发明基于此,通过检测用户是否能够解析JavaScript的重定向来进行人机识别,从而区分接收到的报文IP地址是否是攻击方以达到防御HttpFlood的目的。
图1是根据本发明实施方式的用户、防火墙和服务器的交互示意图。
如图1所示,在用户和服务器之间设置有防火墙,用户向服务器发送的报文需要先通过防火墙的验证。
当用户需要访问目标服务器时,需要用户和防火墙建立TCP连接。其中,用户和防火墙建立TCP连接的过程如下:用户首先发起SYN报文,防火墙接收到来自用户的SYN报文后进行拦截,然后向用户发送SYN+ACK报文,之后用户向防火墙返回ACK报文。至此,防火墙和用户进行三次握手,完成建立TCP连接。防火墙在对报文验证通过后,会将报文代理转发至服务器。
图2是根据本发明第一实施方式的防御HttpFlood攻击的方法的流程图。
如图2所示,本发明第一实施方式提供的防御HttpFlood攻击的方法包括如下步骤:
步骤S1,防火墙生成并维护挑战列表。
在开启HttpFlood防御功能后,防火墙自动生成并维护挑战列表。其中,挑战列表用于存储待检测安全状态的用户的IP地址。此外,防火墙中还存储有白名单列表和黑名单列表。白名单列表用于存储正常用户的IP地址,黑名单列表用于存储异常用户的IP地址。
具体来说,防火墙在接收到用户的报文后,解析该报文的源IP地址,并根据该源IP地址先后遍历黑名单列表和白名单列表。即,防火墙首先遍历全局的黑名单列表,判断该源IP地址是否存在于黑名单列表中,如果存在则判断该用户为异常用户,该源IP的报文进入防火墙后直接丢弃,即拦截该源IP的报文以阻止后续的流量,不进入挑战流程。如果源IP地址不存在于黑名单列表中,则进一步判断该源IP地址是否存在于白名单列表中,如果存在则判断该用户为正常用户,则该源IP地址的报文进入防火墙后直接进行转发,即防火墙在与服务器建立连接后代理转发该源IP地址的后续流量至服务器,不进入挑战流程。
如果防火墙判断该源IP地址既不存在于黑名单列表也不存于白名单列表中,则将该源IP地址加入到挑战列表中,进入挑战检测过程。由于挑战列表中的源IP地址对应的用户的安全状态是需要待检测的,挑战检测过程就是为对挑战列表中的每个源IP地址的安全性进行检测,从而确定挑战列表中的每个源IP地址对应的用户为正常用户或异常用户。其中,对于通过安全性进行检测的源IP地址,即挑战成功的源IP地址,将其加入到白名单列表中。对于未通过安全性进行检测的源IP地址,即挑战失败的源IP地址,将其加入到黑名单列表中。
在本发明的实施方式中,挑战列表包括多个条目,每个条目包括属于同一个用户的源IP地址、get请求地址和根据get请求地址生成的JavaScript重定向页面地址。
步骤S2,防火墙与用户建立TCP连接,并判断接收到的来自用户的get报文的IP地址是否存在于挑战列表内。
当用户需要访问目标服务器时,需要用户和防火墙建立TCP连接。防火墙接收到来自用户的SYN报文后进行拦截,然后向用户发送SYN+ACK报文,之后用户向防火墙返回ACK报文。至此,防火墙和用户进行三次握手,完成建立TCP连接。
步骤S3,如果防火墙接收到的get报文的源IP地址不存在于挑战列表内,则防火墙拦截上述get报文,并根据get报文构建JavaScript重定向页面,以及将get报文的源IP地址、get请求页面地址和生成的JavaScript重定向页面的地址作为一个条目加入到挑战列表中。
用户向服务器发送get报文请求,防火墙在接收到get报文后,解析得到该get报文的源IP地址。根据上述报文的源IP地址遍历挑战列表,如果源IP地址不存在于挑战列表中,则防火墙代为拦截该get报文,并根据get请求的报文构建JavaScript重定向页面,将该JavaScript重定向页面作为请求页面返回至对应的用户。然后,防火墙将此源IP地址、get请求页面地址、生成的重定向地址作为一个元素条目加入到防火墙的挑战列表当中。
步骤S4,防火墙在检测到挑战列表中有条目在预设时长内未进行重定向访问时,将该条目的源IP地址加入到黑名单列表中,用以阻止源IP地址的后续流量。
具体来说,防火墙对挑战列表中的每个条目进行记时,如果某个条目超过预设时长没有进行重定向访问,则认为该条目对应的用户是非正常用户,将该条目的源IP地址加入全局黑名单列表,达到阻止该IP地址后续流量的目的。
图3是根据本发明第二实施方式的防御HttpFlood攻击的方法的流程图。
图3中与图2中相同的步骤均采用相同的附图标记表示,对于不涉及本发明改进点的已有步骤,将简单介绍或者不介绍,而重点介绍相对于现有技术作出改进的组成步骤。
如图3所示,步骤S2中,在判断接收到的所述get报文的源IP地址存在于所述挑战列表之后,执行步骤S5和步骤S6。
步骤S5,如果防火墙接收到的get报文的源IP地址存在于挑战列表内,则判断get请求页面地址和JavaScript重定向页面地址是否相同,如果相同,则判断用户为正常用户,将源IP地址加入白名单列表。
如果该用户的发送的get报文源IP地址在列表当中,则比较其get请求页面的地址和随机生成的跳转地址是否相同,如果相同,则认为该用户可以解析JavaScript,是正常用户,将源IP地址加入白名单列表。
步骤S6,将该源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面。
具体来说,在将源IP地址加入到白名单列表后,由于重定向的页面是不存在的,重定向页面仅用于挑战测试中,所以在将源IP地址加入到白名单列表后,需要将该源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面。换言之,重定向回该源IP地址真实访问的地址,即步骤S3中加入挑战列表时的get报文的源IP地址。该源IP地址重定向时进入白名单列表执行流程,执行步骤S7,而不进入挑战流程。
步骤S7,防火墙在与服务器建立连接后代理转发源IP地址的后续流量。
防火墙与服务器建立三次握手,代理转发后续所有流量。其中,防火墙和服务器建立三次握手的过程可以参考用户和防火墙建立三次握手的过程。
根据本发明的防御HttpFlood攻击的方法,通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户。即,防火墙和用户建立三次握手后,防火墙接收到用户发来的get报文时先代为拦截并根据该get报文构建JavaScript重定向页面,该JavaScript重定向页面重定向到get报文请求页面的域名的IP地址,如果用户为正常用户则可以自动完成重定向。防火墙在确认用户为正常用户后则重新重定向到原访问的地址,并将源IP地址加入白名单列表,转发后续流量,否则将源IP地址加入黑名单列表,阻止后续流量。本发明可以有效地进行攻击识别来判断发送报文的用户是否为攻击方,从而达到防御HttpFlood攻击的目的。这种方式不会导致防火墙的误判,具有较高的判断准确率。
图4是根据本发明实施方式的防御HttpFlood攻击的防火墙的示意图。
如图4所示,本发明实施方式的防御HttpFlood攻击的防火墙包括:列表管理模块1、通信模块2、判断模块3、重定向页面构建模块4、条目添加模块5和网络控制模块6。
具体来说,列表管理模块1用于维护和存储挑战列表。其中,挑战列表用于存储待检测安全状态的用户的IP地址。此外,在列表管理模块1中还存储有白名单列表和黑名单列表。白名单列表用于存储正常用户的IP地址,黑名单列表用于存储异常用户的IP地址。
通信模块2用于接收来自用户的报文并与用户建立TCP连接。当用户需要访问目标服务器时,首先发起SYN报文和服务器建立三次握手。参考图2所示,在用户和服务器之间设置有防火墙,用户向服务器发送的报文需要先通过防火墙的验证。防火墙在对报文验证通过后,会将报文代理转发至服务器。由此可知,当用户需要访问目标服务器时,需要用户和防火墙建立TCP连接。即,防火墙的通信模块2接收到来自用户的SYN报文后进行拦截,然后向用户发送SYN+ACK报文,之后用户向防火墙返回ACK报文。至此,防火墙和用户进行三次握手,完成建立TCP连接。
通信模块2在接收到用户的报文后,解析该报文的源IP地址。列表管理模块1根据该源IP地址先后遍历黑名单列表和白名单列表。即,列表管理模块1首先遍历全局的黑名单列表判断该源IP地址是否存在于黑名单列表中,如果存在则判断该用户为异常用户。如果源IP地址不存在于黑名单列表中,则列表管理模块1进一步判断该源IP地址是否存在于白名单列表中,如果存在则判断该用户为正常用户。如果列表管理模块1判断该源IP地址既不存在与黑名单列表也不存于白名单列表中,则将该源IP地址加入到挑战列表中,进入挑战检测过程。由于挑战列表中的源IP地址对应的用户的安全状态是需要待检测的,挑战检测过程就是为对挑战列表中的每个源IP地址的安全性进行检测,从而确定挑战列表中的每个源IP地址对应的用户为正常用户或异常用户。其中,对于通过安全性进行检测的源IP地址,即挑战成功的源IP地址,将其加入到白名单列表中。对于未通过安全性进行检测的源IP地址,即挑战失败的源IP地址,将其加入到黑名单列表中。
在本发明的实施方式中,挑战列表包括多个条目,每个条目包括属于同一个用户的源IP地址、get请求地址和根据get请求地址生成的JavaScript重定向页面地址。
判断模块3连接至列表管理模块1,用于判断接收到的用户的get报文的源IP地址是否存在于挑战列表内。
重定向页面构建模块4连接至判断模块3,用于在判断模块3判断get报文的源IP地址不存在于挑战列表内时,拦截get报文并根据get报文构建JavaScript重定向页面。
在本发明的实施方式中,通信模块2还用于在重定向页面构建模块4拦截上述get报文并根据get报文构建JavaScript重定向页面之后,将上述JavaScript重定向页面作为请求页面返回对应的用户。
条目添加模块5连接至列表管理模块1和重定向页面构建模块4,用于将get报文的源IP地址、get请求页面地址和生成的JavaScript重定向页面地址作为一个条目加入到挑战列表中。
网络控制模块6连接至列表管理模块1和条目添加模块5,用于在检测到挑战列表中有条目在预设时长内未进行重定向访问时,将条目的源IP地址加入黑名单列表以阻止源IP地址的后续流量。
具体来说,网络控制模块6对挑战列表中的每个条目进行记时,如果某个条目超过预设时长没有进行重定向访问,则认为该条目对应的用户是非正常用户,则将该条目的源IP地址加入全局黑名单列表,达到阻止该IP地址后续流量的目的。
在本发明的实施方式中,判断模块3在检测到接收到的get报文的源IP地址存在于挑战列表后,进一步判断所述get请求页面地址和JavaScript重定向页面地址是否相同,如果相同,则认为该用户可以解析JavaScript,是正常用户,由条目添加模块5将源IP地址加入白名单列表。在将该源IP地址加入到白名单列表后,重定向页面构建模块4将该源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面,换言之重定向页面构建模块4重新构建重定向页面到其挑战列表中最开始get请求的地址,即第一次加入挑战列表时的get报文的源IP地址,该源IP地址重定向时进入白名单列表执行流程,而不进入挑战流程。
具体来说,该源IP地址重定向时进入白名单列表执行流程如下:由通信模块2与服务器建立三次握手。在建立连接后,网络控制模块6代理转发源IP地址的后续流量。其中,通信模块2和服务器建立三次握手的过程可以参考用户和通信模块2建立三次握手的过程。
根据本发明的防御HttpFlood攻击的防火墙,通过检测用户是否能够解析JavaScript的重定向来判断用户是否为正常用户。即,防火墙和用户建立三次握手后,防火墙接收到用户发来的get报文时,先代为拦截并根据该get报文构建JavaScript重定向页面,该JavaScript重定向页面重定向到get报文请求页面的域名的IP地址,如果用户为正常用户则可以自动完成重定向。防火墙在确认用户为正常用户后则重新重定向到原访问的地址,并将源IP地址加入白名单列表,转发后续流量,否则将源IP地址加入黑名单列表,阻止后续流量。本发明可以有效地进行攻击识别来判断发送报文的用户是否为攻击方,从而达到防御HttpFlood攻击的目的。这种方式不会导致防火墙的误判,具有较高的判断准确率。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (10)

1.一种防御HttpFlood攻击的方法,包括如下步骤:
防火墙生成并维护挑战列表,其中,所述挑战列表用于存储待检测安全状态的用户的IP地址;
所述防火墙与用户建立TCP连接,并判断接收到的来自所述用户的get报文的IP地址是否存在于所述挑战列表内;
如果所述防火墙接收到的所述get报文的源IP地址不存在于所述挑战列表内,则所述防火墙拦截所述get报文并根据所述get报文构建JavaScript重定向页面,以及将所述get报文的源IP地址、get请求页面地址、生成的JavaScript重定向页面地址作为一个条目加入到所述挑战列表;
所述防火墙在检测到所述挑战列表中有条目在预设时长内未进行重定向访问时,将该条目的源IP地址加入黑名单列表以阻止所述源IP地址的后续流量。
2.根据权利要求1所述的防御HttpFlood攻击的方法,其特征在于,所述防火墙生成并维护所述挑战列表包括如下步骤:
所述防火墙判断接收到的报文的源IP地址是否存在于黑名单列表或白名单列表中;
如果均不存在,则将所述源IP地址加入至所述挑战列表;
如果所述源IP地址存在于所述白名单列表中,则所述源IP地址的报文进入所述防火墙后直接进行转发;
如果所述源IP地址存在于所述黑名单列表中,则所述源IP地址的报文进入所述防火墙后直接丢弃;
其中,所述白名单列表用于存储正常用户的IP地址,所述黑名单列表用于存储异常用户的IP地址。
3.根据权利要求1或2所述的防御HttpFlood攻击的方法,其特征在于,所述挑战列表包括多个条目,每个所述条目包括属于同一用户的源IP地址、get请求地址和JavaScript重定向页面地址。
4.根据权利要求1所述的防御HttpFlood攻击的方法,其特征在于,在所述防火墙拦截所述get报文并根据所述get报文构建JavaScript重定向页面之后,还包括如下步骤:将所述JavaScript重定向页面作为请求页面返回至对应的所述用户。
5.根据权利要求1所述的防御HttpFlood攻击的方法,其特征在于,还包括如下步骤:
如果所述防火墙判断接收到的所述get报文的源IP地址存在于所述挑战列表中,则判断get请求页面地址和JavaScript重定向页面地址是否相同;
如果相同,则判断所述用户为正常用户,将所述源IP地址加入白名单列表,将所述源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面,所述防火墙在与服务器建立连接后代理转发所述源IP地址的后续流量。
6.一种防御HttpFlood攻击的防火墙,包括:
列表管理模块,用于维护和存储挑战列表,其中,所述挑战列表用于存储待检测安全状态的用户的IP地址;
通信模块,用于接收来自用户的报文并与所述用户建立TCP连接;
判断模块,所述判断模块连接至所述列表管理模块,用于判断接收到的所述用户的get报文的源IP地址是否存在于所述挑战列表内;
重定向页面构建模块,所述重定向页面构建模块连接至所述判断模块,用于在所述判断模块判断所述get报文的源IP地址不存在于所述挑战列表内时,拦截所述get报文并根据所述get报文构建JavaScript重定向页面;
条目添加模块,所述条目添加模块连接至所述列表管理模块和所述重定向页面构建模块,用于将所述get报文的源IP地址、get请求页面地址、生成的JavaScript重定向页面地址作为一个条目加入到所述挑战列表;
网络控制模块,所述网络控制模块连接至所述列表管理模块和所述条目添加模块,用于在检测到所述挑战列表中有条目在预设时长内未进行重定向访问时,将所述条目的源IP地址加入黑名单列表以阻止所述源IP地址的后续流量。
7.根据权利要求6所述的防火墙,其特征在于,所述列表管理模块用于判断接收到的报文的源IP地址是否存在于所述黑名单列表或白名单列表中;
如果均不存在,则将所述源IP地址加入至所述挑战列表;
如果所述源IP地址存在于所述白名单列表中,则所述源IP地址的报文进入所述防火墙后直接进行转发;
如果所述源IP地址存在于所述黑名单列表中,则所述源IP地址的报文进入所述防火墙后直接丢弃;
其中,所述白名单列表用于存储正常用户的IP地址,所述黑名单列表用于存储异常用户的IP地址。
8.根据权利要求6所述的防火墙,其特征在于,所述挑战列表包括多个条目,每个所述条目包括同一用户的源IP地址、get请求地址和JavaScript重定向页面地址。
9.根据权利要求6所述的防火墙,其特征在于,所述通信模块还用于在拦截所述get报文并根据所述get报文构建JavaScript重定向页面之后,将所述JavaScript重定向页面作为请求页面返回至对应的所述用户。
10.根据权利要求6所述的防火墙,其特征在于,所述判断模块在检测到接收到的所述get报文的源IP地址存在于所述挑战列表后,进一步判断所述get请求页面地址和JavaScript重定向页面地址是否相同,如果相同,则认为所述用户为正常用户,由所述条目添加模块将所述源IP地址加入白名单列表,所述重定向页面构建模块将所述源IP地址的get报文再次重定向回第一次加入挑战列表时的get请求页面,并且所述网络控制模块在与服务器建立连接后代理转发所述源IP地址的后续流量。
CN201410104519.4A 2014-03-19 2014-03-19 防御HttpFlood攻击的方法及防火墙 Active CN103916389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410104519.4A CN103916389B (zh) 2014-03-19 2014-03-19 防御HttpFlood攻击的方法及防火墙

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410104519.4A CN103916389B (zh) 2014-03-19 2014-03-19 防御HttpFlood攻击的方法及防火墙

Publications (2)

Publication Number Publication Date
CN103916389A true CN103916389A (zh) 2014-07-09
CN103916389B CN103916389B (zh) 2017-08-08

Family

ID=51041796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410104519.4A Active CN103916389B (zh) 2014-03-19 2014-03-19 防御HttpFlood攻击的方法及防火墙

Country Status (1)

Country Link
CN (1) CN103916389B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104113559A (zh) * 2014-08-13 2014-10-22 浪潮电子信息产业股份有限公司 一种防御tcp全链接攻击的方法
WO2016008212A1 (zh) * 2014-07-15 2016-01-21 中兴通讯股份有限公司 一种终端及检测终端数据交互的安全性的方法、存储介质
CN105635067A (zh) * 2014-11-04 2016-06-01 华为技术有限公司 报文发送方法及装置
CN106230785A (zh) * 2016-07-20 2016-12-14 南京铱迅信息技术股份有限公司 一种无私钥的https拒绝服务攻击的防御方法
CN106453419A (zh) * 2016-12-07 2017-02-22 东软集团股份有限公司 识别源ip地址合法性、网络攻击防御的方法及装置
CN107104981A (zh) * 2017-05-26 2017-08-29 北京天地和兴科技有限公司 一种基于主动防御机制的内容审计系统及其内容审计方法
CN107360182A (zh) * 2017-08-04 2017-11-17 南京翼辉信息技术有限公司 一种用于嵌入式的主动网络防御系统及其防御方法
CN107454039A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 网络攻击检测系统和检测网络攻击的方法
CN108268774A (zh) * 2017-01-04 2018-07-10 阿里巴巴集团控股有限公司 攻击请求的判定方法和装置
CN108400955A (zh) * 2017-02-06 2018-08-14 腾讯科技(深圳)有限公司 一种网络攻击的防护方法及系统
CN108551446A (zh) * 2018-04-08 2018-09-18 东软集团股份有限公司 防攻击的syn报文处理方法、装置、防火墙及存储介质
CN109905361A (zh) * 2019-01-08 2019-06-18 深圳大学 物联网DDoS攻击防御方法、装置、系统及存储介质
CN109962918A (zh) * 2019-03-28 2019-07-02 烽火通信科技股份有限公司 一种防御攻击报文的方法、系统及设备
CN110535730A (zh) * 2019-09-23 2019-12-03 杭州迪普科技股份有限公司 网络设备的ip认证功能测试方法和装置
CN110677424A (zh) * 2019-09-30 2020-01-10 华南理工大学广州学院 基于哈希算法的电力防火墙伪造寻址过滤方法
CN111478888A (zh) * 2020-03-24 2020-07-31 武汉思普崚技术有限公司 一种旁路阻断方法、设备及存储介质
CN112511516A (zh) * 2020-11-20 2021-03-16 杭州迪普科技股份有限公司 一种防护攻击的方法及装置
CN114465742A (zh) * 2020-11-10 2022-05-10 华为技术有限公司 网络安全防护方法以及防护设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050028010A1 (en) * 2003-07-29 2005-02-03 International Business Machines Corporation System and method for addressing denial of service virus attacks
CN101478387A (zh) * 2008-12-31 2009-07-08 成都市华为赛门铁克科技有限公司 超文本传输协议攻击防御方法、装置和系统
CN102316082A (zh) * 2010-07-06 2012-01-11 杭州华三通信技术有限公司 一种防御网站DDoS攻击的方法和流量清洗设备
CN102413105A (zh) * 2010-09-25 2012-04-11 杭州华三通信技术有限公司 防范cc攻击的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050028010A1 (en) * 2003-07-29 2005-02-03 International Business Machines Corporation System and method for addressing denial of service virus attacks
CN101478387A (zh) * 2008-12-31 2009-07-08 成都市华为赛门铁克科技有限公司 超文本传输协议攻击防御方法、装置和系统
CN102316082A (zh) * 2010-07-06 2012-01-11 杭州华三通信技术有限公司 一种防御网站DDoS攻击的方法和流量清洗设备
CN102413105A (zh) * 2010-09-25 2012-04-11 杭州华三通信技术有限公司 防范cc攻击的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
侯建岑: ""基于HTTP-FLOOD攻击的网络入侵检测防御技术研究与实现"", 《中国优秀硕士学位论文全文数据库》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016008212A1 (zh) * 2014-07-15 2016-01-21 中兴通讯股份有限公司 一种终端及检测终端数据交互的安全性的方法、存储介质
CN104113559A (zh) * 2014-08-13 2014-10-22 浪潮电子信息产业股份有限公司 一种防御tcp全链接攻击的方法
CN105635067B (zh) * 2014-11-04 2019-11-15 华为技术有限公司 报文发送方法及装置
CN105635067A (zh) * 2014-11-04 2016-06-01 华为技术有限公司 报文发送方法及装置
US10791127B2 (en) 2014-11-04 2020-09-29 Huawei Technologies Co., Ltd. Packet transmission method and apparatus
CN107454039A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 网络攻击检测系统和检测网络攻击的方法
CN107454039B (zh) * 2016-05-31 2020-05-01 北京京东尚科信息技术有限公司 网络攻击检测系统、方法和计算机可读存储介质
CN106230785A (zh) * 2016-07-20 2016-12-14 南京铱迅信息技术股份有限公司 一种无私钥的https拒绝服务攻击的防御方法
CN106453419A (zh) * 2016-12-07 2017-02-22 东软集团股份有限公司 识别源ip地址合法性、网络攻击防御的方法及装置
CN108268774B (zh) * 2017-01-04 2021-07-23 阿里巴巴集团控股有限公司 攻击请求的判定方法和装置
CN108268774A (zh) * 2017-01-04 2018-07-10 阿里巴巴集团控股有限公司 攻击请求的判定方法和装置
CN108400955B (zh) * 2017-02-06 2020-12-22 腾讯科技(深圳)有限公司 一种网络攻击的防护方法及系统
CN108400955A (zh) * 2017-02-06 2018-08-14 腾讯科技(深圳)有限公司 一种网络攻击的防护方法及系统
CN107104981A (zh) * 2017-05-26 2017-08-29 北京天地和兴科技有限公司 一种基于主动防御机制的内容审计系统及其内容审计方法
CN107104981B (zh) * 2017-05-26 2021-01-01 北京天地和兴科技有限公司 一种基于主动防御机制的内容审计系统及其内容审计方法
CN107360182A (zh) * 2017-08-04 2017-11-17 南京翼辉信息技术有限公司 一种用于嵌入式的主动网络防御系统及其防御方法
CN107360182B (zh) * 2017-08-04 2020-05-01 南京翼辉信息技术有限公司 一种用于嵌入式的主动网络防御系统及其防御方法
CN108551446B (zh) * 2018-04-08 2020-11-27 东软集团股份有限公司 防攻击的syn报文处理方法、装置、防火墙及存储介质
CN108551446A (zh) * 2018-04-08 2018-09-18 东软集团股份有限公司 防攻击的syn报文处理方法、装置、防火墙及存储介质
CN109905361A (zh) * 2019-01-08 2019-06-18 深圳大学 物联网DDoS攻击防御方法、装置、系统及存储介质
CN109962918A (zh) * 2019-03-28 2019-07-02 烽火通信科技股份有限公司 一种防御攻击报文的方法、系统及设备
CN109962918B (zh) * 2019-03-28 2021-11-30 烽火通信科技股份有限公司 一种防御攻击报文的方法、系统及设备
CN110535730B (zh) * 2019-09-23 2020-12-29 杭州迪普科技股份有限公司 网络设备的ip认证功能测试方法和装置
CN110535730A (zh) * 2019-09-23 2019-12-03 杭州迪普科技股份有限公司 网络设备的ip认证功能测试方法和装置
CN110677424A (zh) * 2019-09-30 2020-01-10 华南理工大学广州学院 基于哈希算法的电力防火墙伪造寻址过滤方法
CN111478888A (zh) * 2020-03-24 2020-07-31 武汉思普崚技术有限公司 一种旁路阻断方法、设备及存储介质
CN114465742A (zh) * 2020-11-10 2022-05-10 华为技术有限公司 网络安全防护方法以及防护设备
CN112511516A (zh) * 2020-11-20 2021-03-16 杭州迪普科技股份有限公司 一种防护攻击的方法及装置
CN112511516B (zh) * 2020-11-20 2022-07-01 杭州迪普科技股份有限公司 一种防护攻击的方法及装置

Also Published As

Publication number Publication date
CN103916389B (zh) 2017-08-08

Similar Documents

Publication Publication Date Title
CN103916389A (zh) 防御HttpFlood攻击的方法及防火墙
EP2779574B1 (en) Attack detection and prevention using global device fingerprinting
CN101478387B (zh) 超文本传输协议攻击防御方法、装置和系统
CN103067385B (zh) 防御会话劫持攻击的方法和防火墙
US9215242B2 (en) Methods and systems for preventing unauthorized acquisition of user information
JP5970041B2 (ja) イベント分析に基づくサイバー攻撃探知装置及び方法
CN101789947B (zh) 防范http post泛洪攻击的方法及防火墙
EP3092749B1 (en) Method and apparatus of identifying proxy ip address
CN103347016A (zh) 一种攻击的防御方法
CN107645478B (zh) 网络攻击防御系统、方法及装置
CN104811449A (zh) 检测撞库攻击方法及系统
CN105429953B (zh) 一种用于访问网站的方法、装置和系统
Ghafir et al. DNS traffic analysis for malicious domains detection
Rajkumar A survey on latest DoS attacks: classification and defense mechanisms
CN104168339A (zh) 防止域名劫持的方法及设备
CN103139138A (zh) 一种基于客户端检测的应用层拒绝服务防护方法及系统
CN106487807A (zh) 一种域名解析的防护方法和装置
CN106209907B (zh) 一种检测恶意攻击的方法及装置
CN110266650A (zh) Conpot工控蜜罐的识别方法
CN104378255A (zh) web恶意用户的检测方法及装置
Hudaib et al. DNS advanced attacks and analysis
US9385993B1 (en) Media for detecting common suspicious activity occurring on a computer network using firewall data and reports from a network filter device
CN106789882A (zh) 一种域名请求攻击的防御方法及系统
Borgwart et al. Detection and forensics of domains hijacking
Etemad et al. Real-time botnet command and control characterization at the host level

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right

Effective date of registration: 20180528

Granted publication date: 20170808

PP01 Preservation of patent right