sudo cscli collections install crowdsecurity/k8s-auditInstalls 1 parser and 7 scenarios.
View Kubernetes - Audit Detection →sudo cscli scenarios install crowdsecurity/k8s-audit-pod-host-path-volumeThen reload CrowdSec: sudo systemctl reload crowdsec
Sign in to see which of your engines run it →Hover a line or a note to see what each field does.
type: triggername: crowdsecurity/k8s-audit-pod-host-path-volumedescription: "Detect pods mounting a sensitive host folder"filter: |evt.Meta.log_type == 'k8s-audit' &&((evt.Meta.datasource_type == "k8s-audit" &&evt.Unmarshaled.k8s_audit.ObjectRef?.Resource == 'pods' &&evt.Unmarshaled.k8s_audit.RequestObject != nil &&evt.Unmarshaled.k8s_audit.RequestObject.spec != nil &&evt.Unmarshaled.k8s_audit.RequestObject.spec.volumes != nil &&any(evt.Unmarshaled.k8s_audit.RequestObject.spec.volumes, { .hostPath != nil && .hostPath.path in ["/proc", "/var/run/docker.sock", "/", "/etc", "/root", "/var/run/crio/crio.sock", "/home/admin", "/var/lib/kubelet", "/var/lib/kubelet/pki", "/etc/kubernetes", "/etc/kubernetes/manifests"] }))||(evt.Meta.datasource_type != "k8s-audit" &&evt.Unmarshaled.k8s_audit.objectRef?.resource == 'pods' &&evt.Unmarshaled.k8s_audit.requestObject != nil &&evt.Unmarshaled.k8s_audit.requestObject.spec != nil &&evt.Unmarshaled.k8s_audit.requestObject.spec.volumes != nil &&any(evt.Unmarshaled.k8s_audit.requestObject.spec.volumes, { .hostPath != nil && .hostPath.path in ["/proc", "/var/run/docker.sock", "/", "/etc", "/root", "/var/run/crio/crio.sock", "/home/admin", "/var/lib/kubelet", "/var/lib/kubelet/pki", "/etc/kubernetes", "/etc/kubernetes/manifests"] })))labels:notification: trueclassification:- attack.T1610behavior: "k8s:audit"label: "Kubernetes Pod Start With Host Path"spoofable: 0confidence: 3service: k8s
Sign in to see the Security Engines that run this attack scenario, the version they run and whether it was modified locally.
Detects pods creation mounting a sensitive host folder in a K8S cluster, using the cluster audit logs.
Folders or files considered sensitive are:
//etc/etc/kubernetes/etc/kubernetes/manifests/proc/root/home/admin/var/lib/kubelet/var/lib/kubelet/pki/var/run/docker.sock/var/run/crio/crio.sockThe scenario needs logs from the pods resources at the Request level at a minimum.
No decision will be taken based on this scenario, it is only intended for notification purposes.