文章介绍:《安全设备学习规范》是将目前所接触到的安全产品与其所处的部署环境、功能要求、审计目标、资产管理、数据接入等众多产品相关内容进行整理、合并而进行总结的一篇文章。
文章主要分为以下内容:
最终以 安全防护结构规划 进行整理与总结,体现出当前环境下的安全防护设备的理论结构体系。
首先,在一个网络中将某个设备进行接入,考虑的第一要素就是位置。
针对不同的接入位置就产生了不同的部署方式,最主要的是以下三种情况:
部署模式的选择针对于不同的现网环境,每种类型各有独特,务必谨慎选择。
配置IP地址与路由可以分为三种情况:
配置三层接口的IP地址:三层接口又可以分为三层物理接口与三层逻辑接口(子接口、管理口、VPN),安全设备的接口划分可以分为以下几种情况:管理口、业务口、虚拟线接口(一组接口)、镜像口、逻辑子接口、二层接口、VPN虚拟接口、VRRP接口。这些接口无论是物理或逻辑,只要属于三层接口,均需要配置IP地址、子网掩码、网关(根据实际情况配置)若安全设备不需要访问域名,则可以不需要配置DNS地址。
配置静态路由:安全设备配置网关后,会自动生成一条默认路由(0.0.0.0/0),在业务口与管理口的IP网络不同的情况下,较多设备无法支持存在多条默认路由的情况下就需要将路由信息进行规划设计,如业务接口配置网关产生默认路由,管理口配置IP地址以静态路由的方式实现内网可达。这样做的目的:业务接口流量多种多样,无法实现具体的静态配置,而管理接口的IP地址和网段已经被固定,可以进行静态路由的配置,从而使得业务接口流量使用默认路由进行转发,最大化提升使用效率。
配置动态路由协议:动态路由协议有两种:
所有的动态路由协议配置均需要设计网络结构,并且需要进行网络设计规划,如OSPF的环境下,需要规划骨干区域与非骨干区域而进行设计网络,否则就会导致升级或部署问题偏多,不便于实际使用。
在现实环境下,设备冗余机制已经非常常见了,常见的冗余机制分为多种级别,如下:
在机房的物理冗余机制支持下,安全设备的接入也需要逻辑上的接入冗余,常见的冗余技术即VRRP/HA(高可用)技术。
运行机制:单个设备运行不稳定或down机情况下,需要建立虚拟的冗余机制防止由设备故障造成的业务损失,VRRP协议为网关冗余协议,可以使得两个安全设备虚拟逻辑化为一台设备,以一个IP地址作为转发地址,当主设备故障后,由备用设备接管主设备工作,使得业务不会中断。HA机制与VRRP机制完全相同。
心跳线:在设备冗余网络内,较多场景下会将心跳线进行裁剪,导致心跳数据包走业务流量线路进行传输,一旦业务流量过载由于服务质量的优先级设定会导致心跳包的传输较慢,若HA的心跳包接受频率设置的较高就会导致内网出现两台主控设备(短时间内备用设备无法接收到心跳数据,就会导致备用设备切换为主控,而主控设备并未出现故障),因此额外建议将心跳线单独进行部署,常用心跳线接口可以使用备用管理口或单独的三层接口。
当网络中存在两条链路时,业务流量就会存在来回路径不一致问题,从而导致TCP流量建立连接故障问题的产生。
正常情况下,业务流量过A线路进行网络访问建立TCP连接会话,但是由于A线路安全设备故障而导致流量切换为B线路,A线路的TCP会话并未在B线路上进行同步,就会导致B线路不存在之前进行网络访问的TCP会话而出现丢包问题,所有的TCP会话会触发重建机制,业务流量会话过多就会导致带宽占用过大问题,或触发安全事故(同一时间内过多的TCP会话建立连接 - SYN Flood)从而产生拦截会话机制导致业务出现故障,无法访问。
因此就需要在A线路与B线路之间进行会话同步操作,将A建立的TCP会话表同步到B线路,在会话同步的机制下,A线路的会话流量可以走B线路进行返回,从而减轻了A线路的压力,也使得B线路不会搁置而产生浪费。在部分业务环境下甚至会出现A线路为出流量方向,B线路为入流量方向进行流量分类,方便于审计操作。
安全设备管理账户大致可分为三类:
故障诊断为安全设备的排障机制,主要分为两类:
防止手段:定期检查安全设备CPU、Mem、Dsik使用情况与状态曲线,进行安全设备巡检操作。
产品授权为安全设备得到厂商允许后开通授权后进行测量防护的使用手段,重要的防护测试都需要进行授权方可使用(不同厂商的授权设定不同,此处不做过多赘述)。
硬件设备开通授权的使用参数为 序列号。
软件设备开通授权的使用参数为 Hash值。
如果说安全设备如何进行局域化模式部署,那么就必须考虑如何进行设备联动, 以单个设备在不同位置的建立最终呈现出方便运维、性能增加、防护全面、数据安全的场景。
单台设备的运维与使用只需要访问其web页面即可(针对图示化产品),十台设备的运维就显得相当吃力了,近乎百台的设备运维就显得力不从心,这种情况下就需要提供一个管理机制来应对这种环境。
为了减少运维人员的日常工作与方便操作,大部分厂商都设计了自己安全设备可支持对接的管理平台,此类平台最大的特点就是可以对接其厂商所生产的大部分安全设备,可以使用平台操作对其进行集中管理、策略调优、日志检索、审计防护,以建立不同的应用场景。
管理平台的类型大致分为两类:
在业务较大的情况下,单台设备的性能不足以满意某些业务的体量要求,这种时候就需要集群化部署参与,以多台设备的性能进行整合而提供对应服务。集群化部署主要分为三类:
注意:集群化部署与冗余机制是完全不同的两个概念,他们在理论上拥有很大的区别,如下:
图上白色字体为设备的性能参考倍数,如1为1倍参数,2为2倍参数。
API接口又名为软件对接接口,这种接口可以实现以请求方式调用设备功能,具体支持场景需要各个厂商提供相应的API接口文档以实现。
API接口的使用方法可以类比为下发http/https请求,以GET/POST方式进行传入参数,请求对应的URI路径,以正确的参数调用相关的功能模块实现服务远程调用的方式。
下面以一个案例进行说明API的调用格式:
http://www.aaa.com:8080/api/test/?username=xxx&&password=xxx&&format=json
# http://www.aaa.com:8080 为请求域名,常为某安全设备的访问域名
# /api/test/ 为请求API路径,此处需要参考厂商提供的API文档
# username=xxx&password=xxx&format=json 为传入参数(参数在http请求头部的请求方式为GET请求,若请求参数在正文中,则http请求方式为POST请求)传入参数也需要参考厂商提供的API文档
# && 为与关系连接符合
安全设备的防护对象就是内网资产的梳理过程,使得防护设备有目标进行策略拦截匹配。
资产是内外经过梳理之后得到的服务器或主机信息,常见的资产信息有:服务器、终端、中间件、数据库、网站等,将这些信息统计为一个Excel表格,以厂商的特定要求方式进行导入至防护的安全设备或相关平台中,即可对这些已经导入的资产信息进行保护。
192.168.1.100-192.168.1.100
http://www.aaa.com/url_test/*
# * 通配符,代表所有
安全防护设备多种多样,其防护策略大同小异,其中最主要使用的检测规则就是SAC中的DPI与DFI检测技术。
**智能应用控制SAC(Mmart Application Control)**是一个智能的应用识别与分类引擎,利用深度报文检测技术,对报文的第4-7层内容和一些动态协议进行检测和识别,识别出应用协议后,可以通过流分类对应用协议进行分类,并指定QoS动作,以实施精细化的QoS服务;
传统流量分类技术只能检测IP报文的4层以下的内容,包括源地址、目的地址、源端口、目的端口以及业务类型等(五元组识别);而深度报文检测技术在分析报文头部的基础上,增加了对应用层的分析,是一种基于应用层的流量检测和控制技术;
典型的深度报文检测技术识别包括:特征识别、关联识别、行为识别等,此三类识别技术分别适用于不同类型的协议,相互之间无法替代,通过综合的运用这三大技术,能够有效的识别网络上的各类应用,从而实现对网络数据流的深度控制;
特征识别是深度报文检测技术的基础技术,不同的应用通常会采用不同的协议,而不同的协议具有各自的特征, 这些特征可能是特定的端口、特定的字符串或者是特定的比特序列,能标识该协议的特征称之为特征码;
特征识别技术,即通过匹配数据报文中的特征码来确定其应用,协议的特征不仅仅在单个报文中体现,某些协议报文的特征是分布早多个报文中的,需要对多个报文进行采集和分析才能识别出协议类型;
对于某些数据流,控制通道和数据通道是分开的(例如FTP的20和21端口),会在网络中建立两个会话连接,这类应用需要先识别出控制流,再根据控制流的信息识别出相应的数据流;
关联识别可以将同一应用协议的控制流和数据流关联起来,通过对控制流的分析,分析出通讯双方需要在哪个通道上建立何种类型的数据流,并在协议识别时将控制通道流和该控制通道流协商出来的数据通道流关联起来;
深度报文检测技术在对控制通道流进行深度解析时,提取出其中协商的数据通道流的源三元组和目的三元组信息,并加入关联表,在后续的识别过程中,可以通过关联表项对数据通道流进行快速识别;
行为模式识别技术必须对终端的各种行为进行研究,并在此基础上建立行为识别模型,基于行为识别模型,行为模式识别技术可以根据客户已经实施的行为,判断用户正在进行的动作或者即将实施的动作,行为模式识别技术通常用于那些无法由协议本身就能判断的业务(如垃圾邮件还是普通邮件,其业务流没有区别,只有进一步的分析,通过邮件的大小、频率、目的邮件和源邮件地址、变化的频率、被拒绝的频率等综合因素进行分析,建立综合识别模型,从而进行判断);
对于大部分协议来说,应用识别是通过特征码的匹配来实现的,但是应用软件会不断进行升级和更新,其特征码也会发生改变,导致原有特征码无法正确或者精确匹配应用协议,因此特征码需要及时更新,如果在产品软件包中固化特征码,每次更新特征码时就需要更新产品软件版本,用户使用很不方便;将特征码以特征文件库的方式提供给用户,与软件包分离,实现了特征码的动态加载和调用,用户不需要更新产品软件版本,不需要重启设备就可以很方便的更新升级应用识别能力,另外当出现一种新应用时,直接通过特征库的加载就能够满足动态支持;
在某些接口使用应用统计功能时,安全设备会自动识别经过接口的流量并进行分类(深度流检测技术 - DFI),对不同应用的流量进行统计,网络管理员可以及时掌握当前环境的流量特征,从而优化网络部署,合理分配资源;
日志审计是安全策略拦截生成的安全策略防护日志 + 系统运行过程日志。两类日志共同构成了设备的运行与防护功能,当产生攻击匹配到防护策略或设备运作出现故障时即可以通过查阅和检索日志分析其具体原因,以到达优化网络、排查故障等目的。
安全防护日志时安全防护策略拦截的结果展示,根据日志可以判断某个流量/数据包是否为攻击流量/攻击数据包,可以根据其攻击时间、源IP地址、目标IP地址、攻击方式、攻击数据包/流的相关特征(部分安全设备可以保存攻击流,取决于其策略是否支持与配置)、匹配的防护策略标识进行相应的判断,这种行为统称为流量分析与溯源研判。
前面提到过日志接入型平台(态势感知):大多数业务环境都会将其内网的安全防护设备产生的安全防护日志进行统一收录到对应平台上进行查阅和检索,这种方式可以减少大量的设备运维操作与日志查找所消耗的时间,此种行为为hvv的蓝方(防守方)首要溯源手段。
系统运行日志主要包含以下几种日志:
⾸先,需要审核满⾜的要求:
对上述八点要求的具体解释内容如下:
此需求的提出是为了满⾜持续监测某安全防护设备状态,需要明确设备当前的使⽤状态与使⽤环境是否对设备造成不可逆影响导致产生故障问题使得业务受损。以持续监测⼿段来实现对安全防护设备的健康状态查询。常见的监控信息主要有:CPU使⽤率、Mem使⽤率、磁盘使⽤率、关键进程信息、关键服务存活状态(若是需要精确到对应的服务上,如容器Docker服务就需要监控到某个容器的运行状态,而不仅仅是Docker服务的运行状态);前述的持续监控⼿段可以使⽤相关脚本来满⾜实现,也可使⽤部分⼚商设备提供的可视化页面进⾏监控(不部分安全设备均支持)。
此需求的提出是为了了解内⽹数据流量的分类与占⽐情况,可以对内⽹数据进⾏统计,以查询当前办公环境下是否存在恶意攻击或⾮办公⽹络流量等⾏为,常⻅设备主要为两类:DFI 深度流监测设备、DPI 深度包检测设备(参考本文5.1与5.3章节)。
需要注意的是流量审计为四层数据分析,⽽数据检验为七层数据分析,两者最⼤的不同点是数据层级的不同。流量审计需求主要是为了进⾏流量统计和拦截,而数据校验是为了实现协议的字段分析与检测。
四层的流量统计分类为TCP/UDP;而七层协议数据常⻅的分类协议为http/https的web协议,如apache、nginx等常⻅的web中间件。
安全防护⼿段主要突出的结果为拦截。常⻅使⽤设备是防⽕墙,实现方式是以五元组进⾏限制,以达到其防护⽬的。
此需求可以称之为态势感知。溯源即确认攻击流,进⾏复现和追源,需要具备漏洞挖掘与检测能⼒,⼤多数第三⽅⼚商都将安全设备的防护⽇志存储在本机设备的磁盘内(也具体对外发送的功能,如⽀持Syslog协议 - UDP 514),因此就具有对应的模块内容进⾏⽇志查看,以实现对攻击的策略判定(此处理解为该设备如何确认当前拦截的流量是攻击⾏为的解释),此类⽇志⼀般包含信息如下:基本五元组信息、协议请求参数、协议对应数据信息等分析数据
⽇志信息通常说设备策略执行的记录情况,安全设备与⽹络设备都需要具备完整的⽇志记录⾏为。
⽇志信息分为两类:⼀是此设备策略防护⽇志 - 安全防护⽇志、⼆是此设备运⾏状态⽇志 - 系统运⾏⽇志(参考本文6章节);
冗余机制的出现主要解决了三⼤问题(具体分级参考本文1.3章节):
⽹络布局结构⼀旦确立之后,很难会再次发⽣⼤量的改动。
因此就需要进⾏设计后续的升级环境下,设备的添加位置(需要设计⼀个地⽅,能够以旁路⽅式修改当前环境下的所有流量或数据,如核心交换机上旁路出一个接口连接汇聚交换机进行旁路设备的部署与划分)。
如以旁路⽅式部署⼀个管控平台,能够对⽹络进⾏管理、控制、升级、割接、分流、监控、执⾏等多种常⻅操作,对于现网环境的变动降低至最低。