首页 -> 安全研究

安全研究

安全漏洞
Linux Kernel畸形ULE报文处理远程拒绝服务漏洞

发布日期:2006-09-11
更新日期:2006-09-12

受影响系统:
Linux kernel 2.6.x <= 2.6.17.7
不受影响系统:
Linux kernel 2.6.17.8
描述:
BUGTRAQ  ID: 19939
CVE(CAN) ID: CVE-2006-4623

Linux Kernel是开放源码操作系统Linux所使用的内核。

Linux的ULE(单向轻型封装RFC 4326)拆封代码存在一个漏洞,远程攻击者可能利用此漏洞对接收处理的服务器造成拒绝服务攻击。

攻击者可以通过发送SNDU长度为0的ULE报文导致漏洞的触发。

<*来源:Ang Way Chuang (wcang@nrg.cs.usm.my
  
  链接:http://lkml.org/lkml/2006/8/20/278
*>

建议:
厂商补丁:

Linux
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.kernel.org/

diff -uprN linux-2.6.17.8/drivers/media/dvb/dvb-core/dvb_net.c linux-2.6.17.8-fix/drivers/media/dvb/dvb-core/dvb_net.c
--- linux-2.6.17.8/drivers/media/dvb/dvb-core/dvb_net.c 2006-08-07 12:18:54.000000000 +0800
+++ linux-2.6.17.8-fix/drivers/media/dvb/dvb-core/dvb_net.c     2006-08-21 11:09:12.000000000 +0800
@@ -492,7 +492,7 @@ static void dvb_net_ule( struct net_devi
                                } else
                                        priv->ule_dbit = 0;

-                               if (priv->ule_sndu_len > 32763) {
+                               if (priv->ule_sndu_len > 32763 || priv->ule_sndu_len < ((priv->ule_dbit) ? 4 : 4 + ETH_ALEN)) {
                                        printk(KERN_WARNING "%lu: Invalid ULE SNDU length %u. "
                                               "Resyncing.\n", priv->ts_count, priv->ule_sndu_len);
                                        priv->ule_sndu_len = 0;

浏览次数:3802
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障