Linux Kernel多个本地MOXA串行驱动缓冲区溢出漏…

2008-04-09 04:23:07来源:互联网 阅读 ()

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

Linux Kernel多个本地MOXA串行驱动缓冲区溢出漏洞

发布日期:2005-01-07
更新日期:2005-01-13

受影响系统:
Linux kernel 2.6.9
Linux kernel 2.6.8
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.10
Linux kernel 2.6.1
Linux kernel 2.6
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.28
Linux kernel 2.4.27
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
Linux kernel 2.4.20
Linux kernel 2.4.2
Linux kernel 2.4.19
Linux kernel 2.4.18
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
描述:
BUGTRAQ ID: 12195

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

Linux Kernel的MOXA串口驱动不正确检查用户拷贝的数据,本地攻击者可以利用这个漏洞可能可以用于提升特权。

问题存在于'drivers/char/moxa.c'文件中,执行'copy_from_user()'函数时拷贝用户提供的用户空间数据到固定大小的10240字节的静态内核缓冲区(moxaBuff)中,不过由于利用由'MoxaDriverIoctl()'函数传递的用户提供的长度参数,可导致不正确的边界操作,触发本地缓冲区溢出。

<*来源:Brad Spengler (spender@grsecurity.net)
*>

建议:
厂商补丁:

Linux
-----
相关补丁:

--- drivers/char/moxa.c 2005-01-05 09:37:08 -0500
drivers/char/moxa.c 2005-01-05 09:38:38 -0500
@@ -1668,6 1668,8 @@
return -EFAULT;
if(dltmp.cardno < 0 || dltmp.cardno >= MAX_BOARDS)
return -EINVAL;
if(dltmp.len < 0 || dltmp.len > sizeof(moxaBuff))
return -EINVAL;

switch(cmd)
{
@@ -2822,8 2824,6 @@
void __iomem *baseAddr;
int i;

- if(len > sizeof(moxaBuff))
- return -EINVAL;
if(copy_from_user(moxaBuff, tmp, len))
return -EFAULT;
baseAddr = moxaBaseAddr[cardno];

标签:

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

上一篇:PHP-Nuke sgallery模块远程SQL注入漏洞

下一篇:SGI IRIX inpview特权提升漏洞