问题描述
由于 IP 网络规模庞大,导致网络设备数量众多、通信协议层出不穷。同时,IP 网络的管理也变得极其复杂,安全性和业务灵活性以及安全性和管理维护便利性之间存在着矛盾。不同技术能力、管理水平的管理人员,对这些矛盾的处理能力也参差不齐。管理员往往追求业务可用性,而忽略了安全防御能力,导致必要的安全措施没有得到妥善的配置,设备本身的安全能力无法发挥;
该笔记将记录:常见的网络设备安全加固策略,对一些常见的安全配置进行了举例说明;
解决方案
网络安全是一个系统工程,网络当中的每一样东西都有可能是被攻击的目标,网络设备本身当然也不例外;
网络设备受到的常见攻击有:
1)恶意登录网络设备执行非法操作,例如重启设备;
2)伪造大量控制报文造成设备 CPU 利用率升高,例如发送大量的 ICMP 报文;
常见设备安全加固策略
常见的设备安全加固策略主要可以从以下方面部署:
1)关闭不使用的业务和协议端口
2)废弃不安全的访问通道
3)基于可信路径的访问控制
4)本机防攻击
关闭不使用的业务和协议端口
在分析业务需求的基础上,按照最小授权原则,关闭不使用的业务和协议端口;
1)不使用的物理端口,应该默认配置为关闭,即使插上网线也不能通信
2)不使用的协议端口,应该默认配置为关闭,不对外提供访问。如常见的 telnet、FTP、HTTP 等端口;
在华为网路设备中:
<SW1> system-view # 在 SW1 上关闭 FTP 功能,同时关闭多个不使用的端口 [SW1] undo ftp server Warning: The operation will stop the FTP server. Do you want to continue? [Y/N]:y Info: Succeeded in closing the FTP server. # 关闭不使用的端口,防止任意接入 [SW1]port-group protgroup1 [SW1-port-group-protgroup1]group-member GigabitEthernet 0/0/4 to GigabitEthernet0/0/48 [SW1-port-group-protgroup1]shutdown
废弃不安全的访问通道
在业务需求分析的基础上,优先满足业务的访问需求。然后,在同个访问需求有多种访问通道服务的情况下,为保证设备安全,应该废弃不安全的访问通道,而选择安全的访问通道;
访问需求 | 不安全的通道 | 安全的通道 |
---|---|---|
远程登录 | Telnet | SSHv2 |
文件传输 | FTP,TFTP | SFTP |
网元管理 | SNMP v1/v2 | SNMP v3 |
网管登录 | HTTP | HTTPS |
通过命令行、WEB、网管等方式登录设备时,建议采用安全加密的通道 SSH、HTTPS、SNMPv3;
设备间、设备和终端间,当进行数据传输时,也建议采用加密的数据传输协议(SFTP);
设备数据传输安全常见场景及采用协议:
用户远程登录:
1)Telnet:采用 TCP 协议进行明文传输;
2)STelnet:基于 SSH 协议,提供安全的信息保障和强大的认证功能;
设备文件操作:
1)FTP:支持文件传输以及文件目录的操作,具有授权和认证功能,明文传输数据;
2)TFTP:只支持文件传输,不支持授权和认证,明文传输数据;
3)SFTP:支持文件传输及文件目录的操作,数据进行了严格加密和完整性保护;
基于可信路径的访问控制
问题:IP 网络的开放性决定了,只要路由可达,任何人都可以对目标主机进行访问或者攻击;
分析:对于某一个主机而言,访问它的客户端的报文历经的路径通常是固定的,尤其是在网络边缘,这种路径的固定特性表现得更加明显;
方案:可以在设备上部署基于可信路径的访问控制策略,以提升网络的安全性;
部署 URPF,可以判定某个报文的源地址是否合法,如果该报文的路径与 URPF 学习的路径不符,丢弃该报文,用 URPF 可以有效防范 IP 地址欺骗;
URPF(Unicast Reverse Path Forwarding,单播逆向路径转发)分为严格模式和松散模式以及允许匹配缺省路由的方式。其原理是当设备转发 IP 报文时,检查数据报文的源 IP 地址是否合法,检查的原理是根据数据包的源 IP 地址查路由表;
1)对于严格模式:如果报文能匹配明细路由,并且入接口跟匹配路由的出接口一致,则允许报文上送,否则丢弃报文;
2)对于松散模式:如果报文匹配上明细路由,则运行报文上送,否则丢弃报文,不检查接口是否匹配。默认情况下,会认为缺省路由不存在,不会去匹配缺省路由,只有进行了配置时候,才会去匹配缺省路由的;
3)对允许匹配缺省路由的模式,必须和严格模式一起配置,报文匹配明细路由或者缺省路由,并且报文入接口跟匹配路由的出接口一致才上送,否则丢弃。不支持缺省路由与松散模式一起配置,因为这样无法达到防攻击的效果。松散模式和严格模式互斥,只能配置一种模式;
本机防攻击
在网络中,存在着大量针对 CPU 的恶意攻击报文以及需要正常上送 CPU 的各类报文。针对 CPU 的恶意攻击报文会导致 CPU 长时间繁忙的处理攻击报文,从而引发其他业务的断续甚至系统的中断;大量正常的报文也会导致 CPU 占用率过高,性能下降,从而影响正常的业务;
为了保护 CPU,保证 CPU 对正常业务的处理和响应,设备提供了本机防攻击功能。本机防攻击针对的是上送 CPU 的报文,主要用于保护设备自身安全,保证已有业务在发生攻击时的正常运转,避免设备遭受攻击时各业务的相互影响;
本机防攻击包括两部分:CPU 防攻击针;攻击溯源;
CPU 防攻击
对上送 CPU 的报文进行限制和约束,使单位时间内上送 CPU 报文的数量限制在一定的范围之内,从而保护 CPU 的安全,保证 CPU 对业务的正常处理。 对上送 CPU 的报文进行限制和约束,使单位时间内上送 CPU 报文的数量限制在一定的范围之内,从而保护 CPU 的安全,保证 CPU 对业务的正常处理;
多级安全机制,保证设备的安全,实现了对设备的分级保护。设备通过以下策略实现对设备的分级保护:
第一级:通过黑名单来过滤上送 CPU 的非法报文;
第二级:CPCAR(Control Plane Committed Access Rate)。对上送 CPU 的报文按照协议类型进行速率限制,保证每种协议上送 CPU 的报文不会过多;
第三级:对上送 CPU 的报文,按照协议优先级进行调度,保证优先级高的协议先得到处理;
第四级:对上送 CPU 的报文统一限速,对超过统一限速值的报文随机丢弃,保证整体上送 CPU 的报文不会过多,保护 CPU 安全;
动态链路保护功能的 CPU 报文限速,是指当设备检测到 SSH Session 数据、Telnet Session 数据、HTTP Session 数据、FTP Session 数据以及 BGP Session 数据建立时,会启动对此 Session 的动态链路保护功能,后续上送报文如匹配此 Session 特征信息,此类数据将会享受高速率上送的权利,由此保证了此 Session 相关业务的运行可靠性、稳定性;
攻击溯源原理
针对 DoS(Denial of Service,拒绝服务)攻击进行防御。设备通过对上送 CPU 的报文进行分析统计,然后对统计的报文设置一定的阈值,将超过阈值的报文判定为攻击报文,再对这些攻击报文根据报文信息找出攻击源用户或者攻击源接口,最后通过日志、告警等方式提醒管理员以便管理员采用一定的措施来保护设备,或者直接丢弃攻击报文以对攻击源进行惩罚;
攻击溯源包括报文解析、流量分析、攻击源识别和发送日志告警通知管理员以及实施惩罚四个过程;
通过图中所示的四个过程,找出攻击源,然后管理员通过 ACL 或配置黑名单的方式限制攻击源,以保护设备 CPU;