Alexey Dobriyan
09cb666361
module: fix [e_shstrndx].sh_size=0 OOB access
...
[ Upstream commit 391e982bfa632b8315235d8be9c0a81374c6a19c ]
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
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
Fixes: ec2a29593c83 ("module: harden ELF info handling")
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
[rebased patch onto modules-next]
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-07-12 16:35:09 +02:00
..
2022-07-12 16:34:54 +02:00
2022-05-18 10:26:56 +02:00
2021-05-07 00:26:34 -07:00
2022-05-25 09:57:37 +02:00
2022-06-29 09:03:31 +02:00
2021-11-25 09:49:07 +01:00
2022-06-09 10:22:48 +02:00
2021-06-22 11:07:18 -07:00
2022-05-30 09:29:00 +02:00
2021-09-02 13:00:15 -07:00
2022-04-08 14:23:29 +02:00
2022-04-08 14:23:57 +02:00
2022-04-08 14:23:07 +02:00
2022-06-09 10:22:49 +02:00
2022-06-09 10:22:32 +02:00
2022-06-22 14:22:02 +02:00
2022-07-02 16:41:12 +02:00
2022-06-29 09:03:20 +02:00
2021-05-02 00:43:35 +09:00
2021-09-08 11:50:26 -07:00
2022-02-23 12:03:07 +01:00
2021-08-24 18:52:36 -04:00
2022-02-08 18:34:03 +01:00
2022-04-08 14:23:06 +02:00
2022-04-08 14:23:06 +02:00
2022-06-22 14:22:04 +02:00
2021-09-08 15:32:35 -07:00
2021-08-16 18:55:32 +02:00
2022-05-30 09:29:09 +02:00
2021-12-29 12:28:49 +01:00
2022-02-23 12:03:20 +01:00
2021-05-12 11:43:25 +02:00
2021-08-23 13:10:37 -06:00
2022-03-08 19:12:49 +01:00
2021-06-18 11:43:08 +02:00
2021-09-03 23:00:22 +02:00
2021-05-27 04:01:50 +09:00
2021-07-02 12:08:10 -07:00
2021-06-10 10:00:08 +02:00
2021-07-05 10:46:20 +02:00
2021-07-08 11:48:22 -07:00
2021-08-17 17:50:51 +02:00
2021-06-28 22:43:05 +02:00
2021-08-30 16:36:10 +02:00
2022-06-09 10:23:27 +02:00
2021-09-08 15:32:34 -07:00
2021-05-07 00:26:33 -07:00
2021-12-08 09:04:41 +01:00
2021-06-29 17:29:11 -07:00
2022-04-13 20:59:28 +02:00
2022-07-12 16:35:09 +02:00
2021-08-16 18:55:32 +02:00
2021-09-03 09:58:12 -07:00
2021-08-27 16:30:18 +08:00
2021-08-30 16:36:10 +02:00
2021-08-16 14:42:22 +02:00
2021-09-03 09:58:12 -07:00
2021-08-10 12:53:07 +02:00
2021-09-08 11:50:26 -07:00
2022-06-09 10:22:29 +02:00
2021-06-21 13:08:36 +01:00
2022-04-08 14:23:43 +02:00
2022-04-08 14:23:10 +02:00
2022-06-09 10:22:46 +02:00
2021-11-18 19:16:29 +01:00
2022-02-16 12:56:38 +01:00
2022-06-09 10:22:48 +02:00
2022-04-20 09:34:21 +02:00
2021-08-10 14:57:42 +02:00
2021-08-10 22:50:07 +02:00
2022-02-23 12:03:07 +01:00
2022-04-13 20:59:28 +02:00
2022-04-13 20:59:28 +02:00
2022-04-13 20:59:28 +02:00
2021-09-08 15:32:35 -07:00
2022-02-23 12:03:20 +01:00
2021-06-23 16:41:24 -06:00
2022-03-11 12:22:31 +01:00
2021-04-30 11:20:42 -07:00
2021-08-10 10:48:07 -07:00
2021-08-16 11:39:51 -04:00
2022-01-27 11:05:35 +01:00
2022-02-23 12:03:20 +01:00
2021-05-07 00:26:34 -07:00
2021-05-09 13:07:03 -07:00
2022-03-08 19:12:42 +01:00
2021-09-08 11:50:27 -07:00
2021-07-03 11:41:14 -07:00
2022-04-08 14:24:11 +02:00
2021-06-29 10:53:46 -07:00
2021-08-17 07:49:10 -10:00
2022-01-16 09:12:41 +01:00