USN-302-1: Linux kernel vulnerabilities

15 June 2006

linux-source- vulnerabilities

A security issue affects these releases of Ubuntu and its derivatives:

  • Ubuntu 6.06 LTS
  • Ubuntu 5.10
  • Ubuntu 5.04

Software Description


An integer overflow was discovered in the do_replace() function. A local user process with the CAP_NET_ADMIN capability could exploit this to execute arbitrary commands with full root privileges. However, none of Ubuntu’s supported packages use this capability with any non-root user, so this only affects you if you use some third party software like the OpenVZ virtualization system. (CVE-2006-0038)

On EMT64 CPUs, the kernel did not properly handle uncanonical return addresses. A local user could exploit this to trigger a kernel crash. (CVE-2006-0744)

Al Viro discovered a local Denial of Service in the sysfs write buffer handling. By writing a block with a length exactly equal to the processor’s page size to any writable file in /sys, a local attacker could cause a kernel crash. (CVE-2006-1055)

Jan Beulich discovered an information leak in the handling of registers for the numeric coprocessor when running on AMD processors. This allowed processes to see the coprocessor execution state of other processes, which could reveal sensitive data in the case of cryptographic computations. (CVE-2006-1056)

Marcel Holtmann discovered that the sys_add_key() did not check that a new user key is added to a proper keyring. By attempting to add a key to a normal user key (which is not a keyring), a local attacker could exploit this to crash the kernel. (CVE-2006-1522)

Ingo Molnar discovered that the SCTP protocol connection tracking module in netfilter got stuck in an infinite loop on certain empty packet chunks. A remote attacker could exploit this to cause the computer to hang. (CVE-2006-1527)

The SCSI I/O driver did not correctly handle the VM_IO flag for memory mapped pages used for data transfer. A local user could exploit this to cause a kernel crash. (CVE-2006-1528)

The choose_new_parent() contained obsolete debugging code. A local user could exploit this to cause a kernel crash. (CVE-2006-1855)

Kostik Belousov discovered that the readv() and writev() functions did not query LSM modules for access permission. This could be exploited to circumvent access restrictions defined by LSM modules such as SELinux or AppArmor. (CVE-2006-1856)

The SCTP driver did not properly verify certain parameters when receiving a HB-ACK chunk. By sending a specially crafted packet to an SCTP socket, a remote attacker could exploit this to trigger a buffer overflow, which could lead to a crash or possibly even arbitrary code execution. (CVE-2006-1857)

The sctp_walk_params() function in the SCTP driver incorrectly used rounded values for bounds checking instead of the precise values. By sending a specially crafted packet to an SCTP socket, a remote attacker could exploit this to crash the kernel. (CVE-2006-1858)

Bjoern Steinbrink reported a memory leak in the __setlease() function. A local attacker could exploit this to exhaust kernel memory and render the computer unusable (Denial of Service). (CVE-2006-1859)

Daniel Hokka Zakrisson discovered that the lease_init() did not properly handle locking. A local attacker could exploit this to cause a kernel deadlock (Denial of Service). (CVE-2006-1860)

Mark Moseley discovered that the CIFS file system driver did not filter out “..\” path components. A local attacker could exploit this to break out of a chroot environment on a mounted SMB share. (CVE-2006-1863) The same vulnerability applies to the older smb file system. (CVE-2006-1864)

Hugh Dickins discovered that the mprotect() function allowed an user to change a read-only shared memory attachment to become writable, which bypasses IPC (inter-process communication) permissions. (CVE-2006-2071)

The SCTP (Stream Control Transmission Protocol) driver triggered a kernel panic on unexpected packets while the session was in the CLOSED state, instead of silently ignoring the packets. A remote attacker could exploit this to crash the computer. (CVE-2006-2271)

The SCTP driver did not handle control chunks if they arrived in fragmented packets. By sending specially crafted packets to an SCTP socket, a remote attacker could exploit this to crash the target machine. (CVE-2006-2272)

The SCTP driver did not correctly handle packets containing more than one DATA fragment. By sending specially crafted packets to an SCTP socket, a remote attacker could exploit this to crash the target machine. (CVE-2006-2274)

The SCTP driver did not correcly buffer incoming packets. By sending a large number of small messages to a receiver application that cannot process the messages quickly enough, a remote attacker could exploit this to cause a deadlock in the target machine (Denial of Service). (CVE-2006-2275)

Patrick McHardy discovered that the snmp_trap_decode() function did not correctly handle memory allocation in some error conditions. By sending specially crafted packets to a machine which uses the SNMP network address translation (NAT), a remote attacker could exploit this to crash that machine. (CVE-2006-2444)

In addition, the Ubuntu 6.06 LTS update fixes a range of bugs.

Update instructions

The problem can be corrected by updating your system to the following package versions:

