软考教材重点内容 信息安全工程师 第 8 章 防火墙技术原理与应用
软考教材重点内容 信息安全工程师 第 8 章防火墙技术原理与应用

8.1.1 防火墙概念
根据网络的安全信任程度和需要保护的对象,人为地划分若干安全区域,这些安全区域有:
公共外部网络,如 Internet;
内联网(CIntranet),如某个公司或组织的专用网络,网络访问限制在组织内部;
外联网(Extranet ),内联网的扩展延伸,常用作组织与合作伙伴之间进行通信;
军事缓冲区域,简称 DMZ,该区域是介于内部网络和外部网络之间的网络段,常放置公共服务设备,向外提供信息服务。
防火墙的安全策略有两种类型:
(1)白名单策略:只允许符合安全规则的包通过防火墙,其他通信包禁止;
(2)黑名单策略:禁止与安全规则相冲突的包通过防火墙,其他通信包都允许。查和配置更新。
防火墙的主要功能
1. 过滤非安全网络访问。将防火墙设置为只有预先被允许的服务和用户才能通过防火 墙,禁止未授权的用户访问受保护的网络,降低被保护网络受非法攻击的风险。
2.限制网络访问。防火墙只允许外部网络访问受保护网络的指定主机或网络服务,通常受保护网络中的 Mail,FTP, WWW 服务器等可让外部网访问,而其他类型的访问则 予以禁止。防火墙也用来限制受保护网络中的主机访问外部网络的某些服务,例如某 些不良网址。
3.网络访问审计。防火墙是外部网络与受保护网络之间的唯一网络通道,可以记录所有 通过它的访问,并提供网络使用情况的统计数据。依据防火墙的日志,可以掌握网络 的使用情况,例如网络通信带宽和访问外部网络的服务数据。防火墙的日志也可用于 入侵检测和网络攻击取证。
4.网络带宽控制。防火墙可以控制网络带宽的分配使用,实现部分网络质量服务(QoS) 保障。
5.协同防御。防火墙和入侵检测系统通过交换信息实现联动,根据网络的实际情况配置 并修改安全策略,增强网络安全。
防火墙的安全风险。
(1)网络安全旁路。防火墙只能对通过它的网络通信包进行访问控制,而未经过它的网络通信就无能为力。
(2)防火墙功能缺陷:
1. 防火墙不能完全防止感染病毒的软件或文件传输。防火墙是网络通信的瓶颈,因为己有的病毒、操作系统以及加密和压缩二进制文件的种类太多,以致不能指望防火墙逐 个扫描每个文件查找病毒,只能在每台主机上安装反病毒软件。
2. 防火墙不能防止基于数据驱动式的攻击。当有些表面看来无害的数据被邮寄或复制到 主机上并被执行而发起攻击时,就会发生数据驱动攻击效果。防火墙对此无能为力。
3. 防火墙不能完全防止后门攻击。防火墙是粗粒度的网络访问控制,某些基于网络隐蔽 通道的后门能绕过防火墙的控制。例如 http tunnel 等。
(3)防火墙安全机制形成单点故障和特权威胁。防火墙处于不同网络安全区域之间,所有区域之间的通信都经过防火墙,受其控制,从而形成安全特权。一旦防火墙自身的安全管理失效,就会对网络造成单点故障和网络安全特权失控。
(4)防火墙无法有效防范内部威胁。处于防火墙保护的内网用户一旦操作失误,网络攻击者就能利用内部用户发起主动网络连接,从而可以躲避防火墙的安全控制。
(5)防火墙效用受限于安全规则。防火墙依赖于安全规则更新,特别是采用黑名单策略的防火墙,一旦安全规则更新不及时,极易导致防火墙的保护功能失效。
8.2 防火墙类型与实现技术
按照防火墙的实现技术及保护对象,常见的防火墙类型可分为包过滤防火墙、代理防火墙、下一代防火墙、Web 应用防火墙、数据库防火墙、工控防火墙。防火墙的实现技术主要有包过滤、状态检测、应用服务代理、网络地址转换、协议分析、深度包检查等。
8.2:1 包过滤
包过滤是在 IP 层实现的防火墙技术,包过滤根据包的源 IP 地址、目的 IP 地址、源端口、目的端口及包传递方向等包头信息判断是否允许包通过。此外,还有一种可以分析包中的数据区内容的智能型包过滤器。基于包过滤技术的防火墙,简称为包过滤型防火墙(Packet Filter)。

8.2.2 状态检查技术
基于状态的防火墙通过利用 TCP 会话和 UDP“伪”会话的状态信息进行网络访问机制。采用状态检查技术的防火墙首先建立并维护一张会话表,当有符合己定义安全策略的 TCP 连接或 UDP 流时,防火墙会创建会话项,然后依据状态表项检查,与这些会话相关联的包才允许通过防火墙。
状态防火墙处理包流程的主要步骤如下。
(1)接收到数据包。
(2)检查数据包的有效性,若无效,则丢掉数据包并审计。
(3)查找会话表;若找到,则进一步检查数据包的序列号和会话状态,如有效,则进行地址转换和路由,转发该数据包;否则,丢掉数据包并审计。
(4)当会话表中没有新到的数据包信息时,则查找策略表,如符合策略表,则增加会话条目到会话表中,并进行地址转换和路由,转发该数据包;否则,丢掉该数据包并审计。
8.2.3 代理服务器
通常由一组按应用分类的代理服务程序和身份验证服务程序构成。每个代理服务程序用到一个指定的网络端口,代理客户程序通过该端口获得相应的代理服务。例如,IE 浏览器支持多种代理配置,包括 Http, FTP,Socks 等。
应用服务代理技术的优点主要有:
1 不允许外部主机直接访问内部主机;
2 支持多种用户认证方案;
3 可以分析数据包内部的应用命令;
4 可以提供详细的审计记录。
应用服务代理技术的缺点是:
1 速度比包过滤慢;
2 对用户不透明;
3 与特定应用协议相关联,代理服务器并不能支持所有的网络协议。
8.2.4 网络地址转换技术
实现网络地址转换的方式主要有:
静态 NAT ( StaticNAT、NAT 池(pooledNAT)和端口 NAT ( PAT)三种类型。其中静态 NAT 设置起来最为简单,内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。而 NAT 池则是在外部网络中配置合法地址集,采用动态分配的方法映射到内部网络。PAT 则是把内部地址映射到外部网络的一个 IP 地址的不同端口上。目前,许多路由器产品都具有 NAT 功能。开源操作系统 Linux 自带的 IPtables 防火墙支持地址转换技术.
8.2.5 Web 防火墙技术
Web 应用防火墙是一种用于保护 Web 服务器和 Web 应用的网络安全机制。其技术原理是根据预先定义的过滤规则和安全防护规则,对所有访问 Web 月及务器的 HTTP 请求和服务器响应,进行 HTTP 协议和内容过滤,进而对 Web 服务器和 Web 应用提供安全防护功能。Web 应用防火墙的 HTTP 过滤的常见功能主要有允许/禁止 HTTP 请求类型、HTTP 协议头各个字段的长度限制、后缀名过滤、URL 内容关键字过滤、Web服务器返回内容过滤。Web 应用防火墙可抵御的典型攻击主要是 SQL 注入攻击、XSS 跨站脚本攻击、Web应用扫描、Webshell, Cookie 注入攻击、CSRF 攻击等。目前,开源 Web 应用防火墙有 ModSecurity, WebKnight,ShadowDaemon 等。
8.2.6 数据库防火墙技术
数据库防火墙是一种用于保护数据库服务器的网络安全机制。其技术原理主要是基于数据通信协议深度分析和虚拟补丁,根据安全规则对数据库访问操作及通信进行安全访问控制,防止数据库系统受到攻击威胁。其中,数据库通信协议深度分析可以获取访问数据库服务器的应用程序数据包的“源地址、目标地址、源端口、目标端口、SQL 语句”等信息,然后依据这些信息及安全规则监控数据库风险行为,阻断违规SQL 操作、阻断或允许合法的 SQL 操作执行。虚拟补丁技术通过在数据库外部创建一个安全屏障层,监控所有数据库活动,进而阻止可疑会话、操作程序或隔离用户,防止数据库漏洞被利用,从而不用打数据库厂商的补丁,也不需要停止服务,可以保护数据库安全。
8.2.7 工控防火墙技术
工业控制系统专用防火墙简称为工控防火墙,是一种用于保护工业设备及系统的网络安全机制。其技术原理主要是通过工控协议深度分析,对访问工控设备的请求和响应进行监控,防止恶意攻击工控设备,实现工控网络的安全隔离和工控现场操作的安全保护。工控防火墙与传统的网络防火墙有所差异,工控防火墙侧重于分析工控协议,主要包括 Modbus TCP 协议、IEC 61850 协议、OPC 协议、Ethernet/IP 协议和 DNP3协议等。同时,工控防火墙要适应工业现场的恶劣环境及实时性高的工控操作要求。
8.2.8 下一代防火墙技术
相对于传统网络防火墙而言,下一代防火墙除了集成传统防火墙的包过滤、状态检测、地址转换等功能外,还具有应用识别和控制、可应对安全威胁演变、检测隐藏的网络活动、动态快速响应攻击、支持统一安全策略部署、智能化安全管理等新功能。
(1)应用识别和管控。不依赖端口,通过对网络数据包深度内容的分析,实现对应用层协议和应用程序的精准识别,提供应用程序级功能控制,支持应用程序安全防护。
(2)入侵防护((IPS)。能够根据漏洞特征进行攻击检测和防护,如 SQL 注入攻击。
(3)数据防泄露。对传输的文件和内容进行识别过滤,可准确识别常见文件的真实类型,如 Word, Excel,PPT, PDF 等,并对敏感内容进行过滤。
(4)恶意代码防护。采用基于信誉的恶意检测技术,能够识别恶意的文件和网站。构建 Web 信誉库,通过对互联网站资源(IP, URL、域名等)进行威胁分析和信誉评级,将含有恶意代码的网站资源列入 Web 信誉库,然后基于内容过滤技术阻挡用户访问不良信誉网站,从而实现智能化保护终端用户的安全。
(5) URL 分类与过滤。构建 URL 分类库,内含不同类型的 URL 信息(如不良言论、网络“钓鱼”、论坛聊天等),对与工作无关的网站、不良信息、高风险网站实现准确、高效过滤。
(6)带宽管理与 QoS 优化。通过智能化识别业务应用,有效管理网络用户/IP 使用的带宽,确保关键业务和关键用户的带宽,优化网络资源的利用。
(7)加密通信分析。通过中间人代理和重定向等技术,对 SSL, SSH 等加密的网络流量进行监测分析。
8.2.9 防火墙共性关键技术
防火墙涉及多种技术,其中关键技术主要有以下几种。
1.深度包检测
深度包检测(Deep Packet Inspection, DPI,是一种用于对包的数据内容及包头信息进行检查分析的技术方法。传统检查只针对包的头部信息,而 DPI 对包的数据内容进行检查,深入应用层分析。DPI 运用模式(特征)匹配、协议异常检测等方法对包的数据内容进行分析。
2.操作系统
防火墙的运行依赖于操作系统,操作系统的安全性直接影响防火墙的自身安全。目前,防火墙的操作系统主要有 Linux, Windows、设备定制的操作系统等。操作系统的安全增强是防火墙的重要保障。
3.网络协议分析
防火墙通过获取网络中的包,然后利用协议分析技术对包的信息进行提取,进而实施安全策略检查及后续包的处理。
8.4.1,基于双宿主主机防火墙结构
双宿主主机结构是最基本的防火墙结构。这种系统实质上是至少具有两个网络接口卡的主机系统。在这种结构中,一般都是将一个内部网络和外部网络分别连接在不同的网卡上,使内外网络不能直接通信。对从一块网卡上送来的 IP 包,经过一个安全检查模块检查后,如果是合法的,则转发到另一块网卡上,以实现网络的正常通信;如果不合法,则阻止通信。这样,内、外网络直接的 IP 数据流完全在双宿主主机的控制之中,如图 8-12 所示。

8.4.2 基于代理型防火墙结构
双宿主主机结构由一台同时连接内、外网络的主机提供安全保障,代理型结构则不同,代理型结构中由一台主机同外部网连接,该主机代理内部网和外部网的通信。同时,代理型结构中还通过路由器过滤,代理服务器和路由器共同构建一个网络安全边界防御架构,如图 8-13 所示。

屏蔽子网的防火墙结构
如图 8-14 所示,屏蔽子网结构是在代理型结构中增加一层周边网络的安全机制,使内部网络和外部网络有两层隔离带。周边网络隔离堡垒主机与内部网,减轻攻击者攻破堡垒主机时对内部网络的冲击力。攻击者即使攻破了堡垒主机,也不能侦听到内部网络的信息,不能对内部网络直接操作。基于屏蔽子网的防火墙结构的特点如下: 应用代理位于被屏蔽子网中,内部网络向外公开的服务器也放在被屏蔽子网中,外部网络只能访问被屏蔽子网,不能直接进入内部网络。
两个包过滤路由器的功能和配置是不同的。包过滤路由器 A 的作用是过滤外部网络对被屏蔽子网的访问。包过滤路由器 B 的作用是过滤被屏蔽子网对内部网络的访问。所有外部网络经由被屏蔽子网对内部网络的访问,都必须经过应用代理服务器的检查和认证。
优点:安全级别最高。
缺点:成本高,配置复杂。

8.5.3 IPtables 防火墙应用参考
【此部分为新增 linux 防火墙案例,要求了解基本命令】
#1 .Delete all existing rules
Iptables -F
#2 .Set default chain policies
Iptables –P INPUT DROP
Iptables –P FORWARD DROP
Iptables –P OUTPUT DROP
# 3 .Block a specific ip-address
#BLOCK THIS IP="x.x.x.x"
#iptables -A INPUT-s "$BLOCK THIS_ IP” - j DROP
# 4 .Allow ALL incoming SSH
#ptables –A INPUT-i eth0 –p tcp –dpor 22 -m state --state NEW,ESTABLISHED- j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
# 5 .Allow incoming SSH only from a sepcific network
#iptables-A INPUT-i eth0 -ptcp-s X.Y.Z.0/24 --dport 22 -m state --state
NEW,ESTABLISHED-j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
#6 .Allow incoming HTTP
#iptables –A INPUT -i eth0 –p tcp –dport 80-state --state NEW,ESTABLISHED-j ACCEPT
#iptables -A OUTPUT -o eth0 –p tcp –sport 80 -m state --state ESTABLISHED-j ACCEPT
# Allow incoming HTTPS
#iptables –A INPUT -i eth0 -ptcp --dport 443 -m state --state NEW,ESTABLISHED-j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
参考官方教材 P180 页。
更多推荐

所有评论(0)