目录
一、网络攻击方式分类
1、被动攻击:
被动攻击:通过抓包获取信息,攻击不安全的协议。
2、主动攻击:
- DOS:造成大量请求,消耗完服务器资源。
- 篡改攻击:本来是直接访问服务器,现在要过中间人进行转发,转发过程中被篡改。
- 假冒攻击:伪造身份去获取信息,通过跨站脚本等手段获取你网站的Cookie。
3、中间人攻击:
中间人攻击:成为中间人的方式有DHCP和ARP
- DHCP:架设DHCP服务器,发送错误的地址信息,网关指向我。
- ARP:修改去往互联往和返回互联网流量。
二、网络攻击报文类型分类:
1、流量型攻击
- 网络层攻击:ARP、DHCP、DOS
- 应用层攻击:Web
2、单包攻击
- 畸形报文攻击
- 特殊报文攻击
- 扫描窥探攻击
三、流量型攻击防范技术
1、DNS Request Flood攻击
攻击原理
- 针对缓存服务器的攻击
- 针对缓存服务器的攻击是指攻击者直接或间接向DNS缓存服务器发送大量不存在的域名解析请求,导致DNS缓存服务器不停向授权服务器发送解析请求,最终导致DNS缓存服务器超载,影响正常业务的攻击。
- 针对授权服务器的攻击
- 针对授权服务器的攻击是指攻击者直接或间接向DNS授权服务器发送大量不存在的子域名请求,致使DNS授权服务器严重超载,无法继续响应正常用户的DNS请求,从而达到攻击的目的攻击。
- DNS Request Flood攻击源可能是虚假源,也可能是真实源。针对不同类型的攻击源,采取的防御方式也不同。
DNS交互过程
2、TCP类报文攻击防御
TCP正常建立连接和断开连接的过程
TCP三次握手
1、A先发SYN携带seq初始化序列号a
2、B收到A的SYN后,回复SYN携带seq初始化序列号b,并且携带ack值为a+1为对上一次A发的SYN的确认。
3、A收到B的SYN后回复ACK确认,并携带seq为B发SYN的a+1值,ack确认为B的seq中b+1的值。
四次挥手手:两次FIN交换
4、SYN Flood攻击(DOS)
伪造报文一般为源IP地址不存在或不可达,大量的半连接消耗了服务器的资源,使服务器无法处理正常的连接请求。
RFC1918文档,RFC3330文档,互联网不会出现的网段。
缓存和RTT往返时间
1、攻击者发送大量的SYN,服务器收到SYN就会维护缓存信息。
2、服务器发送SYN ACK过去但是怎么也收不到ACK应答,在缓存中会制造大量的半开连接,占满缓存,导致正常连接无法建立。
重点:虚假伪装源、制造大量恶意缓存信息(半开连接)、高速率制造(RTT时间以内,合法清除正常缓存,恶意缓存打满)
SYN Flood攻击抵御方法——首包丢弃(面对虚假源)
SYN Flood攻击抵御方法——源认证(面对虚假源)
Anti-DDoS设备基于目的地址对SYN报文速率进行统计,当SYN报文速率超过阈值时,启动源认证防御。
此源认证方法主要针对虚假源的攻击者进行防御。
某些APP收到RST报文可能会认为服务器挂了,从而出现问题,首包丢弃好些。
SYN Flood攻击抵御方法——源认证(真实源)
- 源IP加入白名单之后将继续对真实源IP进行统计分析,对异常的源IP进行限速,以防止真实源发起攻击。
-
- TCP-Ratio异常限速:基于源来统计除ACK以外的其他报文总和 (SYN+SYN-ACK+FIN/RST) 与ACK报文的比例,当这个比例超过“TCPRatio比例闯值”时,判定源IP地址异常,将除ACK以外的其他报文的速率总和限制在阈值内。
- 始终限速:任何情况下,都将除ACK以外的其他报文的速率总和限制在阈值内。
超过比例,判断异常,限制速率。
SYN-ACK Flood攻击原理与防御原理
-
攻击原理
- SYN-ACK Flood攻击源会假冒服务器,发送大量SYN-ACK报文到攻击目标网络,如果网络出口有依靠会话转发的网络设备,比如防火墙、IPS(查询状态表项消耗资源)等设备,则大量的SYN-ACK报文会导致这类网络设备处理性能降低,甚至会话耗尽。
- 另外,SYNFlood的反射攻击也可能造成服务器发送大量的SYN-ACK报文。
-
防御原理
- Anti-DDoS设备基于目的地址对SYN-ACK报文速率进行统计,当SYN-ACK报文速率超过闯值时,启动源认证防御。
5、ACK Flood攻击与防御原理
攻击原理
- 如果是带有超大载荷的ACK Food攻击,会导致路拥塞。
- 如果是极高速率的变源变端口ACK Flood攻击,很容易导致依靠会话转发的没备转发性能降低,甚至会话耗尽造成网络瘫痪。
- 如果攻击报文到达服务器,则导致服务器处理性能耗尽,从而拒绝正常服务。
防御原理
会话检查和载荷检查结合来防御ACK Flood攻击。
Anti-DDoS设备防御方式
严格模式
直路部署组网中建议采用“严格模式”
- 如果ACK报文没有命中会话表,则Anti-DDoS设各直接丢弃ACK报文。
- 如果ACK报文命中会话表,则允许ACK报文通过
基本模式
旁路部署动态引流时,由于报文来回路径不一致,对于引流前已经建立的会话,Anti-DDoS设备上检查不到会话此时建议采用“基本模式”。当连续一段时间内ACK报文速率超过阅值时,启动会话检查“基本模式”。
- 如果ACK报文没有命中会话表,Anti-DDoS设备会允许第一个ACK报文通过,并建立会话,然后对后续ACK报文进行会话检查,以确定是否允许后续同源IP发送的ACK报文通过。
- 如果ACK报文命中会话表,则继续检查报文序列号,序列号正确的报文允许通过,不正确的报文则被丢弃。
6、FIN/RST Flood攻击与防御原理
- 如果Anti-DDoS设备检查到FIN/RST报文没有命中会话,直接丢弃报文。
- 如果Anti-DDoS设备检查到FIN/RST报文命中会话,则根据会话创建原因和会话检查结果来判断该报文是否通过。
-
- 1、如果会话是由SYN或SYN-ACK报文创建的,则允许该FIN/RST报文通过。
- 2、如果会话是由其他报文创建的《例如ACK报文),则进一步检查报文序列号是否正确,序列号正确的报文允许通过,不正确的报文则被丢弃。
攻击原理
- 攻击者利用僵尸网络发送大量的变源变端口FIN/RST报文攻击,这些攻击到达依靠会话转发的设备上,很容易导致转发设备性能降低甚至会话耗尽造成网络瘫痪,从而拒绝正常服务。
防御原理
- 当FIN/RST报文速率超过闯值时,启动会话检查。
四、抗DDOS攻击
1、华为的Anti-DDOS产品
2、Anti-DDOS三大单元
Anti-DDOS三大单元:检测单元、管理中心、清洗中心
- 检测单元:把入口关键性流量通过流量镜像方式送到检测中心,通过响应的算法识别流量,上报到管理中心。
- 管理中心:管理中心发现DDOS存在,会登录到边界设备上,把流量引导到清洗中心(流量原本是直接到服务器,经过引导到清洗中心清洗流量,引导流量一般是使用BGP)。
- 清洗中心:把问题流量清洗后,回灌到服务器(回灌一般使用GRE)。
DDOS通用攻击防范技术
3、流量清洗原理
(1)、首包丢弃(适合支持重传的协议-应对虚假源)
有些攻击采用不断变换源IP地址或者源端口号的方式发送攻击报文通过首包丢弃,可以有效拦截这部分流量。首包丢弃与源认证结合使用,防止虚假源攻击。
(支持首包丢弃后重传报文的协议包括TCP、DNS、ICMP协议UDP协议虽然不具备重传机制,如果有应用层协议来协助实现重传时,也可以配置首包丢弃功能。)
大量的SYN过来,丢弃首包,并记录三元组信息(源IP+源端口+协议)及时间,等待对方进行报文重传(对付虚假源),正常时间间隔内收到重传报文,如果重传信息和记录信息一致,判断重传报文并接收。
阻断和限流
通过服务基线学习或管理员经验判断,发现网络中根本没有某种服务或某种服务流量很小,则可以分别采用阻断和限流方法来防御攻击。
阻断:在自定义服务策略中,阻断表示将匹配自定义服务的报文全部丢弃;在默认防御策略中表示将自定义服务以外的此协议报文全部丢弃。
限流:在自定义服务策略中,限流表示将匹配自定义服务的报文限0制在闯值内,丢弃超过闯值的部分报文;在默认防御策略中,限流表示将自定义服务以外的此协议报文限制在闯值内,丢弃超过闯值的部分报文。
过滤器
- 通过配置过滤器,对匹配特征的报文执行相应的操作。
- Anti-DDoS设备提供了IP、TCP、UDP、HTTP、DNS、ICMP、SIP七种类型的过滤器
指纹是多个值哈希出来的哈希值。
黑名单和白名单
Anti-DDoS防御系统支持将一些不可信任的源IP地址加入黑名单对此源发出的报文禁止通过;将信任的源IP地址加入到白名单,对此源发出的报文允许通过。