oss-sec mailing list archives

Re: CVE request: kernel: setup_arg_pages: diagnose excessive argument size


From: Josh Bressers <bressers () redhat com>
Date: Fri, 22 Oct 2010 10:33:39 -0400 (EDT)

Please use CVE-2010-3858

Thanks.

-- 
    JB


----- "Eugene Teo" <eugene () redhat com> wrote:

"The CONFIG_STACK_GROWSDOWN variant of setup_arg_pages() does not
check 
the size of the argument/environment area on the stack. When it is 
unworkably large, shift_arg_pages() hits its BUG_ON. This is
exploitable 
with a very large RLIMIT_STACK limit, to create a crash pretty
easily.

Check that the initial stack is not too large to make it possible to
map 
in any executable.  We're not checking that the actual executable (or

intepreter, for binfmt_elf) will fit.  So those mappings might clobber

part of the initial stack mapping.  But that is just userland lossage

that userland made happen, not a kernel problem."

Upstream commit:
http://git.kernel.org/linus/1b528181b2ffa14721fb28ad1bd539fe1732c583

References:
http://grsecurity.net/~spender/64bit_dos.c
https://bugzilla.redhat.com/show_bug.cgi?id=645222

Eugene
-- 
main(i) { putchar(182623909 >> (i-1) * 5&31|!!(i<7)<<6) && main(++i);
}


Current thread: