turbot/steampipe-mod-kubernetes-compliance

Control: StatefulSet containers should minimize the admission of containers with added capability

Description

Container in StatefulSet should minimize the admission of containers with added capability. Adding capabilities to container increases the risk of container breakout.

Usage

Run the control in your terminal:

powerpipe control run kubernetes_compliance.control.statefulset_container_with_added_capabilities

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run kubernetes_compliance.control.statefulset_container_with_added_capabilities --share

SQL

This control uses a named query:

select
coalesce(uid, concat(path, ':', start_line)) as resource,
case
when c -> 'securityContext' -> 'capabilities' -> 'add' is null then 'ok'
else 'alarm'
end as status,
case
when c -> 'securityContext' -> 'capabilities' -> 'add' is null then c ->> 'name' || ' without added capability.'
else c ->> 'name' || ' with added capability.'
end as reason,
name as stateful_set_name
, coalesce(context_name, '') as context_name, namespace, source_type, coalesce(path || ':' || start_line || '-' || end_line, '') as path
from
kubernetes_stateful_set,
jsonb_array_elements(template -> 'spec' -> 'containers') as c;

Tags