TMAegis
More rules for aks

TMA-AKS-4.2.3

Minimize the admission of containers wishing to share the host IPC namespace

HighLevel 1Automatedaks

Description

Minimize the admission of pods that request spec.hostIPC=true so that only tightly controlled, explicitly approved platform workloads can share the host IPC namespace in AKS. As it relates to RBAC and service accounts, this means users, groups, and service accounts with pod or controller deployment rights should not broadly be able to create or update workloads that enable host IPC sharing, because AKS relies on RBAC to scope what identities can ... Requires kubectl with cluster-wide read access (KUBECONFIG); system namespaces are excluded and listed resources must be remediated or documented as exceptions.

How it is checked

Audit method: Shell command

shell
out=$(kubectl get pods -A -o go-template='{{range .items}}{{.metadata.namespace}} {{.metadata.name}} {{.spec.hostIPC}}{{"\n"}}{{end}}') || exit 1
bad=$(printf '%s\n' "$out" | awk -v ex='^(kube-system|kube-public|kube-node-lease|gatekeeper-system|azure-arc)$' 'NF && $1 !~ ex && ($3=="true")')
if [ -z "$bad" ]; then echo compliant; else printf '%s\n' "$bad" | head -n 25; fi
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Add policies to each namespace in the cluster which has user workloads to restrict the admission of hostIPC containers. Pod Security Policies and Assignments can be found by searching for Policies in the Azure Portal. A detailed step-by-step guide can be found here: https://learn.microsoft.com/en-us/azure/governance/policy/concepts/policy-for-kubernetes

Properties

Operating systems
Any
Tags
akspoliciespod-security
Reference
CIS Azure Kubernetes Service (AKS) Benchmark v2.0.0 - 4.2.3 Minimize the admission of containers wishing to share the host IPC namespace

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target aks