Control: Pod Security Policy should force containers to run with read-only root file system
Description
Pod Security Policy `readOnlyRootFilesystem` controls whether the Pod containers run with read-only root file system. Containers in a Pod should always run with a read only root file system. Using an immutable root filesystem and a verified boot mechanism prevents against attackers from owning the machine through permanent local changes. An immutable root filesystem can also prevent malicious binaries from writing to the host system.
Usage
Run the control in your terminal:
powerpipe control run kubernetes_compliance.control.pod_security_policy_immutable_container_filesystem
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run kubernetes_compliance.control.pod_security_policy_immutable_container_filesystem --share
SQL
This control uses a named query:
select coalesce(uid, concat(path, ':', start_line)) as resource, case when read_only_root_filesystem then 'ok' else 'alarm' end as status, case when read_only_root_filesystem then 'Pod security policy ' || name || ' containers running with read-only root file system.' else 'Pod security policy ' || name || ' containers not running with read-only root file system.' end as reason , coalesce(context_name, '') as context_name, source_type, coalesce(path || ':' || start_line || '-' || end_line, '') as pathfrom kubernetes_pod_security_policy;