IGMP(互联网组管理协议)是一种互联网协议,提供这样一种方法,
使得互联网上的主机向临近路由器报告它的广播组成员。
广播使得互联网上的一个主机向网上确认对
于源主机发送内容感兴趣的计算机发送信息。
IGMP(Internet Group Message Protocol):Internet组管理协议,提供intern
et网际多点
传送的功能,即将一个ip包拷贝给多个host,windows系列采用了这个协议,因为此响技术
尚不成熟,因此被一些人用来攻击windows系统,尤其是对win98,因为对win95有oob攻击.
受到IGMP攻击的症状是首先出现蓝屏,然后网速变得极慢,有的甚至鼠标,键盘均不管用.
非得重起不可.
因为此协议是ipx/spx里的,因此只能炸局域网,如有ipx路右可炸得远点.
IGMP的本义是为了使路由器觉察到本地主机组的存在而使用的一个协议,因此一般只有路
由发的igmp包是可以接受的.
IGMP的工作过程如下:
一. 当主机加入一个新的工作组时,它发送一个igmp host membership report的抱文给
全部主机组,宣布此成员关系.本地多点广播路由器接受到这个报文后,向Internet上的其
他多路广播路由器传播这个关系信息,建立必要的路由.与此同时,在主机的网络接口上将
ip主机组地址映射为mac地址,并重新设置地址过滤器.
二. 为了处理动态的成员关系,本地多路广播路由器周期性的轮询本地网络上的主机,以
便
确定在各个主机组有哪些主机,这个轮询过程是通过发送igmp host membership query报
文来实现的,这个报文发送给全部主机组,且报文的ttl域设为1,以确保报文不会传送到l
an
以外.受到报文的主机组成员会发送响应报文.如果所有的主机组成员同时响应的话,就可
能造成网络阻塞.IGMP协议采用了随机延时的方法来避免这个情况.这样就保证了在同一
时
刻每个主机组中只有一个成员在发送响应报文.
★IGMP(Internet Group Message Protocol)是一个尚处于实验阶段的协议,提供Intern
et网际多点传送的功能,即将一个IP包的拷贝传给多个host.
Windows98和windows2000都采用了这个不太成熟的协议,在这两个平台内,这个多点传送
的协议的应用容易引起Tcp/IP堆栈的阻塞,从而引发了一个目前没有补丁的新攻击.
这种攻击能使对方的机器蓝屏甚至是重启,但我个人认为实际意义不大。
IGMP其工作原理引用goodwell的原句如下:Windows 95, 98 and Windows 2000's TCP/
IP stacks were not built to tolerate malformed IGMP (Internet Group Manageme
nt Protocol) headers. When one is received, the stack will fail with unpredi
ctable results ranging from a Blue Screen to instantaneous reboot
WIN95,WIN98的NMPI协议有个BUG,可以炸死机(炸后毫无反映,鼠标键盘都不管用)。
因为此协议是IPX/SPX协议里面的,所以只能炸内部网的,如果有IPX路由可能可以炸得
远点。如果没有安装IPX/SPX协议或者没有IPX/SPX协议绑定MICROSOFT客户可能不能炸。
此BUG与原来的一些BUG很不一样,不是包中哪个字段非法,造成非法访问或者溢出破坏
系统,是因为此协议的回复包与此协议包没多少区别造成(没有字段指明是这种包还是
回复包,其他的协议一般都有字段指明),此死机包关键就是伪造机器名和网卡地址MA
C2,造成受攻击机器收到包后的回复包又是受攻击机器本身,而回复包因为包没有字段
表明是回复包,所以查到机器名是自己(此协议就是以机器名识别是不是该接收)又回
复包,所以就造成发包的死循环,而这处理是在VXD中就是系统内核中,所以不能切换任
务处理键盘鼠标等,也就是死机毫无反应了。
参考资料:http://www.ask321.com/ask15/ask194106.htm