防火墙服务是一种网络安全技术,用于保护计算机网络免受未经授权的访问、数据泄露和其他恶意活动。它可以防止多种类型的网络攻击,防火墙服务可以防止多种类型的网络攻击,以下是常见的几种:
扫描类攻击:
IP 地址扫描攻击:攻击者运用 ICMP 报文探测目标地址(如通过 ping 和 tracert 命令),或者使用 TCP/UDP 报文对目标地址发起连接。若能收到对应的响应报文,则表明目标主机处于活跃状态。防火墙可对接收的 TCP、UDP、ICMP 报文进行检测,当某个源 IP 地址每秒发往不同目的 IP 地址的报文数超过设定阈值,就认为该源 IP 地址在进行 IP 地址扫描攻击,会将该 IP 地址加入黑名单。
端口扫描攻击:攻击者通过对端口进行扫描,探寻被攻击对象目前开放的端口,以确定攻击方式。在端口扫描攻击中,攻击者通常使用端口扫描攻击软件,发起一系列 TCP/UDP 连接,根据应答报文判断主机是否使用这些端口提供服务。防火墙对接收的 TCP、UDP 报文进行检测,若某个源 IP 地址每秒发出的报文中目的端口不同的报文数超过设定阈值,就认为该源 IP 地址在进行端口扫描攻击,会将该 IP 地址加入黑名单。
畸形报文类攻击:
Ping of Death 攻击:攻击者发送超大尺寸的 ICMP 报文,导致目标主机在处理报文时系统崩溃。
Smurf 攻击:攻击者伪造大量 ICMP 请求报文,源地址是被攻击服务器的地址,目的地址是某一个网络的广播地址,造成大量主机向被攻击服务器发送 ICMP 应答报文,消耗网络带宽资源和服务器系统资源。防火墙启用 Smurf 攻击防范后,会检查 ICMP 请求报文的目的地址是否为广播地址或网络地址,若是则丢弃该报文,并记录攻击日志。
Fraggle 攻击:类似于 Smurf 攻击,攻击者伪造大量 UDP 请求报文(目的端口为 7 或 19),源地址是被攻击服务器地址,目的地址是某个网络的广播地址,导致大量主机向被攻击服务器发送 UDP 应答报文,消耗网络带宽资源和服务器系统资源。防火墙启用 Fraggle 攻击防范后,会对收到的 UDP 报文进行检测,若目的端口号为 7 或 19,会拒绝该报文,并记录攻击日志。
Teardrop 攻击:为满足链路层 MTU 的要求,一些大的 IP 报文在传送过程中需要进行分片,被分片的报文在 IP 报文中会携带分片标志位和分片偏移量。如果攻击者截取分片报文后,对其中的偏移量进行修改,数据接收端在收到分片报文后,无法组装为完整的数据包,接收端会不断进行尝试,消耗大量系统资源。防火墙启用 Teardrop 攻击防范后,会对接收到的分片报文进行分析,计算报文的偏移量是否有误,若有误则直接丢弃该报文,并记录攻击日志。
Land 攻击:攻击者向目标主机发送源 IP 地址和目的 IP 地址相同、源端口号和目的端口号相同的 TCP 报文,使目标主机在处理报文时陷入混乱,从而导致系统崩溃或拒绝服务。
特殊报文类攻击:
ICMP 重定向攻击:攻击者通过发送 ICMP 重定向报文,误导目标主机修改路由表,将流量引向攻击者控制的设备或网络,从而实现中间人攻击或流量窃取。
Tracert 攻击:攻击者利用 Tracert 命令的工作原理,发送一系列具有特定 TTL 值的 IP 报文,通过分析返回的 ICMP 超时消息,来探测网络拓扑结构和目标主机的位置信息,为后续的攻击做准备。
IP 欺骗攻击:攻击者向目标主机发送源 IP 伪造的报文,欺骗目标主机,从而获取更高的访问和控制权限,危害目标主机的资源,造成信息泄露。防火墙可通过启用 IP 欺骗攻击防范,对报文的源 IP 地址进行路由表反查,检查路由表中到源 IP 地址的出接口和报文的入接口是否一致,如果不一致,则认为是 IP 欺骗攻击,并根据配置的动作处理该数据包。
DDoS 攻击(分布式拒绝服务攻击):DDoS 攻击是一种分布式的 DoS 攻击。DoS 即拒绝服务,利用 TCP/IP 协议缺陷,通过占用协议栈资源或者发起大流量拥塞,达到消耗目标机器性能或者带宽资源的目的,使合法用户不能获得应有的服务。DDoS 在 DoS 攻击的基础上,将多个计算机联合起来作为攻击平台,对一个或多个目标发动 DDoS 攻击,从而成倍地提高拒绝服务攻击的威力,使目标服务器无法提供正常服务。防火墙可以通过多种方式来防范 DDoS 攻击,例如限制单个 IP 地址的连接速率、检测和拦截异常的流量模式、对流量进行清洗等 。常见的 DDoS 攻击类型及防范方式如下:
SYN Flood 攻击:攻击者伪造大量的 SYN 请求报文发送给服务器,服务器每收到一个 SYN 就会响应一个 SYN - ACK 报文,但攻击者并不会理会此 SYN - ACK 报文,导致服务器端存在大量 TCP 半开连接,维护这些连接需要消耗大量的 CPU 以及内存资源,最终使服务器无暇处理正常的 SYN 请求,拒绝服务。防火墙在连续一段时间内收到的具有相同目的 SYN 报文数超过阈值时,会启动 SYN 报文源认证,拦截 SYN 报文,并伪造一个带有错误序列号的 SYN - ACK 报文回应给客户端。如果客户端是虚假源,则不会对错误的 SYN - ACK 报文进行回应,认证失败,防火墙丢弃后续此源地址的 SYN 报文;如果客户端是真实源,则会响应一个 RST 报文,认证通过,防火墙就把此源地址加入白名单,并放行后续的 SYN 报文。与 SYN Flood 攻击相似的攻击还有 FIN Flood 攻击、RST Flood 攻击、ACK Flood 攻击等,其攻击原理都是伪造带有特殊标志位的 TCP 报文,对目标服务器发起攻击,消耗其系统资源,最终导致服务器无法提供正常的服务。
HTTP Flood 攻击:攻击者通过代理或僵尸机向目标服务器发起大量的 HTTP GET/POST 请求报文,这些请求报文一般都会消耗大量的服务器系统资源(如请求数据库操作),最终导致服务器系统资源耗尽,无法响应正常请求。防火墙在连续一段时间内收到具有相同目的地址的 HTTP 请求报文数超过阈值,则启动 HTTP 报文源认证,拦截 HTTP 请求报文,并返回一个 HTTP 重定向报文给客户端。如果是虚假源,不会对 HTTP 重定向报文进行响应,认证失败,防火墙丢弃后续此源地址的 HTTP 请求报文;如果是真实源,则会正常响应 HTTP 重定向报文,认证通过,源地址加入防火墙白名单,后续 HTTP 请求报文自动放行。
此外,防火墙还能防止一些其他类型的攻击,如对特定端口或服务的暴力攻击(不断尝试用各种密码登录)等。不同的防火墙产品和配置可能会在具体功能和防范能力上有所差异,但总体上都是为了保护网络免受各种恶意攻击行为的威胁