Ubuntu 6.06 LTS
avm-fritz-firmware -
avm-fritz-firmware-2.6.15-25 -
avm-fritz-kernel-source -
fglrx-control -
fglrx-kernel-source -
linux-386 -
linux-686 -
linux-686-smp -
linux-amd64-generic -
linux-amd64-k8 -
linux-amd64-k8-smp -
linux-amd64-server -
linux-amd64-xeon -
linux-image-2.6.15-25-386 - 2.6.15-25.43
linux-image-2.6.15-25-686 - 2.6.15-25.43
linux-image-2.6.15-25-amd64-generic - 2.6.15-25.43
linux-image-2.6.15-25-amd64-k8 - 2.6.15-25.43
linux-image-2.6.15-25-amd64-server - 2.6.15-25.43
linux-image-2.6.15-25-amd64-xeon - 2.6.15-25.43
linux-image-2.6.15-25-k7 - 2.6.15-25.43
linux-image-2.6.15-25-powerpc - 2.6.15-25.43
linux-image-2.6.15-25-powerpc-smp - 6.15-25.43
linux-image-2.6.15-25-powerpc64-smp - 2.6.15-25.43
linux-image-2.6.15-25-server - 2.6.15-25.43
linux-image-2.6.15-25-server-bigiron - 2.6.15-25.43
linux-image-386 -
linux-image-686 -
linux-image-amd64-generic -
linux-image-amd64-k8 -
linux-image-amd64-server -
linux-image-amd64-xeon -
linux-image-k7 -
linux-image-power3 -
linux-image-power3-smp -
linux-image-power4 -
linux-image-power4-smp -
linux-image-powerpc -
linux-image-powerpc-smp -
linux-image-powerpc64-smp -
linux-image-server -
linux-image-server-bigiron -
linux-k7 -
linux-k7-smp -
linux-power3 -
linux-power3-smp -
linux-power4 -
linux-power4-smp -
linux-powerpc -
linux-powerpc-smp -
linux-powerpc64-smp -
linux-restricted-modules-2.6.15-25-386 -
linux-restricted-modules-2.6.15-25-686 -
linux-restricted-modules-2.6.15-25-amd64-generic -
linux-restricted-modules-2.6.15-25-amd64-k8 -
linux-restricted-modules-2.6.15-25-amd64-xeon -
linux-restricted-modules-2.6.15-25-k7 -
linux-restricted-modules-2.6.15-25-powerpc -
linux-restricted-modules-2.6.15-25-powerpc-smp -
linux-restricted-modules-386 -
linux-restricted-modules-686 -
linux-restricted-modules-amd64-generic -
linux-restricted-modules-amd64-k8 -
linux-restricted-modules-amd64-xeon -
linux-restricted-modules-common -
linux-restricted-modules-k7 -
linux-restricted-modules-powerpc -
linux-restricted-modules-powerpc-smp -
linux-server -
linux-server-bigiron -
linux-source-2.6.15 - 2.6.15-25.43
nvidia-glx -
nvidia-glx-dev -
nvidia-glx-legacy -
nvidia-glx-legacy-dev -
xorg-driver-fglrx -
xorg-driver-fglrx-dev -
Ubuntu 5.10
linux-image-2.6.12-10-386 - 2.6.12-10.34
linux-image-2.6.12-10-686 - 2.6.12-10.34
linux-image-2.6.12-10-686-smp - 2.6.12-10.34
linux-image-2.6.12-10-amd64-generic - 2.6.12-10.34
linux-image-2.6.12-10-amd64-k8 - 2.6.12-10.34
linux-image-2.6.12-10-amd64-k8-smp - 2.6.12-10.34
linux-image-2.6.12-10-amd64-xeon - 2.6.12-10.34
linux-image-2.6.12-10-k7 - 2.6.12-10.34
linux-image-2.6.12-10-k7-smp - 2.6.12-10.34
linux-image-2.6.12-10-powerpc - 2.6.12-10.34
linux-image-2.6.12-10-powerpc-smp - 2.6.12-10.34
linux-image-2.6.12-10-powerpc64-smp - 2.6.12-10.34
linux-patch-ubuntu-2.6.12 - 2.6.12-10.34
linux-source-2.6.12 - 2.6.12-10.34
linux-tree-2.6.12 - 2.6.12-10.34
Ubuntu 5.04
linux-image-2.6.10-6-386 - 2.6.10-34.20
linux-image-2.6.10-6-686 - 2.6.10-34.20
linux-image-2.6.10-6-686-smp - 2.6.10-34.20
linux-image-2.6.10-6-amd64-generic - 2.6.10-34.20
linux-image-2.6.10-6-amd64-k8 - 2.6.10-34.20
linux-image-2.6.10-6-amd64-k8-smp - 2.6.10-34.20
linux-image-2.6.10-6-amd64-xeon - 2.6.10-34.20
linux-image-2.6.10-6-k7 - 2.6.10-34.20
linux-image-2.6.10-6-k7-smp - 2.6.10-34.20
linux-image-2.6.10-6-power3 - 2.6.10-34.20
linux-image-2.6.10-6-power3-smp - 2.6.10-34.20
linux-image-2.6.10-6-power4 - 2.6.10-34.20
linux-image-2.6.10-6-power4-smp - 2.6.10-34.20
linux-image-2.6.10-6-powerpc - 2.6.10-34.20
linux-image-2.6.10-6-powerpc-smp - 2.6.10-34.20
linux-patch-ubuntu-2.6.10 - 2.6.10-34.20
linux-source-2.6.10 - 2.6.10-34.20
linux-tree-2.6.10 - 2.6.10-34.20

To update your system, please follow these instructions:

After a standard system upgrade you need to reboot your computer to effect the necessary changes.

ATTENTION: Due to an unavoidable ABI change the Ubuntu 6.06 kernel update has been given a new version number, which requires you to recompile and reinstall all third party kernel modules you might have installed. If you use linux-restricted-modules, you have to update that package as well to get modules which work with the new kernel version. Unless you manually uninstalled the standard kernel metapackages (linux-386, linux-powerpc, linux-amd64-generic), a standard system upgrade will automatically perform this as well.