Pablo Neira Ayuso
f993c1a2b0
UPSTREAM: netfilter: nf_tables: deactivate anonymous set from preparation phase
...
commit c1592a89942e9678f7d9c8030efa777c0d57edab upstream.
Toggle deleted anonymous sets as inactive in the next generation, so
users cannot perform any update on it. Clear the generation bitmask
in case the transaction is aborted.
The following KASAN splat shows a set element deletion for a bound
anonymous set that has been already removed in the same transaction.
[ 64.921510] ==================================================================
[ 64.923123] BUG: KASAN: wild-memory-access in nf_tables_commit+0xa24/0x1490 [nf_tables]
[ 64.924745] Write of size 8 at addr dead000000000122 by task test/890
[ 64.927903] CPU: 3 PID: 890 Comm: test Not tainted 6.3.0+ #253
[ 64.931120] Call Trace:
[ 64.932699] <TASK>
[ 64.934292] dump_stack_lvl+0x33/0x50
[ 64.935908] ? nf_tables_commit+0xa24/0x1490 [nf_tables]
[ 64.937551] kasan_report+0xda/0x120
[ 64.939186] ? nf_tables_commit+0xa24/0x1490 [nf_tables]
[ 64.940814] nf_tables_commit+0xa24/0x1490 [nf_tables]
[ 64.942452] ? __kasan_slab_alloc+0x2d/0x60
[ 64.944070] ? nf_tables_setelem_notify+0x190/0x190 [nf_tables]
[ 64.945710] ? kasan_set_track+0x21/0x30
[ 64.947323] nfnetlink_rcv_batch+0x709/0xd90 [nfnetlink]
[ 64.948898] ? nfnetlink_rcv_msg+0x480/0x480 [nfnetlink]
Bug: 282877000
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Lee Jones <joneslee@google.com >
Change-Id: I536b7fbec55a5b37a57546023891a3dcfeb2c24b
2023-05-16 08:38:49 +01:00
..
2023-01-18 11:48:52 +01:00
2022-11-10 18:15:29 +01:00
2022-07-29 17:25:16 +02:00
2022-09-23 13:41:17 +02:00
2021-09-07 14:40:30 +02:00
2019-05-21 10:50:45 +02:00
2021-03-28 17:31:14 -07:00
2019-07-16 13:16:59 +02:00
2019-07-16 13:16:59 +02:00
2023-01-26 16:03:51 +00:00
2021-08-25 12:50:38 +02:00
2022-06-01 09:32:33 -07:00
2019-12-17 22:59:31 +01:00
2021-05-05 23:45:48 +02:00
2020-07-22 01:18:05 +02:00
2021-06-01 23:53:51 +02:00
2019-06-19 17:09:52 +02:00
2022-04-08 14:23:42 +02:00
2022-09-28 11:11:46 +02:00
2019-08-27 18:07:03 +02:00
2019-05-30 11:26:32 -07:00
2022-12-14 11:37:23 +01:00
2021-05-05 23:45:48 +02:00
2021-06-18 14:47:43 +02:00
2019-06-19 17:09:55 +02:00
2021-07-02 02:07:01 +02:00
2021-06-18 14:47:43 +02:00
2022-12-31 13:14:14 +01:00
2023-02-01 08:27:30 +01:00
2022-09-15 11:30:01 +02:00
2021-11-18 19:16:21 +01:00
2021-07-02 02:07:01 +02:00
2021-05-05 23:45:48 +02:00
2019-05-31 18:02:45 +02:00
2022-09-28 11:11:46 +02:00
2019-05-30 11:26:32 -07:00
2023-02-01 08:27:30 +01:00
2019-07-16 13:16:59 +02:00
2019-09-13 12:33:06 +02:00
2019-05-24 17:37:51 +02:00
2020-10-22 14:49:36 +02:00
2022-08-31 17:16:42 +02:00
2022-04-08 14:23:40 +02:00
2022-05-25 09:57:33 +02:00
2022-12-31 13:14:36 +01:00
2021-08-30 01:51:36 +02:00
2020-05-27 22:20:34 +02:00
2022-07-21 21:24:23 +02:00
2021-03-31 22:34:11 +02:00
2019-07-16 13:16:59 +02:00
2021-09-21 03:46:55 +02:00
2019-07-16 13:16:59 +02:00
2019-06-22 08:59:24 -04:00
2019-07-16 13:16:59 +02:00
2021-09-21 03:46:56 +02:00
2021-04-26 03:20:07 +02:00
2019-06-22 08:59:24 -04:00
2019-07-16 13:16:59 +02:00
2019-07-16 13:16:59 +02:00
2022-03-08 19:12:45 +01:00
2020-07-24 15:41:54 -07:00
2022-07-29 17:25:09 +02:00
2023-05-16 08:38:49 +01:00
2022-08-31 17:16:41 +02:00
2022-06-14 18:36:17 +02:00
2022-07-12 16:34:55 +02:00
2021-05-29 01:04:53 +02:00
2021-06-07 13:01:52 -07:00
2021-05-29 01:04:53 +02:00
2021-08-06 17:07:41 +02:00
2021-12-29 12:28:40 +01:00
2022-09-28 11:11:47 +02:00
2022-08-03 12:03:53 +02:00
2022-11-16 09:58:20 +01:00
2022-08-31 17:16:41 +02:00
2021-01-27 23:16:02 +01:00
2021-10-07 19:37:38 +02:00
2021-05-29 01:04:54 +02:00
2021-05-29 01:04:54 +02:00
2022-08-31 17:16:41 +02:00
2021-09-21 03:46:56 +02:00
2020-06-25 00:50:31 +02:00
2021-04-18 22:04:49 +02:00
2022-12-02 17:41:04 +01:00
2022-03-02 11:47:51 +01:00
2023-05-16 08:38:49 +01:00
2022-07-12 16:34:56 +02:00
2020-06-25 00:50:31 +02:00
2020-06-25 00:50:31 +02:00
2021-01-27 23:16:02 +01:00
2022-05-25 09:57:33 +02:00
2022-03-02 11:47:51 +01:00
2021-01-27 23:16:02 +01:00
2022-08-31 17:16:41 +02:00
2021-07-23 14:18:02 +02:00
2021-04-10 21:15:35 +02:00
2021-03-31 22:34:11 +02:00
2023-05-16 08:38:49 +01:00
2021-01-27 22:53:29 +01:00
2022-07-12 16:34:55 +02:00
2022-06-14 18:36:16 +02:00
2022-06-29 09:03:21 +02:00
2023-05-16 08:38:49 +01:00
2022-08-31 17:16:41 +02:00
2023-01-18 11:48:46 +01:00
2021-01-27 22:53:29 +01:00
2021-10-02 12:00:17 +02:00
2022-08-31 17:16:41 +02:00
2021-01-27 22:53:29 +01:00
2021-05-29 01:04:53 +02:00
2020-10-31 10:41:00 +01:00
2020-10-31 10:40:42 +01:00
2021-01-27 23:16:02 +01:00
2021-05-29 01:04:27 +02:00
2022-07-07 17:53:27 +02:00
2021-12-14 10:57:06 +01:00
2021-05-29 01:04:27 +02:00
2022-12-14 11:37:22 +01:00
2021-05-29 01:04:27 +02:00
2023-02-01 08:27:26 +01:00
2022-05-09 09:14:43 +02:00
2022-02-23 12:03:10 +01:00
2021-06-29 15:45:27 -07:00
2022-08-31 17:16:41 +02:00
2021-01-27 23:16:02 +01:00
2020-10-30 12:57:39 +01:00
2021-08-09 10:22:01 +02:00
2019-06-19 17:09:55 +02:00
2021-06-01 23:53:51 +02:00
2021-08-17 00:45:07 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2018-02-14 21:05:38 +01:00
2019-06-19 17:09:55 +02:00
2019-09-13 12:33:06 +02:00
2022-12-02 17:41:04 +01:00
2020-07-29 20:09:18 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2022-06-01 09:32:33 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-03-15 15:20:16 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2020-08-28 19:55:51 +02:00
2021-10-07 19:35:57 +02:00
2019-05-30 11:26:32 -07:00
2019-06-25 01:32:59 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:38 -07:00
2019-06-19 17:09:55 +02:00
2021-05-29 01:04:52 +02:00
2021-09-21 03:46:56 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-06-25 00:50:31 +02:00
2019-06-19 17:09:55 +02:00
2020-12-01 09:45:29 +01:00
2021-09-21 03:46:56 +02:00
2019-06-19 17:09:55 +02:00
2019-05-21 11:28:45 +02:00
2019-06-25 01:32:59 +02:00
2019-09-13 12:32:48 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2021-08-20 15:44:23 -07:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2020-12-27 11:52:26 +01:00
2019-06-19 17:09:55 +02:00
2021-02-04 00:33:08 +01:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2021-05-03 23:02:44 +02:00
2019-08-13 12:14:26 +02:00
2022-03-02 11:47:51 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2019-06-22 08:59:24 -04:00
2019-05-21 10:50:45 +02:00
2019-05-21 11:28:40 +02:00
2020-07-29 20:09:18 +02:00
2021-04-26 03:20:07 +02:00
2021-03-31 22:34:10 +02:00
2019-05-21 10:50:45 +02:00