lkml.org 
[lkml]   [2013]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Out-of-bounds access in get_wchan (arch/x86/kernel/process_64.c)
> Indeed, get_wchan ensures that fp<stack+THREAD_SIZE, but then dereferences fp+8:
>
> 434 if (fp < (unsigned long)stack ||
> 435 fp >= (unsigned long)stack+THREAD_SIZE)
> 436 return 0;
> 437 ip = *(u64 *)(fp+8);
>
> It must check that fp+8<stack+THREAD_SIZE.
> As far as I see, the bug can lead to garbage return values or in the
> worst case to crash.

Thanks for the report.

The change looks good to me. Can you please submit a formal signed off patch
to x86@kernel.org ?

-Andi


--
ak@linux.intel.com -- Speaking for myself only


\
 
 \ /
  Last update: 2013-09-11 00:21    [W:0.059 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site