对于ICMP协议我们来说已经讲解了不少内容,
ping命令来解析ICMP攻击以及欺骗疑问(一)
。关于它的一些基本情况,相信大家也已经了解了不少。这里我们主要讲解一下ICMP攻击以及欺骗的问题。对于这个问题,我们将用Ping命令的有关操作进行分析。一、 ICMP简介
ICMP的全称是Internet Control Message Protocol(网间报文控制协议),它是IP不可分割的一部分,用来提供错误报告。一旦发现各种错误类型就将其返回原主机,我们平时最常见的ping命令就是基于ICMP的。
|-----------------------------------------| || ------ ICMP ECHO request ------ || |HOST| -------------> |HOST| || | A | <----------------------- | B | || | | 如果存活或者没有过滤 | | || ------ 将返回ICMP RCHO REPLY ------ || |-----------------------------------------
这种机制就是我们通常所用的ping命令来检测目标主机是否可以ping到。ICMP的统计信息包含收发的各种类型的ICMP报文的计数以及收发错误报文的计数。
利用"show statistics ICMP"可以察看各个统计信息。
显示 说明
Message 消息
Errors 错误消息
Destination Unreachable 目标不可到达消息
Time Exceeded 超时消息
Parameter Problems 参数错误消息
Source Quenchs 源抑制消息
Redirecrs 重定向消息
Echos Echo消息
Echo Replies Echo 响应消息
Timestamps 时间戳消息
Timestamp Replies 时间戳响应消息
Address Masks 地址掩码请求消息
Address Mask Replies 地址掩码响应消息编辑推荐TCP/IP协议专题
TCP/IP(传输入控制地议/网际协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与..
防止ICMP攻击的配置ICMP协议的重要性Linux下ICMP Ping的实现Linux ICMP后门代码ICMP回显的监控应用
二、 ICMP攻击及欺骗技术
1、 ICM
P攻击导致拒绝服务(DoS)服务拒绝攻击企图通过使你的服务计算机崩溃或把它压跨来阻止你提供服务,服务拒绝攻击是最容易实施的攻击行为。
由于在早期的阶段,路由器对包的最大尺寸都有限制,许多操作系统对TCP/IP栈的实现在ICMP包上都是规定64KB,并且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区,当产生畸形的,声称自己的尺寸超过ICMP上限的包也就是加载的尺寸超过64K上限时,就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使接受方当机,
电脑资料
《ping命令来解析ICMP攻击以及欺骗疑问(一)》()。这就是所说的"ping of death",现在网络上很多号称能够致使系统死机的软件都是基于这个原理,我们所熟悉的工具"Winnuke"就是一例。对路由器而言,向Intel Express Switch或其后的主机发送一畸形的ICMP包可能导致系统崩。通过本地或远程发送的畸形包能蒙骗服务器。当服务器收到畸形的ICMP包时,它将继续检查才对,然而它将丢失所有的路由功能,而且不将检查其它连接了。主要影响Intel Express Switch 500 系列。另外,Windows也有拒绝服务漏洞,对 Win98 NT4/SP5,6 Win2K都有影响 ,当如上系统受到非法碎片包包含不合法碎片 ICMP ECHOs (pings)和UDP packets攻击,Windows系统会拒绝服务。直至CPU占用率达到100%,最后系统崩溃。(参见原程序)
ICMP重定向提供了一种相当有效的DoS.不象ARP入口,这些特定主机路由入口永不过期。注意,攻击没有要求必须从局域网内发起,事实可以从广域网上发起。如果子网所用DNS位于网关外,产生一个到该DNS的错误路由是很容易的,
通过在Pwin98下测试,由ICMP重定向包产生的路由都是掩码为255.255.255.255的特定主机路由,没有办法产生诸如255.255.0.0这样掩码下的网络路由。此外,由ICMP重定向包产生的路由还是会过期的,会被删除,但耗时很长。许多桌面操作系统线性搜索自己的路由表,如果你利用ICMP重定向包加了太多特定主机路由到它们的路由表中,极其容易造成系统的瘫痪。对于Unix系统,虽然搜索路由表时不是线性搜索,但过多的特定主机路由会消耗大量的内存空间。
下面是一个具体实例:
今年八月海信集团悬赏50万人民币测试防火墙,虽然结果是没有人能够拿到防火墙后面的密码,但是防火墙遭到大量的ICMP攻击,导致防火墙的IP地址ping不通,造成大量攻擂者以为海信公司言而无信,取消了测试,转而怒牵于海信公司主页,于是就有了八月轰动全国IT界的海信主页被黑事件,下面是海信公司自己提供的防火墙遭攻击记录:
攻击类型 攻击次数
1 ICMP攻击 334050
2 碎片攻击 25524
3 端口扫描 4365
4 WEB服务攻击 1227
5 UDP攻击 234
6 拒绝服务攻击 12
事实可以看到,造成海信服务器"拒绝服务"的绝大多数攻击来自于ICMP攻击。
2、 基于重定向(redirect)的路由欺骗技术
首先我们应该知道,微软的Windows98和NT系统都保持着一张已知的路由器列表,列表中位于第一项的路由器是默认路由器,如果默认路由器关闭,则位于列表第二项的路由器成为缺省路由器。缺省路由向发送者报告另一条到特定主机的更短路由,就是ICMP重定向。攻击者可利用ICMP重定向报文破坏路由,并以此增强其 能力。除了路由器,主机必须服从ICMP重定向。如果一台机器想网络中的另一台机器发送了一个ICMP重定向消息,这就可能引起其他机器具有一张无效的路由表。如果一台机器伪装成路由器截获所有到某些目标网络或全部目标网络的IP数据包,这样就形成了 。通过ICMP技术还可以抵达防火墙后的机器进行攻击和 。在一些网络协议中,IP源路径选项允许IP数据报告自己选择一条通往目的主机的路径(这是一个非常不好,但是又无可奈何的技术手段,多路径正是网络连接的精髓部分!)。攻击者试图与防火墙后面的一个不可到达的主机A连接,只需在送出的ICMP报文中设置IP源路径选项,使报文有一个目的地址指向防火墙,而最终地址是主机A.当报文到达防火墙时被允许通过,因为它指向防火墙而不是主机A.防火墙的IP层处理该报文的源路径域并被发送到内部网上,报文就这样到达了不可到达的主机A .