【绿盟科技授权,赛迪发布,谢绝任何网站转载,违者,赛迪网将保留追究其法律责任的权利!】
发布日期:2007-09-21
更新日期:2007-09-25
受影响系统:
Linux kernel 2.6
Linux kernel 2.4
不受影响系统:
Linux kernel 2.6.22.7
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 25774
CVE(CAN) ID: CVE-2007-4573
Linux Kernel是开放源码操作系统Linux所使用的内核。
Linux Kernel处理应用程序兼容的底层代码存在漏洞,本地攻击者可能利用此漏洞提升自己的权限。
在x86_64平台上,Linux Kernel支持对IA32用户域应用程序的兼容模拟,arch/x86_64/ia32/ia32entry.S代码优化导致在底层汇编例程中使用了无效的opcode,以下代码部分没有充分地验证%RAX寄存器:
---8<---
sysenter_do_call:
cmpl $(IA32_NR_syscalls-1),%eax
ja ia32_badsys
IA32_ARG_FIXUP 1
call *ia32_sys_call_table(,%rax,8)
---8<---
cstar_do_call:
cmpl $IA32_NR_syscalls-1,%eax
ja ia32_badsys
IA32_ARG_FIXUP 1
call *ia32_sys_call_table(,%rax,8)
---8<---
ia32_do_syscall:
cmpl $(IA32_NR_syscalls-1),%eax
ja ia32_badsys
IA32_ARG_FIXUP
call *ia32_sys_call_table(,%rax,8) # xxx: rip relative
---8<---
|
由于没有正确地验证存储在%RAX寄存器中的64位值,可能导致越界系统调用表访问,本地攻击者可以在Linux Kernel系统环境中执行任意指令。
<*来源:Wojciech Purczynski (cliph@isec.pl)
链接:http://secunia.com/advisories/26934/
http://marc.info/?l=bugtraq&m=119064977619422&w=2
http://kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.22.7
http://kernel.org/pub/linux/kernel/v2.4/ChangeLog-2.4.35.3
https://www.redhat.com/support/errata/RHSA-2007-0937.html
https://www.redhat.com/support/errata/RHSA-2007-0938.html
https://www.redhat.com/support/errata/RHSA-2007-0936.html
*>
建议:
--------------------------------------------------------------------------------
厂商补丁:
Linux
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.7.tar.bz2
RedHat
------
RedHat已经为此发布了安全公告(RHSA-2007:0936-01,RHSA-2007:0937-01,RHSA-2007:0938-01)以及相应补丁:
RHSA-2007:0936-01:Important: kernel security update
链接:https://www.redhat.com/support/errata/RHSA-2007-0936.html
RHSA-2007:0937-01:Important: kernel security update
链接:https://www.redhat.com/support/errata/RHSA-2007-0937.html
RHSA-2007:0938-01:Important: kernel security update
链接:https://www.redhat.com/support/errata/RHSA-2007-0938.html
(责任编辑:李磊)