You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This proposal changes the KEP to allow writing the image volume contents
in the same way as we already support it for the actual running
container image. Runtimes have to ensure that the isolation is
restricted to the running container by using technologies like
overlayfs.
Signed-off-by: Sascha Grunert <[email protected]>
Copy file name to clipboardExpand all lines: keps/sig-node/4639-oci-volume-source/README.md
+10-3Lines changed: 10 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -298,7 +298,10 @@ the OS or version of the scanning software.
298
298
- Allowing direct mounting of OCI objects introduces potential attack
299
299
vectors. Mitigation includes thorough security reviews and limiting access
300
300
to trusted registries. Limiting to non-runnable content
301
-
and read-only mode will lessen the security risk.
301
+
and read-only mode will lessen the security risk. If the image content is
302
+
writable in a strictly container isolated way, then runtimes have to
303
+
ensure that proper isolation, as well as the necessary cleanup on
304
+
container removal.
302
305
- Path traversal attacks are a high risk for introducing security
303
306
vulnerabilities. Container Runtimes should re-use their existing
304
307
implementations to merge layers as well as secure join symbolic links in
@@ -586,8 +589,12 @@ feature cannot be used. Pods using the new `VolumeSource` combined with a not
586
589
supported container runtime version will fail to run on the node, because the
587
590
`Mount.host_path` field is not set for those mounts.
588
591
589
-
For security reasons, volume mounts should set the [`noexec`] and `ro`
590
-
(read-only) options by default.
592
+
For the most conservative security approach, image volumes should be mounted by
593
+
runtimes with enabled `rro` (recursive read-only) and `noexec` flag. Runtimes
594
+
may support writable volumes in the same way as the running container image
595
+
contents are writable (for example by utilizing overlayfs). This enables users
596
+
to modify the image volume contents in a non-persistent and container isolated
597
+
environment.
591
598
592
599
Note: in the process of mounting images into the container's rootfs, there may need to be intermediate mounts created. This is especially relevant if
593
600
the CRI implementation wishes to support one image being mounted with multiple different SELinux labels. If that's done, the CRI implementation is responsible
0 commit comments