Commit c28f922
Al Viro
clone_private_mnt(): make sure that caller has CAP_SYS_ADMIN in the right userns
What we want is to verify there is that clone won't expose something
hidden by a mount we wouldn't be able to undo. "Wouldn't be able to undo"
may be a result of MNT_LOCKED on a child, but it may also come from
lacking admin rights in the userns of the namespace mount belongs to.
clone_private_mnt() checks the former, but not the latter.
There's a number of rather confusing CAP_SYS_ADMIN checks in various
userns during the mount, especially with the new mount API; they serve
different purposes and in case of clone_private_mnt() they usually,
but not always end up covering the missing check mentioned above.
Reviewed-by: Christian Brauner <[email protected]>
Reported-by: "Orlando, Noah" <[email protected]>
Fixes: 427215d ("ovl: prevent private clone if bind mount is not allowed")
Signed-off-by: Al Viro <[email protected]>1 parent 7054674 commit c28f922
1 file changed
+3
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2510 | 2510 | | |
2511 | 2511 | | |
2512 | 2512 | | |
| 2513 | + | |
| 2514 | + | |
| 2515 | + | |
2513 | 2516 | | |
2514 | 2517 | | |
2515 | 2518 | | |
| |||
0 commit comments