ICMP Unreachable-Attack,即 ICMP 不可达攻击,是一种利用 ICMP(Internet Control Message Protocol)不可达消息来干扰或中断目标系统网络通信的攻击类型。
ICMP 不可达消息在网络通信中通常用于通知发送方某个数据包无法到达其目标。常见的类型包括网络不可达(Type 3, Code 0)、主机不可达(Type 3, Code 1)、协议不可达(Type 3, Code 2)和端口不可达(Type 3, Code 3)。这些消息本来是合法且有用的,但攻击者却可以利用它们进行攻击。
攻击步骤通常如下:首先,攻击者嗅探网络流量,捕获目标主机的合法通信数据包。接着,构造一个伪造的 ICMP 不可达消息,伪装成合法路由器或中间设备,声称某个路径或主机不可达。然后,将伪造的 ICMP 不可达消息发送给目标主机。目标主机接收到伪造的消息后,可能会认为某个路径或主机不可达,从而导致通信失败或性能下降。
例如,根据搜索到的素材,攻击者可能会伪装成路由器,向目标主机发送主机不可达(Type 3, Code 1)的 ICMP 消息,诱使目标主机更新其路由表或终止通信。这种攻击可能会对目标系统的网络通信造成严重影响,降低系统的可用性和稳定性。
二、常见攻击类型及危害
(一)针对带宽的 DoS 攻击
针对带宽的 DoS 攻击主要是利用无用的数据来耗尽网络带宽。Pingflood、pong、echok、flushot、fraggle 和 bloop 是常用的 ICMP 攻击工具。攻击者通过高速发送大量的 ICMP Echo Reply 数据包,目标网络的带宽瞬间就会被耗尽,阻止合法的数据通过网络。ICMP Echo Reply 数据包具有较高的优先级,在一般情况下,网络总是允许内部主机使用 PING 命令。这种攻击仅限于攻击网络带宽,单个攻击者就能发起这种攻击。更厉害的攻击形式,如 smurf 和 papa-smurf,可以使整个子网内的主机对目标主机进行攻击,从而扩大 ICMP 流量。据搜索到的素材显示,这种攻击可能会导致网络拥塞,正常的网络通信无法进行,影响企业和个人的日常业务和生活,降低网络的可用性和效率。
(二)针对连接的 DoS 攻击
针对连接的 DoS 攻击,可以终止现有的网络连接。针对网络连接的 DoS 攻击会影响所有的 IP 设备,因为它使用了合法的 ICMP 消息。Nuke 通过发送一个伪造的 ICMP Destination Unreachable 或 Redirect 消息来终止合法的网络连接。更具恶意的攻击,如 puke 和 smack,会给某一个范围内的端口发送大量的数据包,毁掉大量的网络连接,同时还会消耗受害主机 CPU 的时钟周期。还有一些攻击使用 ICMP Source Quench 消息,导致网络流量变慢,甚至停止。Redirect 和 Router Announcement 消息被利用来强制受害主机使用一个并不存在的路由器,或者把数据包路由到攻击者的机器,进行攻击。这种攻击会导致目标主机的网络连接被中断,影响业务的连续性,可能造成经济损失和数据丢失。
(三)基于重定向的路由欺骗技术
攻击者可利用 ICMP 重定向报文破坏路由,并以此增强其窃听能力。微软的 Windows98 和 NT 系统都保持着一张已知的路由器列表,列表中位于第一项的路由器是默认路由器,如果默认路由器关闭,则位于列表第二项的路由器成为缺省路由器。缺省路由向发送者报告另一条到特定主机的更短路由,就是 ICMP 重定向。如果一台机器伪装成路由器截获所有到某些目标网络或全部目标网络的 IP 数据包,这样就形成了窃听。目前虽然所有基于 ICMP 路由欺骗的技术都是停留在理论上的论述,没有找到相关的具体攻击实例和原程序,但这种攻击手段一旦被实施,可能会导致用户的通信内容被窃取,严重威胁用户的隐私和安全。
三、防范措施详解
(一)配置防火墙
选择合适的防火墙对于防范 ICMP Unreachable-Attack 至关重要。用户应该配置一个合理的安全策略,一般除了出站的 ICMP Echo Request、出站的 ICMP Source Quench、进站的 TTL Exceeded 和进站的 ICMP Destination Unreachable 之外,所有的 ICMP 消息类型都应该被阻止。现在许多防火墙在默认情况下都启用了 ICMP 过滤的功能。如果没有启用,只要选中 “防御 ICMP 攻击”、“防止别人用 ping 命令探测” 就可以了。状态检测防火墙通过跟踪它的连接状态,动态允许外出数据包的响应信息进入防火墙所保护的网络,例如可以记录一个出去的 PING (ICMP Echo Request),在接下来的一个确定的时间段内,允许目标主机响应的 ICMP Echo Reply 直接发送给前面发出了 PING 命令的 IP,除此之外的其他 ICMP Echo Reply 消息都会被防火墙阻止。而包过滤类型的防火墙允许所有的 ICMP Echo Reply 消息进入防火墙所保护的网络,像许多路由器和基于 Linux 内核 2.2 或以前版本的防火墙系统,都属于包过滤型,用户应该避免选择这些系统。
(二)配置系统自带防火墙
配置系统自带的默认防火墙以预防 ICMP 攻击的步骤如下:
第一步:打开在电脑的桌面,右键点击 “网上邻居→属性→本地连接→属性→Internet 协议 (TCP/IP)→属性→高级→选项 - TCP/IP 筛选 - 属性”。
第二步:“TCP/IP 筛选” 窗口中,点击选中 “启用 TCP/IP 筛选 (所有适配器)”。然后分别在 “TCP 端口、UDP 端口和 IP 协议” 的添加框上,点击 “只允许”,后按添加按钮,然后在跳出的对话框输入端口,通常我们用来上网的端口是:80、8080,而邮件服务器的端口是:25、110,FTP 的端口是 20、21,同样将 UDP 端口和 IP 协议相关进行添加。
第三步:打开 “控制面板→管理工具→本地安全策略”,然后右击 “IP 安全策略,在本地机器” 选 “管理 IP 筛选器和 IP 筛选器操作”,在管理 IP 筛选器和 IP 筛选器操作列表中添加一个新的过滤规则,名称输入 “防止 ICMP 攻击”,然后按添加,在源地址选任何 IP 地址,目标地址选我的 IP 地址,协议类型为 ICMP,设置完毕。
第四步:在 “管理筛选器操作”,取消选中 “使用添加向导”,添加,在常规中输入名字 “Deny 的操作”,安全措施为 “阻止”。这样我们就有了一个关注所有进入 ICMP 报文的过滤策略和丢弃所有报文的过滤操作了。
第五步:点击 “IP 安全策略,在本地机器”,选择 “创建 IP 安全策略 - 下一步 - 输入名称为 ICMP 过滤器”,通过增加过滤规则向导,把刚刚定义的 “防止 ICMP 攻击” 过滤策略指定给 ICMP 过滤器,然后选择刚刚定义 “Deny 的操作”,然后右击 “防止 ICMP 攻击” 并启用。
(三)其他防范手段
使主机或路由器不响应 ICMP 请求或广播,或使路由器不转发目的是广播地址的数据包也是有效的防范措施。例如,对于 smurf 攻击,可以通过使主机或路由器不响应 ICMP 请求或广播来防止攻击。另外,使用流量过滤,在网络边界或目标系统上实施流量过滤,识别和丢弃伪造的 ICMP 不可达消息,可以使用防火墙、入侵检测系统(IDS)或专用的防御设备来实现流量过滤。同时,配置网络设备和主机,验证 ICMP 不可达消息的合法性,例如检查消息的源 IP 地址是否可信,消息中的原始数据包头部信息是否一致等。在目标系统上配置限制,限制对 ICMP 消息的响应数量,以防止被用于进行攻击,可以通过修改操作系统的参数或使用防火墙规则来实现限制。并且定期监控和分析网络流量,及时发现异常的 ICMP 流量模式,以及可能是 ICMP 不可达攻击的迹象,使用网络流量分析工具和入侵检测系统来辅助监控和分析。通过综合使用这些防范措施,可以有效地保护网络免受 ICMP Unreachable-Attack 的影响,维护网络的可用性和稳定性。
四、总结与展望
ICMP Unreachable-Attack 对网络安全构成了严重威胁,它不仅可能导致网络带宽被耗尽、网络连接被中断,还可能引发路由欺骗和信息窃取等问题。因此,防范 ICMP Unreachable-Attack 至关重要。
尽管防范这种攻击面临着一些挑战,比如攻击者不断创新攻击手段,网络环境日益复杂等,但通过多种有效的防范措施,我们可以在很大程度上保障网络安全。
配置防火墙是防范 ICMP Unreachable-Attack 的重要手段之一。合理的防火墙策略可以有效地阻止恶意的 ICMP 消息,保护网络免受攻击。同时,配置系统自带的防火墙也能为用户提供额外的安全保障,通过一系列详细的设置步骤,可以实现对 ICMP 报文的过滤和阻止。
此外,其他防范手段如不响应 ICMP 请求或广播、流量过滤、验证 ICMP 消息合法性以及限制 ICMP 响应数量等,也能从不同方面增强网络的安全性。流量过滤可以使用防火墙、入侵检测系统或专用防御设备来识别和丢弃伪造的 ICMP 不可达消息;验证 ICMP 消息合法性可以确保接收到的消息是可信的;限制 ICMP 响应数量可以防止网络被用于攻击。
定期监控和分析网络流量也是非常重要的。通过使用网络流量分析工具和入侵检测系统,可以及时发现异常的 ICMP 流量模式,以及可能的攻击迹象,从而采取相应的措施进行防范。
展望未来,随着网络技术的不断发展,我们需要持续关注 ICMP Unreachable-Attack 的新变化和新趋势,不断改进和完善防范措施。同时,加强网络安全教育,提高用户的安全意识,也是保障网络安全的重要环节。只有通过多方面的努力,我们才能有效地防范 ICMP Unreachable-Attack,确保网络的安全、稳定和可靠运行。
墨者安全 防护盾
墨者安全作为专业级别安全防护专家,在应对 Webshell 风险隐患方面展现出了卓越的能力。其拥有全面的检测机制,能够精准识别 Webshell 的各种类型和变体,无论是复杂的大马,还是隐蔽的内存马,都难逃其敏锐的监测。
墨者安全防护盾具备强大的实时监控功能,对服务器的各项活动进行 7*24 小时不间断的监视。一旦发现任何可疑的 Webshell 活动迹象,立即发出警报,并迅速采取隔离和清除措施,将风险扼杀在萌芽状态。
在防护策略上,墨者安全防护盾采用了多层次的防御体系。不仅能够在网络层面阻挡外部的恶意访问和攻击,还能深入系统内部,对服务器的文件系统、进程等进行深度检查和保护,确保 Webshell 无法植入和运行。
同时,墨者安全防护盾拥有快速的应急响应能力。当 Webshell 攻击事件发生时,专业的安全团队能够迅速介入,进行深入的分析和处理,最大程度减少攻击带来的损失,并帮助用户快速恢复服务器的正常运行。
墨者安全防护盾还注重用户教育和培训,为用户提供关于 Webshell 防范的专业知识和最佳实践,帮助用户提升自身的安全意识和防范能力,共同构建坚实的网络安全防线。