Linux Kernel I2C驱动另一个整数溢出漏洞

2008-04-09 04:25:48来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

Linux Kernel I2C驱动另一个整数溢出漏洞

发布日期:2004-06-17
更新日期:2004-06-24

受影响系统:
Linux kernel 2.5.9
Linux kernel 2.5.8
Linux kernel 2.5.7
Linux kernel 2.5.69
Linux kernel 2.5.68
Linux kernel 2.5.67
Linux kernel 2.5.66
Linux kernel 2.5.65
Linux kernel 2.5.64
Linux kernel 2.5.63
Linux kernel 2.5.62
Linux kernel 2.5.61
Linux kernel 2.5.60
Linux kernel 2.5.6
Linux kernel 2.5.59
Linux kernel 2.5.58
Linux kernel 2.5.57
Linux kernel 2.5.56
Linux kernel 2.5.55
Linux kernel 2.5.54
Linux kernel 2.5.53
Linux kernel 2.5.52
Linux kernel 2.5.51
Linux kernel 2.5.50
Linux kernel 2.5.5
Linux kernel 2.5.49
Linux kernel 2.5.48
Linux kernel 2.5.47
Linux kernel 2.5.46
Linux kernel 2.5.45
Linux kernel 2.5.44
Linux kernel 2.5.43
Linux kernel 2.5.42
Linux kernel 2.5.41
Linux kernel 2.5.40
Linux kernel 2.5.4
Linux kernel 2.5.39
Linux kernel 2.5.38
Linux kernel 2.5.37
Linux kernel 2.5.36
Linux kernel 2.5.35
Linux kernel 2.5.34
Linux kernel 2.5.33
Linux kernel 2.5.32
Linux kernel 2.5.31
Linux kernel 2.5.31
Linux kernel 2.5.30
Linux kernel 2.5.3
Linux kernel 2.5.29
Linux kernel 2.5.28
Linux kernel 2.5.27
Linux kernel 2.5.26
Linux kernel 2.5.25
Linux kernel 2.5.24
Linux kernel 2.5.23
Linux kernel 2.5.22
Linux kernel 2.5.21
Linux kernel 2.5.20
Linux kernel 2.5.2
Linux kernel 2.5.19
Linux kernel 2.5.17
Linux kernel 2.5.16
Linux kernel 2.5.15
Linux kernel 2.5.14
Linux kernel 2.5.13
Linux kernel 2.5.12
Linux kernel 2.5.11
Linux kernel 2.5.10
Linux kernel 2.5.1
Linux kernel 2.5.0
Linux kernel 2.4.9
Linux kernel 2.4.8
Linux kernel 2.4.7
Linux kernel 2.4.6
Linux kernel 2.4.5
Linux kernel 2.4.4
Linux kernel 2.4.3
Linux kernel 2.4.20
Linux kernel 2.4.2
Linux kernel 2.4.19
Linux kernel 2.4.17
Linux kernel 2.4.16
Linux kernel 2.4.15
Linux kernel 2.4.14
Linux kernel 2.4.13
Linux kernel 2.4.12
Linux kernel 2.4.11
Linux kernel 2.4.10
Linux kernel 2.4.1
Linux kernel 2.4
Linux kernel 2.4.18
- Debian Linux 3.0
- Mandrake Linux 8.2
- Mandrake Linux 8.1
- Mandrake Linux 8.0
- RedHat Linux 8.0
- RedHat Linux 7.3
- SuSE Linux 8.2
- SuSE Linux 8.1
- SuSE Linux 8.0
- SuSE Linux 7.3
- SuSE Linux 7.2
- SuSE Linux 7.1
- Turbo Linux 7.0
不受影响系统:
Linux kernel 2.6.7
Linux kernel 2.6.6
Linux kernel 2.6.5
Linux kernel 2.6.4
Linux kernel 2.6.3
Linux kernel 2.6.2
Linux kernel 2.6.1-rc2
Linux kernel 2.6.1-rc1
Linux kernel 2.6.1
Linux kernel 2.6
Linux kernel 2.4.27-pre2
Linux kernel 2.4.27-pre1
Linux kernel 2.4.26
Linux kernel 2.4.25
Linux kernel 2.4.24
Linux kernel 2.4.23
Linux kernel 2.4.22
Linux kernel 2.4.21 pre7
Linux kernel 2.4.21 pre4
Linux kernel 2.4.21 pre1
Linux kernel 2.4.21
描述:
BUGTRAQ ID: 10563

Linux是一款开放源代码操作系统。

Linux中的I2C总线驱动程序不正确验证用户提供的Size值,本地攻击者可以利用这个漏洞获得ring 0级别的权限。

问题存在于i2cdev_ioctl()函数中的I2C_RDWR选项:

---
case I2C_RDWR:
if (copy_from_user(&rdwr_arg,
(struct
i2c_rdwr_ioctl_data *)arg,
sizeof(rdwr_arg)))
return -EFAULT;

rdwr_pa = (struct i2c_msg *)
kmalloc(rdwr_arg.nmsgs *
sizeof(struct i2c_msg),
GFP_KERNEL);

if (rdwr_pa == NULL) return -ENOMEM;
---

由于缺少过滤检查,在kmalloc()调用中使用的(rdwr_arg.nmsgs * sizeof(struct i2c_msg))会导致触发整数溢出。

如果用户提供一个超大的整数用于kmalloc()调用中的长度参数,会由于分配过小的内存而使kmalloc()发生整数溢出,可导致系统崩溃等问题。

不过多数情况下I2C驱动文件默认只允许管理员可读和写,因此攻击者一般需要ROOT的权限来利用此漏洞。

<*来源:Shaun Colley (shaunige@yahoo.co.uk)

链接:http://marc.theaimsgroup.com/?l=bugtraq&m=108761485905678&w=2
*>

建议:
厂商补丁:

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

Linux Upgrade linux-2.4.21.tar.bz2
http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.21.tar.bz2

Linux Upgrade linux-2.4.22.tar.gz
ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.22.tar.gz

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Microsoft Internet Explorer HREF Save As远程拒绝服务漏洞

下一篇:HP-UX本地X字体服务程序缓冲区溢出漏洞