lkml.org 
[lkml]   [2020]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH] Bug fix to ELF Loader which rejects valid ELFs
Date
> -----Original Message-----
> From: Matthew Wilcox <willy@infradead.org>
> Sent: Tuesday, August 11, 2020 11:05 AM
> To: Burrow, Ryan - 0553 - MITLL <Ryan.Burrow@ll.mit.edu>
> Cc: linux-fsdevel@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: Re: [PATCH] Bug fix to ELF Loader which rejects valid ELFs
>
> On Tue, Aug 11, 2020 at 02:44:08PM +0000, Burrow, Ryan - 0553 - MITLL
wrote:
> > /* Sanity check the number of program headers... */
> > - /* ...and their total size. */
> > - size = sizeof(struct elf_phdr) * elf_ex->e_phnum;
> > - if (size == 0 || size > 65536 || size > ELF_MIN_ALIGN)
> > + if (elf_ex->e_phnum == 0 || elf_ex->phnum > 65535)
>
> umm, did you compile-test this?
>

My apologies, I had made these edits in the context of other changes which I
didn't want to include in this patch - I replicated these changes
individually and (mistakenly) assumed I had done so correctly.

> assuming you meant e_phnum, it's a 16-bit quantity, so it can't be bigger
> than 65535.
>
> > goto out;
> >
> > + size = sizeof(struct elf_phdr) * elf_ex->e_phnum;
>
> use array_size() here?
>

That's a good catch - I had really just moved the previous allocation of
size down to after the check, but I'll use array_size instead. Just to
confirm the correct process, should I do an inline response with the updated
commit, or submit a new patch email?

[unhandled content-type:application/pkcs7-signature]
\
 
 \ /
  Last update: 2020-08-11 18:40    [W:0.041 / U:0.144 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site