恶意用户或软件通过网络对计算机系统的入侵或攻击已成为对计算机安全最严重的威胁之一。防火墙和入侵检测系统是保障系统安全的重要手段。本文将为基础小白介绍这两种安全技术的基本概念、工作原理及应用实例,帮助大家更好地理解和应用这些技术。
1. 防火墙
防火墙是把一个组织的内部网络与其他网络(通常就是互联网)隔离开的软件和硬件的组合。防火墙通过严格控制进出网络边界的分组,禁止任何不必要的通信,来减少潜在入侵的发生,尽可能降低安全威胁所带来的风险。
1.1 防火墙的基本原理
根据所采用的技术,防火墙一般分为两类:分组过滤路由器和应用级网关。
1.1.1 分组过滤路由器
分组过滤路由器是一种具有分组过滤功能的路由器,它根据过滤规则对进出内部网络的分组执行转发或者丢弃。过滤规则基于分组的网络层或运输层首部的信息,如源/目的地址、源/目的端口号、协议类型、标志位等。过滤规则通常以访问控制列表(ACL) 的形式存储在路由器中,管理人员可以通过命令配置访问控制列表中的规则。
例如,表7—1展示了一个简单的ACL例子:
编号 | 方向 | 源地址 | 目的地址 | 协议类型 | 源端口号 | 目的端口号 | 处理方法 |
---|---|---|---|---|---|---|---|
1 | 出 | 内网地址 | 互联网地址 | TCP | >1023 | 80 | 允许通过 |
2 | 入 | 互联网地址 | 内网地址 | TCP | 80 | >1023 | 允许通过 |
3 | 入 | 211.1.1.1 | 内网地址 | 任意 | 任意 | 任意 | 拒绝通过 |
4 | 入 | 外网地址 | 10.65.19.10 | TCP | >1023 | 25 | 允许通过 |
5 | 出 | 10.65.19.10 | 互联网地址 | TCP | 25 | >1023 | 允许通过 |
分组过滤可以是无状态的,即独立地处理每一个分组,也可以是有状态的,即跟踪每个连接或会话的通信状态,并根据这些状态信息来决定是否转发分组。
1.1.2 应用级网关
应用级网关也称为代理服务器(Proxy Server) ,它在应用层通信中扮演报文中继的角色。应用级网关可以实现基于应用层数据的过滤和高层用户鉴别。所有进出网络的应用程序报文都必须通过应用级网关,应用级网关可以要求对用户的身份进行鉴别,然后根据用户身份对用户行为进行访问控制。
1.2 个人防火墙
个人防火墙是一种安装在用户计算机上的应用程序,其作用类似分组过滤路由器,对用户计算机的网络通信行为进行监控。与网络防火墙不同,个人防火墙只保护单台计算机。
1.3 防火墙的局限性
尽管防火墙在提高内网安全方面起到积极作用,但它也有一些局限性:
- 配置依赖:防火墙的安全防护作用取决于配置是否正确和完备。
- 无法防范所有攻击:一些利用系统漏洞或网络协议漏洞的攻击难以防范。
- 对恶意代码查杀能力有限:防火墙对病毒、木马等恶意代码的查杀能力有限。
- 技术自身不足:分组过滤路由器不能防止IP地址和端口号欺骗,应用级网关也可能存在软件漏洞。
2. 入侵检测系统
入侵检测系统(Intrusion Detection System,IDS) 通过对进入网络的分组进行深度分析与检测,来发现疑似入侵行为的网络活动,并进行报警,以便进一步采取相应措施。与IPS(入侵防御系统) 不同的是他只能检测预警不能主动防御,ids采用的是旁路部署,而IPS是采用串联部署
2.1 IDS的分类
IDS一般可以分为基于特征的IDS和基于异常的IDS。
2.1.1 基于特征的IDS
基于特征的IDS维护一个所有已知攻击标志性特征的数据库。当发现与某种攻击特征匹配的分组或分组序列时,基于特征的IDS认为可能检测到了某种入侵行为。这些特征通常由网络安全专家提供,并由机构的网络管理员定制并加入数据库。
IDS 旁路部署(不会影响网速):
[ 网络设备 ] ----> [ 镜像端口 ] ----> [ IDS ]
|
+----> [ 继续传输的网络流量 ]
IPS 串联部署(会影响网速):
[ 网络设备 ] ----> [ IPS ] ----> [ 继续传输的网络流量 ]
2.1.2 基于异常的IDS
基于异常的IDS通过观察系统正常运行时的网络流量,学习正常流量的统计特性和规律。当检测到网络流量中某种统计规律不符合正常情况时,认为可能发生了入侵行为。例如,ICMP报文突然大量增加可能表明网络正在遭受ping搜索攻击。
2.2 IDS的工作机制
不论采用什么检测技术,IDS都存在“漏报”和“误报”情况。如果漏报率高,只能检测到少量入侵,给人以安全的假象。如果误报率高,会导致大量虚假警报,影响网络管理员的工作效率。
3. 网络攻击及其防范
网络攻击种类繁多,防范这些攻击需要结合多种技术手段。
3.1 网络扫描
网络扫描是攻击者获取攻击目标信息的重要技术,包括主机发现、端口扫描、操作系统检测和漏洞扫描。
- 主机发现:利用ICMP请求报文发现目标主机。
- 端口扫描:获取主机端口的工作状态,推断开放的网络服务。
- 操作系统检测:通过分析协议栈指纹等方法检测操作系统类别。
- 漏洞扫描:利用已知漏洞对目标系统进行探测。
3.1.1 防范措施
防范网络扫描主要有以下措施:
- 关闭闲置及危险端口。
- 使用NAT屏蔽内网主机地址。
- 设置防火墙过滤不必要的ICMP报文。
- 使用入侵检测系统及时发现网络扫描行为。
3.2 网络监听
网络监听是攻击者直接获取信息的有效手段,攻击者通过分组嗅探器截获网络通信数据。
3.2.1 防范措施
防范网络监听的措施包括:
- 使用交换机而不是集线器。
- 配置交换机的安全功能。
- 划分更细的VLAN。
- 进行数据加密,避免使用不安全的软件。
3.3 拒绝服务攻击
拒绝服务(Denial of Service,DoS)攻击通过消耗网络带宽或系统资源使系统瘫痪。分布式拒绝服务(Distributed Denial of Service,DDoS)攻击是DoS攻击的一种形式,攻击者通过控制大量主机同时发起攻击。
3.3.1 基于漏洞的DoS攻击
这种攻击利用协议或软件实现中的漏洞,向目标发送特殊分组,使目标系统出现异常或崩溃。例如,“死亡之ping”攻击通过发送超长ICMP报文导致目标系统崩溃。防范此类攻击的有效方法是及时为操作系统安装安全补丁。
3.3.2 基于资源消耗的DoS攻击
更多的拒绝服务攻击是通过向攻击目标发送大量分组耗尽目标系统资源,使目标瘫痪。例如,SYN洪泛攻击通过发送大量伪造的SYN分组,导致服务器资源耗尽,不再接受正常用户的连接请求。
3.3.3 DDoS攻击
DDoS攻击中,攻击者通过控制大量主机同时向目标发起DoS攻击,产生巨大的流量使目标系统崩溃。这种攻击常结合反射攻击技术,将攻击流量放大。
3.3.1 防范措施
应对DoS攻击的主要方法包括:
- 利用防火墙过滤恶意分组。
- 在入口路由器进行源端控制。
- 追溯攻击源,隔离攻击主机。
- 进行DoS攻击检测,及时报警。
总结
防火墙和入侵检测系统是保障系统安全的两道重要防线。通过理解和应用这些技术,可以有效防范网络攻击,保护计算机系统的安全。
图文来源:《计算机网络教程》第六版微课版