cbcvebase.
CVE-2010-3081
published 2010-09-24

CVE-2010-3081: The compat_alloc_user_space functions in include/asm/compat.h files in the Linux kernel before 2.6.36-rc4-git2 on 64-bit platforms do not properly allocate the…

PriorityP276high7.8CVSS 3.1
AVLACLPRLUINSUCHIHAH
ITWEXPLOITVulnCheck KEV
Exploited in the wild
EPSS
3.53%
87.9th percentile
The compat_alloc_user_space functions in include/asm/compat.h files in the Linux kernel before 2.6.36-rc4-git2 on 64-bit platforms do not properly allocate the userspace memory required for the 32-bit compatibility layer, which allows local users to gain privileges by leveraging the ability of the compat_mc_getsockopt function (aka the MCAST_MSFILTER getsockopt support) to control a certain length value, related to a "stack pointer underflow" issue, as exploited in the wild in September 2010.

Affected

11 ranges
VendorProductVersion rangeFixed in
linuxlinux_kernel<= 2.6.35.4
linuxlinux_kernel
susesuse_linux_enterprise_desktop
susesuse_linux_enterprise_server
vmwareesx
vmwareesx
vmwareesxi
vmwarevmware_tools
vmwarevmware_vcenter_server
vmwarevmware_vsphere
vmwarevmware_workstation

Detection & IOCsextracted from sources · hover to see the quote

commandecho ':32bits:M:0:\x7fELF\x01::/bin/echo:' > /proc/sys/fs/binfmt_misc/register
urlhttp://seclists.org/fulldisclosure/2010/Sep/268
urlhttp://sota.gen.nz/compat2/robert_you_suck.c
urlhttp://www.ksplice.com/uptrack/cve-2010-3081
bytes
\x51\x57\x53\x56\x48\x31\xc9\x48\x89\xf8\x48\x31\xf6\xbe\x41\x41\x41\x41\x3b\x30\x75\x1f\x3b\x70\x04\x75\x1a\x3b\x70\x08\x75\x15\x3b\x70\x0c\x75\x10\x48\x31\xdb\x89\x18\x89\x58\x04\x89\x58\x08\x89\x58\x0c\xeb\x11\x48\xff\xc0\x48\xff\xc1\x48\x81\xf9\x4c\x04\x00\x00\x74\x02\xeb\xcc\x5e\x5b\x5f\x59\xc3
bytes
\x53\x52\x57\x48\xbb\x41\x41\x41\x41\x41\x41\x41\x41\xff\xd3\x50\x48\x89\xc7\x48\xbb\x42\x42\x42\x42\x42\x42\x42\x42\xff\xd3\x48\x31\xd2\x89\x50\x04\x89\x50\x14\x48\x89\xc7\x48\xbb\x43\x43\x43\x43\x43\x43\x43\x43\xff\xd3\x5f\x5f\x5a\x5b\xc3
bytes
\x57\x50\x65\x48\x8b\x3c\x25\x00\x00\x00\x00\x48\xb8\x41\x41\x41\x41\x41\x41\x41\x41\xff\xd0\x58\x5f
bytes
\x0f\x01\xf8\x65\x48\x8b\x3c\x25\x00\x00\x00\x00\x48\xb8\x41\x41\x41\x41\x41\x41\x41\x41\xff\xd0\x0f\x01\xf8
  • The exploit (Ac1dB1tCh3z) reads /proc/kallsyms to resolve kernel symbols at runtime; monitor for unprivileged processes opening /proc/kallsyms followed by multicast getsockopt (MCAST_MSFILTER) syscalls.
  • The exploit attempts three privilege-escalation methods: FOPS (timer_list_fops), IDT vector overwrite, and LSM hook replacement. Look for in-memory modifications to these kernel structures post-exploitation.
  • The exploit installs an in-memory backdoor that does not survive a reboot; use the Ksplice detection tool or check for kernel structure tampering before rebooting a potentially compromised host.
  • The exploit targets the compat_mc_getsockopt / MCAST_MSFILTER getsockopt path on 64-bit kernels with 32-bit compatibility enabled; alert on 32-bit processes issuing MCAST_MSFILTER getsockopt on 64-bit systems.
  • Workaround: disabling 32-bit ELF support via binfmt_misc prevents exploitation; absence of this mitigation on unpatched kernels increases risk.
  • The exploit accesses /proc/timer_list (timer_list_fops) as part of the FOPS exploitation method; monitor for unexpected access to /proc/timer_list by non-root processes.
  • The exploit checks and attempts to disable SELinux enforcement by writing to /selinux/enforce; alert on writes to /selinux/enforce from non-administrative processes.
  • The exploit maps memory at address 0x3f80000000 (Y0Y0SMAP = 0x100000UL base region); anomalous mmap calls targeting this address range from 32-bit compat processes may indicate exploitation.
  • ·The vulnerability only affects 64-bit platforms running a 32-bit compatibility layer (CONFIG_COMPAT); pure 64-bit or pure 32-bit systems are not affected.
  • ·RHEL 3, 4, 5, and MRG kernels are affected; RHEL 5 is NOT affected by the related CVE-2010-3080 issue. Confirm exact kernel version before applying workarounds.
  • ·The binfmt_misc workaround (disabling 32-bit ELF) may not always prevent exploitation in all scenarios; one report suggests it does not universally block the exploit.
  • ·The in-memory backdoor left by the Ac1dB1tCh3z exploit is cleared by a reboot; however, a patched kernel still requires a reboot to be effective, so the backdoor detection window is limited to pre-reboot.
  • ·The Ksplice detection tool only checks for artifacts placed by the original Ac1dB1tCh3z exploit code; custom or modified exploit variants may not be detected.

CVSS provenance

nvdv3.17.8HIGHCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
nvdv2.07.2HIGHAV:L/AC:L/Au:N/C:C/I:C/A:C
vulncheck7.8HIGH
vendor_redhat7.8HIGH
vendor_ubuntu7.8HIGH
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.