一、前言
近年来,随着互联网在全球的迅速发展和各种互联网应用的快速普及,互联网已成为人们日常工作生活中不可或缺的信息承载工具。
然而,伴随着互联网的正常应用流量,网络上形形色色的异常流量也随之而来,影响到互联网的正常运行,威胁用户主机的安全和正常使用。
本文从互联网运营商的视角,对互联网异常流量的特征进行了深入分析,进而提出如何在网络层面对互联网异常流量采取防护措施,其中重点讲述了NetFlow分析在互联网异常流量防护中的应用及典型案例。
二、NetFlow简介
本文对互联网异常流量的特征分析主要基于NetFlow数据,因此首先对NetFlow做简单介绍。
1. NetFlow概念
NetFlow是一种数据交换方式,其工作原理是:NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,NetFlow缓存同时包含了随后数据流的统计信息。
一个NetFlow流定义为在一个源IP地址和目的IP地址间传输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。
2. NetFlow数据采集
针对路由器送出的NetFlow数据,可以利用NetFlow数据采集软件存储到服务器上,以便利用各种NetFlow数据分析工具进行进一步的处理。
Cisco提供了Cisco NetFlow Collector(NFC)采集NetFlow数据,其它许多厂家也提供类似的采集软件。
下例为利用NFC2.0采集的网络流量数据实例:
211.*.*.57|202.*.*.12|Others|localas|9|6|2392
|80|80|1|40|1
出于安全原因考虑,本文中出现的IP地址均经过处理。
NetFlow数据也可以在路由器上直接查看,以下为从Cisco GSR路由器采集的数据实例,:
gsr #att 2 (登录采集NetFlow数据的GSR 2槽板卡)
LC-Slot2>sh ip cache flow
SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts
Gi2/1 219.*.*.229 PO4/2 217.*.*.228 06 09CB 168D 2
Gi2/1 61.*.*.23 Null 63.*.*.246 11 0426 059A 1
本文中的NetFlow数据分析均基于NFC采集的网络流量数据,针对路由器直接输出的Neflow数据,也可以采用类似方法分析。
3. NetFlow数据采集格式说明
NFC 可以定制多种NetFlow数据采集格式,下例为NFC2.0采集的一种流量数据实例,本文的分析都基于这种格式。
61.*.*.68|61.*.*.195|64917|Others|9|13|4528|
135|6|4|192|1
数据中各字段的含义如下:
源地址|目的地址|源自治域|目的自治域|流入接口号|流出接口号|源端口|目的端口|协议类型|包数量|字节数|流数量
4. 几点说明
NetFlow主要由Cisco路由器支持,对于其它厂家的网络产品也有类似的功能,例如Juniper路由器支持sFlow功能。
NetFlow支持情况与路由器类型、板卡类型、IOS版本、IOS授权都有关系,不是在所有情况下都能使用,使用时需考虑自己的软硬件配置情况。
本文的所有分析数据均基于采自Cisco路由器的NetFlow数据。
三、互联网异常流量的NetFlow分析
要对互联网异常流量进行分析,首先要深入了解其产生原理及特征,以下将重点从NetFlow数据角度,对异常流量的种类、流向、产生后果、数据包类型、地址、端口等多个方面进行分析。
1. 异常流量的种类
目前,对互联网造成重大影响的异常流量主要有以下几种:
(1)拒绝服务攻击(DoS)
DoS攻击使用非正常的数据流量攻击网络设备或其接入的服务器,致使网络设备或服务器的性能下降,或占用网络带宽,影响其它相关用户流量的正常通信,最终可能导致网络服务的不可用。
例如DoS可以利用TCP协议的缺陷,通过SYN打开半开的TCP连接,占用系统资源,使合法用户被排斥而不能建立正常的TCP连接。
以下为一个典型的DoS SYN攻击的NetFlow数据实例,该案例中多个伪造的源IP同时向一个目的IP发起TCP SYN攻击。
117.*.68.45|211.*.*.49|Others|64851|3|2|10000|
10000|6|1|40|1
104.*.93.81|211.*.*.49|Others|64851|3|2|5557|
5928|6|1|40|1
58.*.255.108|211.*.*.49|Others|64851|3|2|3330|
10000|6|1|40|1
由于Inte.net协议本身的缺陷,IP包中的源地址是可以伪造的,现在的DoS工具很多可以伪装源地址,这也是不易追踪到攻击源主机的主要原因。
(2)分布式拒绝服务攻击(DDoS)
DDoS把DoS又发展了一步,将这种攻击行为自动化,分布式拒绝服务攻击可以协调多台计算机上的进程发起攻击,在这种情况下,就会有一股拒绝服务洪流冲击网络,可能使被攻击目标因过载而崩溃。
以下为一个典型的DDoS攻击的NetFlow数据实例,该案例中多个IP同时向一个IP发起UDP攻击。
61.*.*.67|69.*.*.100|64821|as9|2|9|49064|5230|
17|6571|9856500|1
211.*.*.163|69.*.*.100|64751|as9|3|9|18423|
22731|17|906|1359000|1
61.*.*.145|69.*.*.100|64731|Others|2|0|52452|
22157|17|3|4500|1
(3)网络蠕虫病毒流量
网络蠕虫病毒的传播也会对网络产生影响。近年来,Red Code、SQL Slammer、冲击波、振荡波等病毒的相继爆发,不但对用户主机造成影响,而且对网络的正常运行也构成了的危害,因为这些病毒具有扫描网络,主动传播病毒的能力,会大量占用网络带宽或网络设备系统资源。
以下为最近出现的振荡波病毒NetFlow数据实例,该案例中一个IP同时向随机生成的多个IP发起445端口的TCP连接请求,其效果相当于对网络发起DoS攻击。
61.*.*.*|168.*.*.200|Others|Others|3|0|1186|
445|6|1|48|1
61.*.*.*|32.*.*.207|Others|Others|3|0|10000|
445|6|1|48|1
61.*.*.*|24.*.*.23|Others|Others|3|0|10000|
445|6|1|48|1
(4)其它异常流量
我们把其它能够影响网络正常运行的流量都归为异常流量的范畴,例如一些网络扫描工具产生的大量TCP连接请求,很容易使一个性能不高的网络设备瘫痪。
以下为一个IP对167.*.210.网段,针对UDP 137端口扫描的NetFlow数据实例:
211.*.*.54|167.*.210.95|65211|as3|2|10|1028|
137|17|1|78|1
211.*.*.54|167.*.210.100|65211|as3|2|10|
1028|137|17|1|78|1
211.*.*.54|167.*.210.103|65211|as3|2|10|
1028|137|17|1|78|1
2. 异常流量流向分析
从异常流量流向来看,常见的异常流量可分为三种情况:
网外对本网内的攻击
本网内对网外的攻击
本网内对本网内的攻击
针对不同的异常流量流向,需要采用不同的防护及处理策略,所以判断异常流量流向是进一步防护的前提,以下为这三种情况的NetFlow数据实例:
124.*.148.110|211.*.*.49|Others|64851|3|2|
10000|10000|6|1|40|1
211.*.*.54|167.*.210.252|65211|as3|2|10|
1028|137|17|1|78|1
211.*.*.187|211.*.*.69|Others|localas|71|6|1721|
445|6|3|144|1
其中211开头的地址为本网地址。
3. 异常流量产生的后果
异常流量对网络的影响主要体现在两个方面:
占用带宽资源使网络拥塞,造成网络丢包、时延增大,严重时可导致网络不可用;
占用网络设备系统资源(CPU、内存等),使网络不能提供正常的服务。
4. 异常流量的数据包类型
常见的异常流量数据包形式有以下几种:
?TCP SYN flood(40字节)
11.*.64.3|2.*.38.180|64821|as10|5|4|1013|18|6|
1|40|1
从NetFlow的采集数据可以看出,此异常流量的典型特征是数据包协议类型为6(TCP),数据流大小为40字节(通常为TCP的SYN连接请求)。
?ICMP flood
2.*.33.1|1.*.97.22|as12|64811|5|2|0|0|1|146173|
218359704|1
从NetFlow的采集数据可以看出,此异常流量的典型特征是数据包协议类型为1(ICMP),单个数据流字节数达218M字节。
?UDP flood
*.*.206.73|160.*.71.129|64621|Others|6|34|
1812|1812|17|224|336000|1
*.*.17.196|25.*.156.119|64621|Others|6|34|
1029|137|17|1|78|1
从NetFlow的采集数据可以看出,此异常流量的典型特征是数据包协议类型为17(UDP),数据流有大有小。
?其它类型
其它类型的异常流量也会在网络中经常见到,从理论上来讲,任何正常的数据包形式如果被大量滥用,都会产生异常流量,如以下的DNS正常访问请求数据包(协议类型53)如果大量发生,就会产生对DNS服务器的DoS攻击。
211.*.*.146|211.*.*.129|Others|Others|71|8|
3227|53|53|1|59|1