Linux Kernel审计系统调用绕过安全限制漏洞


Linux Kernel是开放源码操作系统Linux所使用的内核,存在审计系统audit_syscall_entry()系统调用绕过安全限制漏洞。

受影响系统:

Linux kernel 2.6.x

描述:

--------------------------------------------------------------------------------

BUGTRAQ ID: 33951

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

Syscall过滤技术通常基于由编号确定的syscall或具体参数来确认是否允许执行调用。在通过编号确定syscall时,64位Linux内核(x86_64)上syscall编号可能既映射到32位又映射到64位的syscall表,而这两种syscall表是不同的。由于用户空间进程是由syscall表控制的,因此可以绕过syscall编号检查,执行非授权操作。

例如,syscall过滤技术可能在监控64位进程,且配置为允许常见的open() syscall的子集,在64位平台上为syscall number 2。但是,被监控的进程可以切换到32位模式并发布syscall 2,这对于监控程序为open(),但在内核中执行为fork()。

建议:

--------------------------------------------------------------------------------

厂商补丁:

Linux

-----

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

http://lkml.org/lkml/2009/2/27/451

http://lkml.org/lkml/2009/2/27/452

相关内容