基于SDN的DDoS攻击与防御

一、设计背景

随着网络信息时代的发展,生活方式发生改变的同时,网络安全逐渐成为生活中一大关心话题。而DDoS攻击是黑客最常用、我们却又难以防范的一大手段,比如SYNFlood攻击就是利用了TCP三次握手的漏洞使目标无法正常工作,以达到攻击的目的。在研究模拟实现DDoS攻击的基础上,提出了利用mininet平台模拟SDN架构进行网络流量监测研究,通过SDN架构实时监控流量信息的变化,对DDoS攻击做出及时处理。

二、基本环境

floodlight(SDN控制器的一种)

mininet(仿真网络拓扑环境)

Sflow-RT(流量监控设备)

三、DDoS攻击原理

DDoS攻击是指攻击者利用大量的网络主机,在短时间内向目标主机发起大量的请求,占用目标主机的带宽和资源,导致网络瘫痪等问题。DDoS攻击的基本原理是:攻击者通过利用其控制的大量主机,向被攻击的网站或服务器发起大量流量,从而导致目标主机的带宽和资源被占用,最终导致服务不可用。

DDoS攻击可分为多种类型,但攻击行为的基本原理都是一样的。攻击者向目标主机发起大量的请求,使目标主机无法正常处理请求,从而达到瘫痪目标主机的效果。常见的DDoS攻击类型包括SYN Flood、UDP Flood、ICMP Flood、HTTP Flood和DNS Flood等。

四、运行过程

1.运行floodlight控制器。

2.浏览器内打开网站。

3.保持 Floodlight 运行的终端,再新开一个终端窗口,输入如下指令,构建所需的拓扑结构

4.保持Mininet 运行的终端,再新开一个终端窗口,输入如下指令,启动sFlow-RT。

5.在虚拟交换机配置sFlow Agent,这样sFlow Collector 才能收集到流量信息进行分析和呈现。并且部署sFlow Agent

6.入ip link指令可以查看,虚拟交换机端口与端口编号的映射

7.通过其WebUI进行查看sFlow Agent 是否配置成功

8.图形化流量监控页面

9.切换到mininet 控制台窗口,打开 Host1,和Host2的终端,在 Host1 上启动一个 http 服务

10.在 Host2 上 ping Host1

11.然后去观察流量, 可以看到,流量很正常,在 Host2 终端中可以按 Ctrl+c,停止ping,访问Host1的HTTP服务。

12.接下来,进行DDoS 模拟攻击,在 mininet 终端中执行,h2 ping -f h1,观察交换机流量。

13.调用Floodlight 的API 查询现有流表,进行添加流表操作,下发流表Drop数据包,切换到 sFlow 这边查看流量,发现流表下发之后,流量迅速下降,h1向h2泛洪的数据包迅速的被完全Drop掉了

14.切换到 h2 的终端,访问 h1的web服务,同样无法访问了。这是因为我们下发的流表是把所有的数据包都Drop掉了。

15.删除刚刚下发的流表,攻击的数据包流表又恢复了

16.改造需要下发的流表,添加了两个字段,再次下发流表

17.可以发现,流量下降到正常,但HTTP服务依然可以访问,没有受到影响。

五、总结

通过SDN技术,我们可以对网络流量进行实时监控,提取,分析,并能够及时的对流量进行调整比如QoS,负载均衡,DDoS流量过滤等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值