后来这个词语引入到了网络中,把从外向内的网络入侵行为看做是火灾,防止这种入侵的策略叫做防火墙。后来,防火墙不但用于防范外网,例如:对企业内网的 DoS 攻击或非法访问等,也开始防范从内部网络向互联网泄露信息、把内部网络作为攻击跳板等行为。
硬件防火墙可以实现 CIA 的机密性( Confidentiality )、完整性( Integrity )、可用性( Availability )这三种类型的对应策略。小企业会在局域网和互联网的边界部署防火墙。
2、防火墙有哪些类型?
防火墙可分为软件防火墙和硬件防火墙。软件防火墙又可分为个人防火墙和网关防火墙。
个人防火墙
个人防火墙运行在 PC 上,用于监控 PC 和外网的通信信息。在 Windows 操作系统中集成了 Windows 防火墙。
杀毒软件产品厂家的个人防火墙一般包含在安全软件套件里。
网关防火墙
在网络中的网关上配置防火墙的功能,能对网络中的流量进行策略控制,这就是网关防火墙。
网关防火墙分为两种,一种是在 Windows 、Linux 等操作系统上安装并运行防火墙软件的软件网关防火墙,另一种是使用专用设备的硬件网关防火墙。
个人防火墙主要监控 PC 的通信流量,网关防火墙是监控网络中所有终端的通信流量,在网关处进行策略控制。
防火墙有安全区域( Security Zone ,简称区域)的概念。防火墙的物理接口和逻辑接口会分配到不同的区域中,也就是将防火墙的网段分别划分到不同的区域中。一个网络接口只能属于一个区域。
在同一个区域内,可以自由进行通信,但是跨区域通信,必须符合安全策略才行。当然,防火墙也可以设置安全策略,根据源或目的地址等条件,判断在同一区域内能否允许通信。
信任区域( Trust Zone ),也叫做内部区域,所属接口是 G1/1 、tunnel1 、Loopback1 ,是指公司内部网络区域,表示可以信赖的区域。通常区域内是可以自由通信。 不信任区域( Untrust Zone ),也叫做外部区域,所属接口是 G1/2 ,是指公司外部网络区域,比如互联网。与信任区域相对,是不可信任的区域,通常只会拦截通信,不允许所有通信。也可以设置安全策略,允许从信任区域到不信任区域的通信。 DMZ 区域( DeMilitarized Zone ),所属接口是 G1/4 ,是对外公开的服务器使用的区域,与信任区域是分开的。
为了防止攻击,从外部网络访问内部网络的通信会被防火墙拦截,但是内部网络中有对外公开的服务器,比如 Web 服务器,对于 Web 请求就不能一刀切的拦截。但如果把服务器放在内部网络中,一旦从外部网络恶意入侵,就会导致内网的重要数据泄露。因此,我们把需要对外公开的服务器放在 DMZ 中,这样即使服务器遭到入侵,DMZ 区域也无法直接访问内部网络。 自定义区域( Custom Zone),这里说的是上图 Sales Zone ,所属接口是 G1/3 ,只有销售部门员工才能访问的区域,是人为划分和定义的自定义区域。当然,也能根据具体内容、安全策略描述和管理目的自定义其它区域。
20、什么是安全策略?
这里的网络,是指不在同一个局域网的网络,比如:成都机构或广州总部的任意一个站点。因为是站点( site )之间的连接,所以叫做点对点 VPN 。
中心型 VPN
中心型 VPN( hub and spoke VPN )是星型拓扑结构,也就是一个中心站点的设备,连接多个远程站点的设备,形成的网络结构。中心站点( center site )位于总部的网络,也就是数据中心,成为整个结构的核心站点。一般是电信供应商提供的 VPN 业务,以电信供应商的基础设施为中心站点,通过 VPN 连接其它站点。
远程接入 VPN
在家里,或出差在外时,通过互联网使用 PC 上的软件,与公司的 VPN 设备建立 IPsec 隧道,能够访问公司内部网络的拓扑结构,叫做远程接入 VPN 。
如果主机检查结果 OK ,就允许客户端的 SSL-VPN 连接,就能够从外部网络访问公司内网。如果结果是 NO ,就拒绝客户端的 SSL-VPN 连接,或只能进行软件升级等特定范围的访问操作。
39、什么是 DoS 攻击?
DoS 全称是 Denial of Service ,也就是无法继续提供服务的意思。这里的服务是指服务器的应用程序服务,比如客户端发起 HTTP 请求时,服务器能够发出 HTTP 响应就说明完成了 HTTP 服务。DoS 攻击是针对服务器和网络设备发起的攻击,制造远超预先设计的访问量,让服务器和网络设备无法正常的回复响应报文,导致被攻击的系统无法提供服务。DoS 攻击也可以利用操作系统或程序的安全漏洞等,以少量流量使系统发生异常。在 DoS 中,通过僵尸网络的多个跳板,对服务器发起攻击的方式叫做 DDoS( Distributed Denial of Service )攻击。
40、DoS 攻击有哪些类型?防火墙有什么防范措施?
Syn Flood :发送大量 TCP SYN 报文,导致服务器资源消耗过度,一段时间内无法提供服务的状态。在防火墙内,定义每秒允许通过的 SYN 报文数量,当网络中的 SYN 报文超过这个值时,就会执行 SYN Cookie 的策略。SYN Cookie 策略是当服务器收到客户端的 SYN 报文时,不建立 TCP 连接,而是将 TCP 头部内容的散列值当做序列号放入 SYN-ACK 报文中返回。之后收到包含正确响应编号的 ACK 报文时,才将会话信息存储在内存中,有效防止攻击对服务器内存的消耗。 ICMP Flood :也叫做 ping flood ,发送大量的 ICMP echo request 报文来消耗服务器内存,让服务器暂时无法提供服务。防火墙通过定义一秒内允许的最大 ICMP 报文数量,对超过这个值的 ICMP 报文暂时不处理。 UDP Flood :发送大量的 UDP 报文来消耗服务器的内存,使得服务器暂时无法提供服务。防火墙通过定义一秒内允许的最大 UDP 报文数量,对超过这个值的 UDP 报文暂时不处理。 IP Flood :发送大量的 IP 报文来消耗服务器的内存,使得服务器暂时无法提供服务。防火墙通过定义一秒内允许的最大 IP 报文数量,对超过这个值的 IP 报文暂时不处理。 Land :发送源地址和目的地址相同的报文。受到这种攻击、又有安全漏洞的设备,会不断向自己转发数据而导致宕机。防火墙对于这类报文,一律丢弃。 Tear Drop :发送伪造的、含有 offset 的非法 IP 分片报文。这类攻击对于有安全漏洞的设备而言,会发生无法重新生成报文的现象发生,导致宕机。防火墙对于这类报文,一律丢弃。 Ping of Death :发送超过 IP 报文最大长度 65535 的 ping 。这类攻击对于有安全漏洞的设备而言,会导致无法运行的情况发生。防火墙对于这类报文,一律丢弃。 Smurf :把攻击对象的地址设置成源地址,并广播发送 ICMP echo request 报文,使得攻击对象收到大量 ICMP echo reply 报文而消耗带宽资源。 Fraggle : 同 Smurf 类似,UDP 替代 ICMP 发起攻击,同时利用 echo 、Chargen 、daytime 、qotd 等多种端口。防火墙一般关闭这类端口,或使用安全策略进行拦截。 Connection Flood :反复生成大量长时间为 open 状态的连接,占据攻击对象的 socket 资源。如果服务器端没有最大连接数目的限制,就会发生系统崩溃。 Reload :在 Web 浏览器中连续按下 F5 键,让 Web 页面反复执行刷新操作,也叫做 F5 攻击。在 Web 通信量大时,会让服务器负载加重。
41、如何防御 DoS ?
防御 DoS 就是限制异常高速通信流量,一般通过设置区域、网络接口、网络等单位来实现。
DoS 防御也可以拦截含有非法内容或安全性低的报文,这类报文让防火墙或路由器处理的话,会导致资源的浪费,因此需要使用专门的 DoS 防御功能来阻挡这类攻击。
42、什么是端口扫描?
IP 地址欺骗( IP Spoofing ):为了通过防火墙,避免被监控日志记录,伪造 IP 头部中源 IP 地址的攻击方式。 分片报文:分片的 IP 报文,由于安全性弱,常用于攻击,因此防火墙会有拦截分片报文的功能。如果报文和通信链路的 MTU 大小一致,就不会发送分片,这个功能也不会影响正常的通信。 ICMP 分片:跟 IP 分片报文类似,防火墙也有拦截 ICMP 分片报文的功能。 巨型 ICMP 报文:防火墙通过拦截一定大小以上的 ICMP 报文,就能避免 Ping of Death 攻击。 非法 ICMP 报文:如果接收的 ICMP 报文中,头部出现未定义的值时,需要进行额外的异常处理。防火墙会对这类非法的 ICMP 报文进行拦截。 SYN 以外的 TCP 报文控制:TCP 会话开始前,会发送 SYN 报文。如果在未确认的 TCP 会话中,收到了除 SYN 以外的字段位是 1 的 TCP 报文,很有可能就是端口扫描等攻击,就需要通过防火墙拦截这类报文。
45、什么是 IDS/IPS ?
IDS ,全称 Intrusion Detection System ,即入侵检测系统。IPS ,全称 Intrusion Prevention System ,即入侵防御系统,合称为 IDS/IPS 。
IDS 负责检测非法入侵,并告知系统管理员,而 IPS 是通过设置对非法入侵使用的协议和应用程序进行拦截。
IDS/IPS 能够检测的威胁有:
DoS 攻击
P2P 造成的信息泄露
运行蠕虫、特洛伊木马、键盘记录器等恶意软件
入侵局域网和入侵侦查行为
当 IDS/IPS 检测到入侵行为后,会进行相应处理:
通知管理员,通过电子邮件或 SNMP 等方式
记录日志
拦截通信,向攻击方发送 TCP RST 报文
46、什么是 Deep Inspection ?
防火墙的 Deep Inspection 功能,能够针对特定的应用层协议,重组应用程序数据流的 TCP 数据段,检测其中是否包含了非法应用程序参数。
47、IDS/IPS 和 Deep Inspection 能够检测和拦截哪些类型的攻击?
信息泄露:攻击者利用带有恶意脚本的邮件,或附带恶意软件的 URL 地址发起的攻击。攻击成功的话,能够获取对方的机密信息。 执行代码:向服务器发送非法数据,让服务器接受并执行远端的代码。 DoS 攻击:发送大量报文,让服务器的 CPU 、内存使用率上升,妨碍服务器正常提供服务的攻击。 缓存溢出( Buffer Overflow ):通过恶意程序诱导服务器运行内存超过上限,导致缓存溢出的攻击。 SQL 注入:针对 Web 应用程序,使用数据库 SQL 语言,对数据库进行非法操作的攻击。 暴力破解( Brute Force Attack ):也叫循环攻击,使用密码字典等工具,反复尝试管理员密码的攻击。为了防止这类攻击,需要执行输错 3 次密码就切断会话的类似策略。 跨站脚本攻击( Cross-site Scripting ):简称 CSS 或 XSS 。利用 Web 应用程序的漏洞,在提交页面表单时,通过服务器执行携带 HTML 标签的脚本,到达劫持会话或钓鱼的目的。 exploit 攻击:利用软件安全漏洞发起的攻击中使用的程序或脚本。 浏览器劫持:通过操作携带恶意软件的浏览器,在用户浏览 Web 页面时,篡改显示的页面形式和内容。一般会导致持续弹出广告栏、自动添加 URL 连接、跳转其它网页失败的情况。 钓鱼:使用伪造官方网站站点 URL 连接的邮件或网站,骗取用户的个人信用卡和银行账号信息。 僵尸网络:通过僵尸程序感染多台 PC ,并根据攻击方命令,同时发送垃圾和实施 DoS 等攻击。主要通过使用 IRC 对僵尸下达攻击命令。
48、什么是 CVE ?