Alexei Starovoitov
6ee16f4a03
bpf: fix verifier memory corruption
...
[ Upstream commit c3de6317d7 ]
Due to missing bounds check the DAG pass of the BPF verifier can corrupt
the memory which can cause random crashes during program loading:
[8.449451] BUG: unable to handle kernel paging request at ffffffffffffffff
[8.451293] IP: [<ffffffff811de33d>] kmem_cache_alloc_trace+0x8d/0x2f0
[8.452329] Oops: 0000 [#1 ] SMP
[8.452329] Call Trace:
[8.452329] [<ffffffff8116cc82>] bpf_check+0x852/0x2000
[8.452329] [<ffffffff8116b7e4>] bpf_prog_load+0x1e4/0x310
[8.452329] [<ffffffff811b190f>] ? might_fault+0x5f/0xb0
[8.452329] [<ffffffff8116c206>] SyS_bpf+0x806/0xa30
Fixes: f1bca824da ("bpf: add search pruning optimization to verifier")
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com >
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org >
Acked-by: Daniel Borkmann <daniel@iogearbox.net >
Signed-off-by: David S. Miller <davem@davemloft.net >
Signed-off-by: Sasha Levin <sasha.levin@oracle.com >
2015-04-27 16:48:31 -04:00
..
2015-04-27 16:48:31 -04:00
2014-08-08 16:30:24 -07:00
2015-03-06 14:53:01 -08:00
2015-04-16 20:11:43 -04:00
2014-10-29 16:33:14 -07:00
2015-01-27 08:29:37 -08:00
2015-03-23 21:02:44 -04:00
2015-04-24 17:14:04 -04:00
2015-03-28 09:36:33 -04:00
2014-10-28 13:24:13 -07:00
2015-04-24 17:13:43 -04:00
2015-04-24 17:14:12 -04:00
2015-03-28 09:37:25 -04:00
2013-12-10 18:21:34 +00:00
2014-10-09 22:26:04 -04:00
2014-10-09 22:26:04 -04:00
2014-11-11 14:20:22 -05:00
2014-09-23 16:37:53 -04:00
2015-01-08 10:30:27 -08:00
2014-09-23 16:37:51 -04:00
2015-01-08 10:30:27 -08:00
2014-10-19 16:25:56 -07:00
2014-06-04 16:54:14 -07:00
2014-08-08 15:57:18 -07:00
2014-07-24 21:53:47 +10:00
2014-07-15 11:05:09 -04:00
2014-10-10 07:26:02 -04:00
2014-09-06 12:58:18 +02:00
2013-05-01 17:29:18 -04:00
2014-10-28 10:46:05 +01:00
2014-10-23 07:51:17 -07:00
2015-03-28 09:42:58 -04:00
2014-08-25 15:42:19 -07:00
2014-07-23 10:18:06 -07:00
2013-11-09 00:16:23 -05:00
2014-06-04 16:54:15 -07:00
2015-01-16 06:59:57 -08:00
2014-02-13 18:13:22 -08:00
2014-10-13 16:23:15 +02:00
2014-10-21 23:44:20 +02:00
2014-02-02 14:09:12 -08:00
2014-10-26 16:16:18 +01:00
2015-01-08 10:30:25 -08:00
2014-06-04 16:54:15 -07:00
2014-10-15 07:48:18 +02:00
2013-10-19 19:45:35 -04:00
2014-10-14 02:18:16 +02:00
2014-09-10 15:42:12 -07:00
2013-11-15 09:32:22 +09:00
2014-07-16 14:57:13 +02:00
2014-10-14 02:18:21 +02:00
2014-10-29 16:33:14 -07:00
2014-08-08 10:38:04 +02:00
2014-04-25 12:00:49 -07:00
2014-10-09 22:25:51 -04:00
2014-06-04 16:54:15 -07:00
2014-10-27 19:09:59 -04:00
2013-10-25 17:15:18 -04:00
2013-09-25 17:17:01 +01:00
2014-10-18 10:24:26 -07:00
2014-04-24 10:26:39 +02:00
2014-07-29 18:08:50 -07:00
2013-12-05 21:28:42 +08:00
2014-11-13 16:17:06 -08:00
2014-10-14 02:18:28 +02:00
2014-04-02 16:20:21 -07:00
2015-01-08 10:30:28 -08:00
2014-06-06 16:08:13 -07:00
2014-07-16 15:10:39 +02:00
2013-06-18 11:32:10 -05:00
2014-09-26 00:00:06 -07:00
2014-04-12 14:49:50 -07:00
2014-06-04 16:54:15 -07:00
2014-10-14 02:18:22 +02:00
2014-10-14 02:27:06 +02:00
2014-08-09 09:58:12 -07:00
2014-10-15 07:48:18 +02:00
2015-02-11 15:00:56 +08:00
2014-10-15 07:48:18 +02:00
2014-06-04 16:54:15 -07:00
2014-10-08 21:40:54 -04:00
2014-10-13 16:23:15 +02:00
2014-10-07 20:39:25 -04:00
2015-03-14 15:37:15 -04:00
2013-12-10 18:25:28 +00:00
2014-07-17 09:35:17 -04:00
2013-09-11 15:58:27 -07:00
2014-08-26 13:45:45 -04:00
2014-08-08 15:57:18 -07:00
2014-09-16 13:41:06 -07:00
2014-06-21 00:15:26 -04:00
2014-07-23 10:18:05 -07:00
2015-01-08 10:30:25 -08:00
2014-02-24 14:47:15 -08:00
2015-01-08 10:30:26 -08:00
2014-08-26 13:45:45 -04:00
2015-01-08 10:30:26 -08:00
2014-06-06 16:08:16 -07:00
2014-07-29 18:08:50 -07:00
2014-10-15 07:48:18 +02:00
2014-05-20 10:59:32 -04:00
2015-03-28 09:37:48 -04:00