网络安全审计介绍与部署实施
一、网络审计的概念
1.1 网络审计的起源
审计起源于财务管理,用于审核企业经营行为是否合法,审计从财务入手,也就是审核账务。把审计的概念引申到网络中可以追溯到IDS(***检测系统)研究的早期。最初是对主机日志的审计,发现***行为,后来发展成主机IDS技术【IDS技术可分为主机IDS和网络IDS】。由于主机IDS只对主机的行为进行检测,并且要占用主机的宝贵资源,随着网络规模的不断扩大,安全厂商想到了通过网络链路镜像的方式直接收集网络原始信息,就是目前广泛使用的网络IDS。
1.2 网络审计的定义
网络审计就是在网络链路上将数据包镜像到服务器(一般可以是IDS,审计设备),后期审计时在服务器上进行业务识别,将数据包还原分析进而还原某个用户某个特定时间的上网行为。以此来判断用户上网行为是否合法、提供不法行为证据、业务是否合规、也可分析当前安全防御网络系统中的漏洞安全隐患等。
注:审计行为不是针对外部***者的,而是针对网络内部用户的。毕竟网络中的大多数安全问题都来自内部人员,其作用主要是安全威慑,后期调查取证。
二、网络审计产品工作原理
2.1 产品设计架构
在产品的设计架构上分为控制中心、数据库、控制台、数据收集引擎几个部分,采用分布式的部署方式。
2.2 信息获取方式
1、通过网络链路镜像方式
典型的方式就是网络链路的端口镜像(若是光链路也可以用分光设备),就是把正常网络的通讯信号(数据)复制一份给镜像设备。图中蓝线是IDS的信息收集,红线是审计的信息收集。多对一的镜像也可以根据产品的部署情况采用单独的数据收集引擎,根据流量采用一对一镜像,或多对一镜像。
2、从主机上信息收集方式
在主机上收集信息一般要安装Agent软件,也可以通过Syslog、SNMP等通讯协议从主机中获取。主机IDS技术的早期也是对系统的日志进行分析,后来发展到对主机的进程、状态进行监控;主机的系统操作日志、安全日志,数据库上的操作日志,也同样是审计系统的数据来源。
2.3 业务识别技术
收集到的信息需要进一步处理,从网络镜像来的数据包,首先要还原成通讯协议,定位到具体的通讯连接,也就是我们常说的业务识别技术。IDS与审计的业务识别技术基本是相同的。
无论是分析是否为***,还是要记录用户的行为过程,识别出用户具体在做什么都是必然的。对于标准协议的识别与匹配相对是容易的,但是很多应用采用了加密,或隐藏在其他的通讯协议中,如P2P等,要识别起来就比较麻烦,在流量管理技术中识别一般采用特征匹配技术,但是应用的特征多,而且变化快,对于IDS设备来说,面对的***是未知的,可能是通过各种通讯手段的,所以对特征的识别要求较高一些;而对于审计产品来说,要审计的应用是已知的,系统不提供的服务也没有必要进行审计,所以对特征识别需要简单一些。
三、网络审计产品的主要功能
记录使用者的操作行为(可能是内部也可能是外部)。何时登录,何时下线,做了什么事…
识别使用者的身份信息,识别使用者使用的主机IP。(一般审计系统都会与网络身份认证系统相连接,便于用户身份信息识别)
利用镜像到服务器上的流量可以还原使用者的操作过程。
审计记录的数据是不可修改的。
网络行为审计
审计网络使用者在网络上的“行为”,根据网络的不同区域,安全关注的重点不同,分为不同专项审计产品。其信息获取的方式分为:网络镜像方式与主机安装代理方式。
4.1.1 网络行为审计:
通过端口镜像取得原始数据包,并还原成连接,恢复到相应的通讯协议,如:FTP、Http、Telnet、SNMP等,进而重现通过该链路的网络行为。
目的:审计该链路上所有用户在网络上的“公共行为”,一般放在网络的主干道上。
重点街区安装的摄像机,对公共区域的公共安全进行记录。
缺点:识别技术很关键,产品要识别的应用协议太多,对安全厂家来说是考验。
关心主要流量的应用协议解析。但该方法对于应用加密时就失去了审计的能力。
4.1.2 主机审计:
若网络是街道,主机就是各个单位的内部。在服务器上安装审计代理,审计主机使用者的各种行为,把主机的系统、安全等日志记录下来相当于针对主机上运行的所有业务系统的安全审计。主机审计在终端安全上的发展最主要的代表性的是非法外联审计,防止涉密信息通过终端外泄。
目的:审计主机使用者的行为,或进入该主机(服务器)的使用者的行为
缺点:主机审计需要安装代理软件,对主机的性能有一定的影响。另外审计代理的防卸载与防中断运行的能力是必需的,否则产生的审计“天窗”是致命的安全漏洞。
4.1.3 数据库审计:
镜像数据库服务器前的链路,审计数据库使用行为,可以重现到数据库的操作命令级别,如SELECT、UPDATA等。
目的:数据库一般是应用系统的核心,对数据库的操作行为记录一般能记录用户的不法行为过程,并且审计的操作记录,也可以为数据库恢复提供依据,对系统的破坏损失也可以减小。
主机审计:也可以在数据库服务器上直接安装审计终端,对数据库进行审计,或者可以利用数据库系统自身的一些操作日志信息作为审计分析的数据的源。但不同的是数据库系统的日志可以删除,审计系统的审计日志不可以删除。
缺点:数据库的流量很大,审计记录的存储容量相当可观。
4.1.4 互联网审计:
针对员工上互联网的行为的专向审计,主要识别的是Http、SMTP、FTP等协议,同时对互联网的常用应用如QQ、MSN、BT等也需要识别。互联网审计一般是对内部员工的上网进行规范。
目的:互联网出口往往是一个企业网络的“安全综合地带”,是企业与外界联系的必然出口,设置互联网的专项审计也是很多企业的管理需求。
缺点:互联网应用升级较快,对审计中的识别技术要求高,对于日渐增多的加密应用,如Skype、MSN等,对于审计来说都是极大的挑战。
4.2 运维审计:
网络的运维人员是网络的“特殊”使用团队,一般具有系统的高级权限,对运维人员的行为审计日渐成为安全管理的必备部分,尤其是目前很多企业为了降低网络与系统的维护成本,采用租用网络或者运维外包的方式,由企业外部人员管理网络,由外部维护人员产生的安全案例已经逐渐在上升的趋势。
目的:运维人员具有“特殊”的权限,又往往是各种业务审计关注不到的地方,网络行为审计可以审计运维人员经过网络进行的工作行为,但对设备的直接操作管理,比如Console方式就没有记录。
审计方式:运维审计的方式不同于其他审计,尤其是运维人员为了安全的要求,开始大量采用加密方式,如RDP、SSL等,加密口令在连接建立的时候动态生成,通过链路镜像方式是无法审计的。所以运维审计是一种“制度+技术”的强行审计。一般是运维人员必须先登录身份认证的“堡垒机”(或通过路由设置方式把运维的管理连接全部转向运维审计服务器),所有运维工作通过该堡垒机进行,这样就可以记录全部的运维行为。由于堡垒机是运维的必然通道,在处理RDP等加密协议时,可以由堡垒机作为加密通道的中间代理,从而获取通讯中生成的密钥,也就可以对加密管理协议信息进行审计。
缺点:采用单点运维通道是为了处理可以加密协议,但对运维效率有一定影响。并且网络上产品种类多,业务管理软件五花八门,管理方式也多种多样,采用单一的运维通道未必都能达到效果。最重要的是运维审计方案一定要与安全管理制度相配合,要运维人员不“接触”设备是不可能的。
4.3 业务合规性审计:
网络是业务的支撑系统,对业务本身是否“合法”,网络层的审计技术一般很难判断,所以业务合规性审计一般是与业务系统相关联的组织开发的审计系统,通过业务系统中安装代理的方式,或直接集成在业务系统中,获取业务“流水”信息,在单独的审计系统中完成后期审计,也可以定期对业务系统的业务流水日志信息进行审计。
目的:审计业务本身的“合法”性。
产品形式:一般有业务开发公司提供,而不是网络安全公司提供,业务专业性非常强,一般为单独的审计系统。
五、网络审计产品部署
5.1 网络审计产品部署位置
网络审计产品的设计与网络IDS一致,都采用了“旁路”的方式部署,而且关心的网络链路大多也是相同的,所以当客户分别部署监控与审计安全产品时,经常出现的一个现象是:一个端口要镜像给两个目标端口,分别到不同数据收集引擎,而且这两个引擎的前期工作原理还非常接近。
在分布式的产品结构中,数据收集引擎与处理中心是分离的,我们可以把IDS与审计产品的数据收集引擎部分功能分离,进而合并两个引擎为一个。这样做的好处,其一是减少了业务链路镜像出来的端口数。其二是减少了网络上引擎设备的数量。其三是把镜像分析的数据引擎通用化,可以减低产品的成本,也方便未来新镜像系统的部署。
安全监控与审计是网络安全建设中不可缺少的两个方面,无论是*部的信息系统等级保护要求,还是×××的涉密信息系统技术要求,监控与审计都是必选项,而且还有细颗粒度的要求。合理、有效地部署监控与审计系统,对于保护你网络的安全是重要的,而且是必要的。
5.2网络流量镜像配置
5.5.1 CiscoNetFlow:
NetFlow是一种数据交换方式,NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,NetFlow缓存同时包含了随后数据流的统计信息。针对路由器送出的NetFlow数据,可以利用NetFlow数据采集软件存储到服务器上,以便利用各种NetFlow数据分析工具进行进一步的处理。
在需要镜像流量的设备上配置Netflow:
ip cef
flow-sampler-map TEST //创建Netflow例图
mode random one-out-of 100 //设置例图模式为100个包随机取1个
ip flow-exportsource Loopback0
ip flow-exportversion 9
ip flow-exportdestination YY.YY.56.100 2222 sctp //指向NetFlow采集器及端口
backup destination YY.YY.56.254 2222 //设置备份Netflow采集器
backup mode fail-over
interface G0/1
ip flow ingress //入方向开启NetFlow
ip flow egress //出方向开启NetFlow
flow-sampler TEST //入方向流量应用例图采用
flow-sampler TEST egress //出方向流量应用例图采样
5.5.2 CiscoSPAN:
SPAN技术主要是用来监控交换机上的数据流,大体分为两种类型,本地SPAN(SPAN),基于VLAN的SPAN(VSPAN)和远程SPAN(RSPAN)。利用SPAN技术我们可以把交换机上某些想要被监控端口(以下简称受控端口)的数据流COPY或MIRROR一份,发送给连接在监控端口上的流量分析仪,比如CISCO的IDS或是装了SNIFFER工具的PC。被监控的流量类型分为三种,Receive (Rx) SPAN 受控端口的接收流量,Transmit (Tx) SPAN 受控端口的发送流量,Both 一个受控端口的接收和发送流量。
1.本地SPAN:
受控端口和 监控端口可以在同一台交换机上
swconfig)#monitorsession 1 source interface f0/1 //指定源端口,默认both
, Specify another range of interfaces //可选参数
- Specify a range of interfaces
both Monitor received and transmitted traffic
rx Monitor received traffic only
tx Monitor transmitted traffic only
sw(config)#monitorsession 1 destination interface fastEthernet 0/0
//指定目的端口(默认只接收镜像流量,属于自身的一切流量被截断)
2.基于VLAN的VSPAN:
基于VLAN的SPAN只能监控VLAN中所有活动端口接收的流量(only received (Rx) traffic),如果
监控端口属于此VLAN,则此端口不在监控范围内,VSPAN只监控进入交换机的流量,不对VLAN接口上的路由数据做监控。
Catalyst 3550交换机上最多只能设置两个SPANSession,缺省SPAN没有使用,如果做了设置,缺省情况下,第一个被设为受控端口的接口进出流量都会受到监控,以后再追加的受控端口只会对接收的流量进行监控,监控端口的默认封装类型为Native,也就是没有打VLAN的标记。
Switch(config)#monitor session 2 source vlan 101 - 102 rx //指定受控端口所属VLAN
Switch(config)#monitor session 2 destination interface fastethernet0/30
3.远程RSPAN:
RSPAN中要使用一个专用的VLAN来转发流量,反射端口会使用这个专用VLAN将数据流通过TRUNK端口发送给其它的交换机,远程交换机再通过此专用VLAN将数据流发送到监控端口上的分析仪。 关于RSPAN VLAN的创建,所有参与RSPAN的交换机应在同一个VTP域中,不能用VLAN 1,也不能用1002-1005,可以用2-1001的标准VLAN。
Reflector Port反射端口只在RSPAN中使用,与RSPAN中的受控端口在同一台交换机上,是用来将本地的受控端口流量转发到RSPAN中在另一台交换机上的远程监控端口的方法,反射端口也只能是一个实际的物理端口,它不属于任何VLAN。反射端口最好是>=受控端口的带宽,否则可能会出现丢包的情况。
RSPAN的Session分成RSPANSource Session和RSPAN Destination Session两部分,所以相应的配置也要分别在Session的源和目的交换机上做。
Switch(config)#vlan 800 //为RSPAN创建专用的VLAN;源,中间及目的交换机都要配置该VLAN
Switch(config-vlan)#remote-span //可以使用sh vlan id 800查看RSPANVLAN状态
在源交换机上配置Source Session:
Switch(config)#monitor session 1 source interface fastethernet0/10 - 13
Switch(config)# monitorsession 1 source interface fastethernet0/15 rx
Switch(config)#monitor session 1 destination remote vlan 800 reflector-portfastethernet0/20
在目的交换机上配置Destination Session:
Switch(config)#monitor session 1 source remote vlan 800
Switch(config)# monitorsession 1 destination interface fastethernet0/30
5.5.3 华为SPAN:
端口镜像原理,将镜像端口的流量复制一份发送到观察端口供观察端口下连的流量分析设备(软件)对复制来的镜像端口的流量进行分析,在华为的SPAN端口镜像中观察端口仍然可以发送和接受数据(思科中观察端口就会停止正常的数据收发,只能观察从镜像端口复制来的流量)。华为SPAN一般分为以下几种:
1.端口镜像
端口镜像是基于端口的镜像,分为本地端口镜像、二层远程端口镜像、三层远程端口镜像,镜像的流量可以是入向或者出向。
本地端口镜像:
[Huawei]observe-port1 interface g0/0/1 //配置一个序列号为1的观察端口g0/0/1
[Huawei]interfaceg0/0/2 //配置镜像端口
[Huawei-GigabitEthernet0/0/2]port-mirroringto observe-port 1 both //配置一个镜像端口,将双向流量复制到序列号为1的观察端口
二层远程端口镜像:
首先创建一个用于广播镜像流量的vlan,分别在lsw1与lsw2上创建vlan2,LSW1将镜像端口G0/0/1的流量镜像到G0/0/2口,通过G0/0/2口广播到镜像VLAN2中被处于VLAN2的Server1收到。
[lsw1]vlan 2
[lsw1-vlan2]mac-address learning disable//必须在观察vlan中关闭mac地址学习
[lsw1]observe-port1 interface g0/0/2 vlan 2 //指定观察端口,并在vlan2中广播复制的流量
[lsw1]interfaceg0/0/1
[lsw1-GigabitEthernet0/0/1]port-mirroringto observe-port 1 both //指定镜像端口,将流量复制到序列号为1的观察端口
[lsw2]vlan 2
三层远程端口镜像配置:
端口的三层远程镜像的原理是,通过在ip层建立一条GRE的tunnel隧道将镜像端口的流量复制到观察端口,观察端口在通过GRE-tunnel隧道将流量发送到监控设备所在的端口上,进行流量的分析。在下面拓扑中LSW1上的镜像端口将流量复制到观察端口,由观察端口通过GRE-tunle发送至server2监控服务器连接的lsw2的E0/0/2接口,供server2对镜像端口的流量进行分析。
首先在AR1和AR2上分别配置路由网段及静态路由,保证三层互通,然后在LSW1上配置镜像端口及观察端口的gre隧道。
在lsw1上配置:
[Huawei]observe-port1 interface e0/0/1 destination-ip 192.168.2.100 source-ip 192.168.1.100 //创建观察端口及隧道
[Huawei]interfacee0/0/2
[Huawei-Ethernet0/0/1]port-mirroringto observe-port 1 both //指定镜像端口1
2.流镜像
流镜像是基于流的镜像,是根据用户配置的刘策略traffic-class匹配的流量进行镜像,只支持(镜像端口的)入方向,不支持出方向。流镜像分为本地流镜像、二层远程流镜像、三层远程流镜像。
3.VLAN镜像
vlan镜像是基于vlan的镜像,是将制定的vlan内的所有活动接口的入方向的流量复制到观察端口,不支持出方向。vlan镜像分为本地vlan镜像、二层远程vlan镜像,不支持三层远程。
本地VLAN镜像:
[Huawei]observe-port1 interface GigabitEthernet0/0/3 //指定观察端口
[Huawei]vlan 2
[Huawei-vlan2]mirroringto observe-port 1 inbound //镜像vlan2中所有活动接口的入向流量
二层远程VLAN镜像:
二层远程的配置与端口镜像一致,只需要将镜像端口改为vlan,不支持三层远程。
4.MAC地址镜像
基于mac地址的镜像,将匹配源或目的的mac地址的入方向的流量复制到观察关口,不支持出方向。mac地址镜像支持本地mac地址镜像、二层远程mac地址镜像。
5.5.4 华为Netstream:
NetStream是一种基于网络流信息的统计与发布技术,可以对网络中的通信量和资源使用情况进行分类和统计,基于各种业务和不同的QoS进行管理和计费。华为Netstream技术等同于Cisco NetFlow技术。
在需要镜像流量的设备上配置Netstream:
1、配置交换机的流发送
[Huawei]ipnetstream timeout active 100 流活跃时间
[Huawei]ipnetstream timeout inactive 3 流老化时间
[Huawei]ipnetstream export version 9 netstream版本,只支持v9
[Huawei]ipnetstream export source x.x.x.x 发送流的交换机ip
[Huawei]ipnetstream export host a.a.a.a 11111 发送流的目的ip及目的端口号
2、配置交换机某个端口的netstream功能
[Huawei-Ethernet0/0/1]ipnetstream inbound 接口进方向的数据转成流
[Huawei-Ethernet0/0/1]ipnetstream outbound 接口出方向的数据转成流
[Huawei-Ethernet0/0/1]ipnetstream sampler fix-packets 1000 inbound设置采样率
[Huawei-Ethernet0/0/1]ipnetstream sampler fix-packets 1000 outbound
配置完成后就可以把有netstream功能的接口的数据转成流发送到指定设备的指定端口,dis netstream all查看当前交换机所有的netstream配置