RHSA-2009:1239 - Security Advisory
Important: kernel-rt security and bug fix update
Security Advisory: Important
Updated kernel-rt packages that fix several security issues and various
bugs are now available for Red Hat Enterprise MRG 1.1.
This update has been rated as having important security impact by the Red
Hat Security Response Team.
[Updated 1st Sep 2009]
This erratum originally stated that these updated kernel packages corrected
the issue CVE-2009-1895. This was a mistake as the kernel packages do not
contain a fix for this issue. CVE-2009-1895 will be addressed in a future
The kernel-rt packages contain the Linux kernel, the core of any Linux
These updated packages fix the following security issues:
- Tavis Ormandy and Julien Tinnes of the Google Security Team reported a
flaw in the SOCKOPS_WRAP macro in the Linux kernel. This macro did not
initialize the sendpage operation in the proto_ops structure correctly. A
local, unprivileged user could use this flaw to cause a local denial of
service or escalate their privileges. (CVE-2009-2692, Important)
- it was discovered that, when executing a new process, the clear_child_tid
pointer in the Linux kernel is not cleared. If this pointer points to a
writable portion of the memory of the new program, the kernel could corrupt
four bytes of memory, possibly leading to a local denial of service or
privilege escalation. (CVE-2009-2848, Important)
- a flaw was found in the way the do_sigaltstack() function in the Linux
kernel copies the stack_t structure to user-space. On 64-bit machines, this
flaw could lead to a four-byte information leak. (CVE-2009-2847, Moderate)
This update also fixes the following bugs:
- the gcc flag "-fno-delete-null-pointer-checks" was added to the kernel
build options. This prevents gcc from optimizing out NULL pointer checks
after the first use of a pointer. NULL pointer bugs are often exploited by
attackers, and keeping these checks is considered a safety measure.
- a bug in the locking strategy for the free_pages_bulk() kernel function
was found, where a lock in a code branch was not held. This could have
created a "double free" problem that resulted in a kernel panic.
- udevd and multipathd were unable to service events fast enough when a
Fibre Channel cable was unplugged. This caused the cable state to be out of
sync if the cable was plugged back in quickly, possibly resulting in
devices being removed, or path issues when using Device-Mapper Multipath.
This has been changed so that users can specify devices that should not be
removed if a cable is unplugged. (BZ#514541)
- a race condition in exit_thread() could have eventually caused a kernel
- a race condition was fixed between kthread_stop() and kthread_create().
Kernel subsystems creating and stopping threads at a fast pace could hit
this issue. Several inexplicable backtraces observed during tests
caused this race condition. (BZ#518967)
- HPET_EMULATE_RTC was being disabled during kernel compile. This was
caused by an incorrect requirement in the related Kconfig entry. This issue
led to failures when accessing the RTC (real time clock) in machines that
had the RTC emulated by HPET (High Precision Event Timer). (BZ#519433)
Users should upgrade to these updated packages, which contain backported
patches to correct these issues. The system must be rebooted for this
update to take effect.
Before applying this update, make sure that all previously-released
errata relevant to your system have been applied.
This update is available via Red Hat Network. Details on how to use
the Red Hat Network to apply this update are available at
- MRG Realtime 1 x86_64
- MRG Realtime 1 i386
- BZ - 515423 - CVE-2009-2848 kernel: execve: must clear current->clear_child_tid
- BZ - 516949 - CVE-2009-2692 kernel: uninit op in SOCKOPS_WRAP() leads to privesc
- BZ - 511187 - kernel: build with -fno-delete-null-pointer-checks [mrg-1]
- BZ - 514541 - [FOCUS] [MRG-1] When the dev_loss_tmo fires don't remove devices by default.
- BZ - 515392 - CVE-2009-2847 kernel: information leak in sigaltstack
MRG Realtime 1