首页 -> 安全研究

安全研究

安全漏洞
UML_NET整数溢出导致本地任意代码执行漏洞

发布日期:2003-05-24
更新日期:2003-05-29

受影响系统:
RedHat kernel-utils-2.4-8.13.i386.rpm
    - RedHat Linux 8.0
描述:
BUGTRAQ  ID: 7676

Redhat是一款免费开放源代码的Linux操作系统,其中kernel-util包包含多个工具用来控制内核或者机器硬件,Redhat 8.0包含User Mode Linux(UML)工具。

uml_net在处理版本信息时由于整数错误管理,本地攻击者可以利用这个漏洞进行基于整数的溢出,可能以root用户权限在系统上执行任意指令。

问题是uml_net中的uml_net.c缺少正确的缓冲区边界检查,其中包含如下代码:

int n = 3, v;

其中v声明为有符号整数,并且将进行如下比较:

if(v > CURRENT_VERSION)

因此,如果"v"小于0,将通过上面的测试,但是由于此时"v"为一个很大的负整数,处理下面的代码时:

if(handlers[v] != NULL) (*handlers[v])(argc - n, &argv[n]);

用户可以很好的控制handlers[v]而指向用户控制的堆栈区域,由于此时root用户权限还没有丢弃,因此攻击者可能以root用户权限在系统上执行任意指令。

<*来源:Ktha (ktha@hushmail.com
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=105379434326900&w=2
        https://www.redhat.com/support/errata/RHSA-2003-056.html
*>

建议:
厂商补丁:

RedHat
------
RedHat已经为此发布了一个安全公告(RHSA-2003:056-08)以及相应补丁:
RHSA-2003:056-08:Updated kernel-utils packages fix setuid vulnerability
链接:https://www.redhat.com/support/errata/RHSA-2003-056.html

补丁下载:

Red Hat Linux 8.0:

SRPMS:
ftp://updates.redhat.com/8.0/en/os/SRPMS/kernel-utils-2.4-8.28.src.rpm

i386:
ftp://updates.redhat.com/8.0/en/os/i386/kernel-utils-2.4-8.28.i386.rpm

可使用下列命令安装补丁:

rpm -Fvh [文件名]

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