Re: [PATCH] module: fix [e_shstrndx].sh_size=0 OOB access
From: Alexey Dobriyan <hidden>
Date: 2022-05-04 09:52:15
Also in:
lkml
From: Alexey Dobriyan <hidden>
Date: 2022-05-04 09:52:15
Also in:
lkml
On Tue, May 03, 2022 at 01:15:04PM -0700, Luis Chamberlain wrote:
On Tue, May 03, 2022 at 05:57:59PM +0300, Alexey Dobriyan wrote:quoted
It is trivial to craft a module to trigger OOB access in this line: if (info->secstrings[strhdr->sh_size - 1] != '\0') { BUG: unable to handle page fault for address: ffffc90000aa0fff #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 100000067 P4D 100000067 PUD 100066067 PMD 10436f067 PTE 0 Oops: 0000 [#1] PREEMPT SMP PTI CPU: 7 PID: 1215 Comm: insmod Not tainted 5.18.0-rc5-00007-g9bf578647087-dirty #10 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-4.fc34 04/01/2014 RIP: 0010:load_module+0x19b/0x2391 Signed-off-by: Alexey Dobriyan <redacted>Thanks! Can you resend and Cc stable?
Stable will pick it up simply because patch does apply I assume?
This seems like an issue present for a long time, can you identify the commit which introduced the issue?
I thought it was ancient code but no.