一种基于内容分发网络的攻击防御方法
文献发布时间:2023-06-19 11:35:49
技术领域
本发明涉及网络安全领域,具体涉及一种基于内容分发网络的攻击防御方法。
背景技术
CDN(Content Delivery Network),即内容分发网络。通过该平台,可以将源站内容快而稳定地分发至最接近用户的节点,提高访问的响应速度、成功率,解决因地域分布、服务器性能、带宽问题等带来的访问延迟。CDN可以对外隐藏用户源站真实位置,但常规的CDN网络没有防御大流量攻击能力,且常常面临无法定位攻击、攻击节点只能停用该节点等问题,影响平台稳定性。
DDoS(Distributed Denial Of Service Attack),即分布式拒绝服务攻击,是一种分布式协同的大规模攻击方式,攻击者利用大量代理服务器,向目标主机发送大量经过伪造的服务请求数据包,耗费对方大量系统资源,导致目标主机无法对外正常提供服务。主要攻击对象是网站服务器,是Web网络层拒绝服务攻击。
CC攻击(Challenge Collapsar Attack),即上述DDoS攻击的一种类型,攻击者通过控制某些代理主机持续发送大量经过伪造的服务请求数据包,耗费对方大量系统资源从而导致系统崩溃。主要针对网站页面,是Web应用层拒绝服务攻击。
针对DDoS和CC攻击,高防IP是目前一种较为有效的防御系统,所有公网流量都将流经高防机房,攻击流量将在高防IP上清洗过滤,而正常访问流量将通过端口协议转发的方式返回至源站IP。但由于高防资源成本较高,且几乎没有任何内容加速效果,访问延迟和不稳定性问题较大。所以,基于内容加速的安全防护系统的研究,在当前有着较为重要的意义。
发明内容
本发明提供了一种基于内容分发网络的攻击防御方法,能够解决CDN网络面临攻击资源消耗过高甚至大规模瘫痪的问题,能够解决普通高防系统时延过大和网络拥塞的问题。
一种基于内容分发网络的攻击防御方法,包括以下步骤:
1)在内容分发网络设置n个边缘节点;
2)根据链路的个数确定高防组数,建立高防集群,每个高防组包括n个高防IP;
3)域名解析到内容分发网络后,在内容分发网络的每个边缘节点和链路设置请求数(QPS)和带宽的阈值,当某个边缘节点的请求数、流量至少一个超过阈值,则进行异常处理;
4)切入高防集群后分别对高防集群的每个高防IP进行请求数、流量监测,同时对内容分发网络中受到影响的边缘节点、链路、IP进行请求数、流量监测;
步骤1)中,每个边缘节点包括m个IP,m是根据客户数量和类型设定,m个IP对应m个链路。
步骤2)中,所述的高防是指单个防御50G以上的高防服务器。
步骤3)中,所述的异常处理具体包括:
当某个边缘节点的请求数、流量至少一个超过阈值,则使用相同IP数的备用节点替换该边缘节点,并持续监测备用节点的请求数、流量,如果备用节点的请求数仍超过阈值,则域名解析切入高防集群,如果备用节点的请求数不超过阈值,则将该备用节点及其IP正式替代原边缘节点及其IP,将原边缘节点进行黑洞封禁处理,之后转为备用资源;
当某个IP的请求数、流量至少一个超过阈值,则使用备用链路整体替换该IP所在的链路,并持续监测备用链路的请求数、流量,如果备用链路的请求数仍超过阈值,则域名解析切入高防集群,如果备用链路的请求数不超过阈值,则将该备用链路及其IP正式替代,将原IP所在的链路进行黑洞封禁处理,之后转为备用资源;
当某条链路的请求数、流量至少一个超过阈值,则使用备用链路整体替换该链路,并持续监测备用链路的请求数、流量,如果备用链路的请求数仍超过阈值,则域名解析切入高防集群,如果备用链路的请求数不超过阈值,则将该备用链路及其IP正式替代,将原链路进行黑洞封禁处理,之后转为备用资源;
步骤3)中,域名解析切入高防集群,具体包括:
一条链路对应一个高防组,同链路的域名解析切到同一高防组的IP,在内容分发网络中解析用到一个IP的多个域名,也在高防集群解析至一个高防IP。
步骤4)中,当高防IP的请求数和流量低于阈值,且受到影响的边缘节点、链路和IP的请求数、流量低于阈值,将高防IP上的解析切回到内容分发网络攻击发生之前该解析所在的链路上,当高防IP的请求数和流量低于阈值且受到影响的边缘节点、链路和IP的请求数、流量高于等于阈值,将高防IP上的解析切回到内容分发网络中备用链路上;
当高防IP的请求数和流量高于等于阈值,则解析保持在当前高防IP,进行攻击流量清洗。
一种基于内容分发网络的攻击防御方法,包括以下步骤:
1)接入业务至CDN集群,同时在清洗中心为其分配高防IP。
2)CDN集群的每个边缘节点部署检测和清洗设备,流量先经过检测清洗,再通过CDN系统进行回源,在到达源站前,先经过云WAF节点过滤针对应用层的攻击,最后流量到达客户源站。
3)业务解析至CDN集群期间,在第一次被访问后,源站将数据缓存至相应边缘节点,之后的用户通过访问CDN集群中距离自己最近的边缘节缓存来获取源站数据,从而实现CDN集群对内容的加速。
4)当边缘节点检测到攻击时,将对应业务及受攻击影响的同链路其他业务解析自动分别切至对应的高防IP进行清洗过滤,此时边缘节点持续检测攻击情况。
5)待边缘节点、高防IP上流量、请求数均恢复至正常范围,攻击停止后,再将解析自动切换回到CDN集群对应边缘节点。
根据接入CDN集群,将域名根据业务类型分组,形成多条链路,大规模DDoS攻击发生时,同链路业务一同调度至专用清洗节点。
根据在清洗中心为域名分配高防IP,将专用清洗节点的高防IP根据业务类型分组,每组IP数量和CDN单链路接入的域名数量一致。
CDN边缘节点检测攻击后,将对应业务及受攻击影响的同链路其他业务解析调度至高防IP,其特征在于,需要根据攻击范围及特征来确定具体调度方法,如攻击若仅影响到单一节点或IP,则先调度至备用节点或备用链路再观察。如此时攻击持续影响备用资源上的域名,再根据业务类型和高防IP分组规则,将受影响链路的域名解析调度至对应的高防IP进行清洗。
攻击停止后,再将解析自动切换回到CDN集群对应边缘节点,其特征在于,如高防IP、原CDN链路及节点攻击均已停止,数据恢复正常,可自动调度回原链路、边缘节点;如高防IP数据回落至正常范围,攻击停止,而原链路或边缘节点攻击仍在持续,则将高防IP上的域名调度至备用资源,直至原链路恢复正常。
一种基于智能调度和内容分发网络的安全防攻击系统(SCDN),包含以下内容:
1)CDN节点主要提供加速能力和数据监测能力。将边缘CDN节点IP分组形成多条链路,根据用户业务类型在每条链路配置多套不同的防护默认规则,将同类客户置于相同链路,共用默认防护规则。用户业务解析在CDN集群上时,可以保证加速、缓存、访问控制等CDN功能正常使用。
2)专用清洗节点提供主要攻击防御能力,提供高防IP,对其进行分组,根据用户业务类型(同上)、用户业务规模配置不同的防护默认规则。
3)CDN边缘节点日常实时监测流量、带宽、请求等数据,也配置小规模本地清洗防护能力。
4)CDN边缘节点根据监测情况,触发防御机制,根据各域名、链路及各节点表现判断被攻击范围。
5)如被攻击对象为某一节点或IP,则替换备用节点及IP组(即新链路)。
6)如某链路的流量、请求等数据异常,超过默认防护规则设定阈值,则将其链路用户域名解析全部由边缘节点自动调度至距离源站最近的大规模专用清洗节点,并将用户按类型解析至对应一个分组的不同高防IP上,分别检测、清洗、过滤,同时对原CDN集群链路持续监测。
7)待专用清洗节点及原CDN集群链路数据回落至正常范围,则将用户解析自动调度恢复至原链路。
8)如专用清洗节点清洗结束时,原CDN集群链路的数据仍未恢复正常,则先将用户解析自动调度至CDN集群的备用链路,待数据正常后自动恢复解析至原链路。
与现有技术相比,本发明具有如下优点:
本发明可以实现在无攻击情况下完整提供内容加速能力和实时监测,在小规模攻击时迅速触发防御机制,在无需手动切换解析的情况下同时进行CDN加速和清洗防护。
面临大规模攻击时,本发明可以及时筛选出被攻击对象或范围,自动将其与正常业务隔离并调度至专用清洗中心进行有效防御,在攻击结束第一时间自动恢复正常CDN集群。
附图说明
图1为本发明基于内容分发网络进行安全防护的方法的流程图。
图2为本发明CDN集群节点示意图,图中集群有n个节点,每个节点有m个IP。
图3为本发明CDN集群链路示意图,其IP与图2中IP编号对应。即图2中每个节点取一个IP,构成一条链路,每个节点有m个IP,即可构成m条链路。
图4为本发明专用清洗集群的高防IP分组示意图,其IP与图3中IP一一对应。攻击发生时,同链路IP的域名解析切到同一组高防IP,原先解析至相同IP的多个域名,此时也解析至同一高防IP。
图5为本发明内容分发网络的安全防攻击系统(SCDN)示意图。
具体实施方式
如图1~4所示,一种基于内容分发网络的攻击防御方法,包括以下步骤:
1)在内容分发网络设置n个边缘节点;
每个边缘节点包括m个IP,m是根据客户数量和类型设定,m个IP对应m个链路;
2)根据链路的个数确定高防组数,建立高防集群,每个高防组包括n个高防IP;
所述的高防是指单个防御50G以上。
3)域名解析到内容分发网络后,在内容分发网络的每个边缘节点和链路设置请求数QPS和带宽的阈值,当某个边缘节点的请求数、流量至少一个超过阈值,则进行异常处理;
所述的异常处理具体包括:
当某个边缘节点的请求数、流量至少一个超过阈值,则使用相同IP数的备用节点替换该边缘节点,并持续监测备用节点的请求数、流量,如果备用节点的请求数仍超过阈值,则域名解析切入高防集群,如果备用节点的请求数不超过阈值,则将该备用节点及其IP正式替代原边缘节点及其IP,将原边缘节点进行黑洞封禁处理,之后转为备用资源;
当某个IP的请求数、流量至少一个超过阈值,则使用备用链路整体替换该IP所在的链路,并持续监测备用链路的请求数、流量,如果备用链路的请求数仍超过阈值,则域名解析切入高防集群,如果备用链路的请求数不超过阈值,则将该备用链路及其IP正式替代,将原IP所在的链路进行黑洞封禁处理,之后转为备用资源;
当某条链路的请求数、流量至少一个超过阈值,则使用备用链路整体替换该链路,并持续监测备用链路的请求数、流量,如果备用链路的请求数仍超过阈值,则域名解析切入高防集群,如果备用链路的请求数不超过阈值,则将该备用链路及其IP正式替代,将原链路进行黑洞封禁处理,之后转为备用资源;
域名解析切入高防集群,具体包括:
一条链路对应一个高防组,同链路的域名解析切到同一高防组的IP,在内容分发网络中解析用到一个IP的多个域名,也在高防集群解析至一个高防IP。
4)切入高防集群后分别对高防集群的每个高防IP进行请求数、流量监测,同时对内容分发网络中受到影响的边缘节点、链路、IP进行请求数、流量监测;
当高防IP的请求数和流量低于阈值,且受到影响的边缘节点、链路和IP的请求数、流量低于阈值,将高防IP上的解析切回到内容分发网络攻击发生之前该解析所在的链路上,当高防IP的请求数和流量低于阈值且受到影响的边缘节点、链路和IP的请求数、流量高于等于阈值,将高防IP上的解析切回到内容分发网络中备用链路上;
当高防IP的请求数和流量高于等于阈值,则解析保持在当前高防IP,进行攻击流量清洗。
如图1所示,本发明基于内容分发网络进行安全防护的方法,一种基于智能调度和内容分发网络的安全防攻击系统(SCDN),包括以下步骤:
A)如图2、图3所示,从CDN集群每个节点取一个IP,形成链路。每个链路内的IP共同使用一套防护默认规则,包含请求数、流量阈值等。
B)如图4所示,将专用清洗集群的高防IP分组,每一组对应图3的一个链路,其防护规则参考原链路上配置的阈值根据攻击特点设置。
C)用户通过域名解析接入SCDN集群。正常无攻击情况下,解析到前端CDN集群各边缘节点的不同链路中。链路的分配根据域名业务类型、协议类型区分。
D)CDN集群,为域名提供就近加速等CDN服务,同时进行流量、带宽、请求等数据的实时监测。
E)攻击发生时,根据监测情况,触发防御机制,根据各域名、链路及各节点数据表现判断被攻击的域名、IP范围。
F)根据攻击规模及范围决定调度方式。
G)如被攻击的对象为CDN集群某一节点或IP,则替换备用节点或IP组(即被攻击对应的链路),并持续监测,如攻击规模在CDN节点防御能力以内,且攻击没有持续转移至备用节点,则将原节点、链路进行黑洞封禁处理,一段时间后转为备用节点、链路。
H)如G)中所述攻击规模已超过节点能力范围,或攻击持续跟至备用节点、链路,则需将受影响链路上的所有域名解析全部调度至专用清洗集群。具体方式参照I)~L)中针对链路受攻击的描述。
I)如某链路受攻击,链路上IP均有异常,其链路域名解析全部调度至相应链路的大规模专用清洗节点中防护规则相对应的高防IP组,并按用户业务类型,将属于相同用户或业务类型相近的域名解析至相同高防IP进行防护。
J)攻击防御过程中,CDN集群链路保持监测。当专用清洗集群防御结束,攻击停止时,根据原链路的情况,决定是否将域名解析恢复至攻击前的状态。
K)如原链路攻击已停止,则解析调度回原链路,恢复正常内容加速。
L)如原链路攻击未停止,则解析调度至备用链路,直到原链路恢复正常。
如图5所示,一种基于智能调度和内容分发网络的安全防攻击系统(SCDN),包含以下内容:
在内容分发网络设置n个边缘节点;根据链路的个数确定高防组数,建立高防集群,每个高防组包括n个高防IP;每个边缘节点包括m个IP,m是根据客户数量和类型设定,m个IP对应m个链路;
a)CDN节点主要提供加速能力和数据监测能力。将边缘CDN节点IP分组形成多条链路,根据用户业务类型在每条链路配置多套不同的防护默认规则,将同类客户置于相同链路,共用默认防护规则。用户业务解析在CDN集群上时,可以保证加速、缓存、访问控制等CDN功能正常使用。
b)专用清洗节点提供主要攻击防御能力,提供高防IP,对其进行分组,根据用户业务类型(同上)、用户业务规模配置不同的防护默认规则。
c)CDN边缘节点日常实时监测流量、带宽、请求等数据,也配置小规模本地清洗防护能力。
d)CDN边缘节点根据监测情况,触发防御机制,根据各域名、链路及各节点表现判断被攻击范围。
e)如被攻击对象为某一节点或IP,则替换备用节点及IP组(即新链路)。
f)如某链路的流量、请求等数据异常,超过默认防护规则设定阈值,则将其链路用户域名解析全部由边缘节点自动调度至距离源站最近的大规模专用清洗节点,并将用户按类型解析至对应一个分组的不同高防IP上,分别检测、清洗、过滤,同时对原CDN集群链路持续监测。
7)待专用清洗节点及原CDN集群链路数据回落至正常范围,则将用户解析自动调度恢复至原链路。
8)如专用清洗节点清洗结束时,原CDN集群链路的数据仍未恢复正常,则先将用户解析自动调度至CDN集群的备用链路,待数据正常后自动恢复解析至原链路。
- 一种基于内容分发网络的攻击防御方法
- 一种防御CC攻击的方法、装置和内容分发网络服务器