Sahitya Tummala
d3fc4a2330
configfs: Fix use-after-free when accessing sd->s_dentry
...
In the vfs_statx() context, during path lookup, the dentry gets
added to sd->s_dentry via configfs_attach_attr(). In the end,
vfs_statx() kills the dentry by calling path_put(), which invokes
configfs_d_iput(). Ideally, this dentry must be removed from
sd->s_dentry but it doesn't if the sd->s_count >= 3. As a result,
sd->s_dentry is holding reference to a stale dentry pointer whose
memory is already freed up. This results in use-after-free issue,
when this stale sd->s_dentry is accessed later in
configfs_readdir() path.
This issue can be easily reproduced, by running the LTP test case -
sh fs_racer_file_list.sh /config
Change-Id: I5ac8556837bbdf2e5d0540516efb106ec53d7536
Fixes: 76ae281f63 ('configfs: fix race between dentry put and lookup')
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org >
2019-01-10 02:07:26 -08:00
..
2018-12-01 09:37:27 +01:00
2018-08-22 10:52:51 -07:00
2018-12-20 17:43:16 -08:00
2018-08-22 12:34:08 -07:00
2018-06-15 18:10:01 -03:00
2018-12-01 09:37:27 +01:00
2018-12-08 12:59:10 +01:00
2018-10-18 11:32:21 +02:00
2018-11-27 16:13:05 +01:00
2018-12-13 09:16:20 +01:00
2018-06-05 16:57:31 -07:00
2019-01-10 02:07:26 -08:00
2018-11-13 11:08:55 -08:00
2018-12-05 09:48:15 -08:00
2018-06-12 20:52:16 -07:00
2018-08-21 23:54:17 -04:00
2018-06-12 16:19:22 -07:00
2018-07-22 14:13:44 +02:00
2018-12-20 17:43:16 -08:00
2018-12-05 19:32:11 +01:00
2018-12-06 03:08:31 -08:00
2018-12-13 10:43:12 -08:00
2018-10-13 09:31:03 +02:00
2018-10-18 11:32:21 +02:00
2018-12-06 03:08:31 -08:00
2018-12-20 17:43:16 -08:00
2018-11-27 16:12:59 +01:00
2018-11-27 16:12:59 +01:00
2018-08-17 16:20:28 -07:00
2018-08-25 12:42:33 -07:00
2018-08-22 10:52:44 -07:00
2018-08-21 11:37:41 +02:00
2018-11-13 11:08:43 -08:00
2018-11-13 11:08:16 -08:00
2018-08-15 22:47:23 -07:00
2018-08-18 11:44:53 -07:00
2018-11-13 11:08:49 -08:00
2018-12-20 17:43:16 -08:00
2018-11-21 09:19:23 +01:00
2018-09-04 16:45:02 -07:00
2018-12-06 09:32:46 +01:00
2018-08-17 16:20:27 -07:00
2018-11-21 09:19:18 +01:00
2018-08-14 12:07:14 -04:00
2018-11-21 09:19:13 +01:00
2019-01-02 11:57:52 -08:00
2018-09-30 10:15:41 -07:00
2018-08-22 18:17:48 +02:00
2018-11-27 16:12:59 +01:00
2018-12-20 17:43:16 -08:00
2018-08-02 09:34:02 -07:00
2018-08-18 11:44:53 -07:00
2018-08-22 10:52:51 -07:00
2018-07-31 11:32:44 -04:00
2018-10-13 11:05:02 +02:00
2018-12-05 19:32:06 +01:00
2018-08-17 16:20:27 -07:00
2018-10-06 11:44:39 +10:00
2018-08-13 20:56:23 -07:00
2018-07-12 10:04:27 -04:00
2018-12-05 09:48:14 -08:00
2018-07-12 10:04:20 -04:00
2018-06-12 16:19:22 -07:00
2018-08-13 19:24:32 -07:00
2018-07-10 23:29:03 -04:00
2018-08-14 10:23:25 -07:00
2018-08-30 12:56:40 +02:00
2018-07-30 16:21:49 -04:00
2018-06-05 19:23:26 +02:00
2018-12-05 09:48:13 -08:00
2018-08-28 17:10:42 +05:30
2018-12-01 09:37:34 +01:00
2018-08-17 16:20:28 -07:00
2018-12-05 19:32:08 +01:00
2018-06-28 10:40:47 -07:00
2018-12-05 09:48:11 -08:00
2018-12-05 09:48:14 -08:00
2018-08-15 23:03:20 -05:00
2018-08-21 18:19:09 -07:00
2018-12-05 09:48:13 -08:00
2018-12-06 03:08:31 -08:00
2018-12-05 09:48:14 -08:00
2018-11-21 09:19:14 +01:00
2018-09-29 13:51:01 +10:00
2018-12-05 09:48:14 -08:00
2018-08-02 08:06:55 +09:00
2018-08-21 18:19:09 -07:00
2018-12-05 09:48:14 -08:00
2018-06-12 16:19:22 -07:00
2018-12-05 09:48:12 -08:00
2018-12-05 09:48:14 -08:00
2018-12-06 03:08:31 -08:00
2018-12-05 09:48:14 -08:00
2018-08-13 19:58:36 -07:00
2018-12-05 09:48:13 -08:00
2018-12-05 09:48:13 -08:00
2018-12-05 09:48:13 -08:00
2018-12-05 09:48:13 -08:00
2018-06-28 10:40:47 -07:00
2018-08-17 16:20:28 -07:00
2018-06-16 16:21:50 +09:00
2018-06-16 16:21:50 +09:00
2018-07-12 14:49:48 +01:00
2018-12-05 09:48:13 -08:00
2018-12-05 09:48:12 -08:00
2018-08-13 20:56:23 -07:00
2018-12-06 10:34:09 +01:00
2018-12-05 09:48:13 -08:00
2018-12-05 09:48:14 -08:00