83 checks across 7 services. Every row links to the full check page — description, risk, recommendation, remediation snippets (CLI / Terraform / Native IaC / Dashboard), and references. Check IDs are stable. They appear unchanged on every finding in the dashboard, in every export (SARIF / CSV / JSON / PDF), and in compliance scorecards. Severity drives quality-gate behaviour — CRITICAL and HIGH block by default.

Services in this catalog

apiserver

29 checks.
Check IDTitleSeverity
apiserver_always_pull_images_pluginAPI server pod has AlwaysPullImages admission control plugin enabledMEDIUM
apiserver_anonymous_requestsAPI server pod has anonymous-auth disabledHIGH
apiserver_audit_log_maxage_setAPI server pod has —audit-log-maxage set to 30 (or the cluster-configured value)MEDIUM
apiserver_audit_log_maxbackup_setAPI server pod has —audit-log-maxbackup set to 10 or the configured valueMEDIUM
apiserver_audit_log_maxsize_setAPI server pod has —audit-log-maxsize set to 100 MB or the configured valueMEDIUM
apiserver_audit_log_path_setAPI server pod has —audit-log-path setHIGH
apiserver_auth_mode_include_nodeAPI server pod has Node in —authorization-modeHIGH
apiserver_auth_mode_include_rbacAPI server pod authorization mode includes RBACHIGH
apiserver_auth_mode_not_always_allowAPI server pod does not use the AlwaysAllow authorization modeCRITICAL
apiserver_client_ca_file_setAPI server pod has the —client-ca-file argument setHIGH
apiserver_deny_service_external_ipsAPI server pod has DenyServiceExternalIPs admission controller enabledHIGH
apiserver_disable_profilingAPI server pod has profiling disabled (—profiling=false)MEDIUM
apiserver_encryption_provider_config_setAPI server pod has the —encryption-provider-config argument setHIGH
apiserver_etcd_cafile_setAPI server pod has the —etcd-cafile argument setCRITICAL
apiserver_etcd_tls_configAPI server pod has —etcd-certfile and —etcd-keyfile configured for etcd TLSCRITICAL
apiserver_event_rate_limitAPI server pod has the EventRateLimit admission control plugin enabledMEDIUM
apiserver_kubelet_cert_authAPI server pod has —kubelet-certificate-authority configuredCRITICAL
apiserver_kubelet_tls_authAPI server pod has —kubelet-client-certificate and —kubelet-client-key arguments configuredCRITICAL
apiserver_namespace_lifecycle_pluginAPI server pod has NamespaceLifecycle admission control plugin enabledHIGH
apiserver_no_always_admit_pluginAPI server pod does not have the AlwaysAdmit admission control plugin enabledCRITICAL
apiserver_no_token_auth_fileAPI server pod does not have —token-auth-file enabledHIGH
apiserver_node_restriction_pluginAPI server pod has NodeRestriction admission control plugin enabledHIGH
apiserver_request_timeout_setAPI server pod has —request-timeout configuredMEDIUM
apiserver_security_context_deny_pluginAPI server pod uses PodSecurityPolicy or has the SecurityContextDeny admission plugin enabledHIGH
apiserver_service_account_key_file_setAPI server pod has —service-account-key-file configuredHIGH
apiserver_service_account_lookup_trueAPI server pod has —service-account-lookup set to trueHIGH
apiserver_service_account_pluginAPI server pod has ServiceAccount admission control plugin enabledHIGH
apiserver_strong_ciphers_onlyAPI Server pod uses only strong cryptographic TLS cipher suitesMEDIUM
apiserver_tls_configAPI server pod has —tls-cert-file and —tls-private-key-file configuredHIGH

controllermanager

7 checks.
Check IDTitleSeverity
controllermanager_bind_addressController Manager pod is bound to the loopback address 127.0.0.1HIGH
controllermanager_disable_profilingController Manager pod has —profiling=false configuredMEDIUM
controllermanager_garbage_collectionController Manager pod does not use the default —terminated-pod-gc-threshold valueHIGH
controllermanager_root_ca_file_setController Manager pod has —root-ca-file argument setCRITICAL
controllermanager_rotate_kubelet_server_certController Manager pod has RotateKubeletServerCertificate set to trueMEDIUM
controllermanager_service_account_credentialsController Manager pod has —use-service-account-credentials=trueHIGH
controllermanager_service_account_private_key_fileController Manager pod has the —service-account-private-key-file argument setHIGH

core

13 checks.
Check IDTitleSeverity
core_minimize_admission_hostport_containersPod does not use HostPortsHIGH
core_minimize_admission_windows_hostprocess_containersPod does not allow Windows HostProcess containersHIGH
core_minimize_allowPrivilegeEscalation_containersPod does not allow privilege escalation in any containerHIGH
core_minimize_containers_added_capabilitiesPod has no containers with added capabilitiesHIGH
core_minimize_containers_capabilities_assignedPod containers have no added Linux capabilities and include capability drops when capabilities are definedHIGH
core_minimize_hostIPC_containersPod does not use the host IPC namespaceHIGH
core_minimize_hostNetwork_containersPod does not use hostNetworkHIGH
core_minimize_hostPID_containersPod does not use the host PID namespaceHIGH
core_minimize_net_raw_capability_admissionPod containers do not have the NET_RAW capabilityHIGH
core_minimize_privileged_containersPod does not contain a privileged containerHIGH
core_minimize_root_containers_admissionPod does not run any container as the root userHIGH
core_no_secrets_envsPod does not contain secret environment variablesHIGH
core_seccomp_profile_docker_defaultPod has the docker/default (RuntimeDefault) seccomp profile at pod level or for all containersHIGH

etcd

7 checks.
Check IDTitleSeverity
etcd_client_cert_authEtcd pod has client certificate authentication enabled (—client-cert-auth=true)HIGH
etcd_no_auto_tlsEtcd pod has —auto-tls disabledHIGH
etcd_no_peer_auto_tlsEtcd pod does not use automatically generated self-signed certificates for peer TLS connectionsHIGH
etcd_peer_client_cert_authEtcd pod has peer client certificate authentication enabledHIGH
etcd_peer_tls_configEtcd pod uses TLS for peer connectionsHIGH
etcd_tls_encryptionEtcd pod has TLS encryption configuredHIGH
etcd_unique_caEtcd pod uses a unique Certificate Authority distinct from the Kubernetes API server CAHIGH

kubelet

16 checks.
Check IDTitleSeverity
kubelet_authorization_modeKubelet —authorization-mode is not set to AlwaysAllowHIGH
kubelet_client_ca_file_setKubelet has a client CA file configured for authenticationHIGH
kubelet_conf_file_ownershipNode kubelet.conf file ownership is set to root:rootHIGH
kubelet_conf_file_permissionsNode kubelet.conf file permissions are set to 600 or more restrictiveHIGH
kubelet_config_yaml_ownershipNode kubelet config.yaml file ownership is root:rootHIGH
kubelet_config_yaml_permissionsKubelet config.yaml file permissions on the node are set to 600 or more restrictiveHIGH
kubelet_disable_anonymous_authKubelet anonymous authentication is disabledHIGH
kubelet_disable_read_only_portKubelet read-only port is disabled (set to 0)MEDIUM
kubelet_event_record_qpsKubelet eventRecordQPS is set to a positive valueHIGH
kubelet_manage_iptablesKubelet configuration has makeIPTablesUtilChains set to trueMEDIUM
kubelet_rotate_certificatesKubelet client certificate rotation is enabledHIGH
kubelet_service_file_ownership_rootKubelet service file on the node is owned by root:rootHIGH
kubelet_service_file_permissionsNode kubelet service file permissions are set to 600 or more restrictiveHIGH
kubelet_streaming_connection_timeoutKubelet streaming connection idle timeout is not set to 0MEDIUM
kubelet_strong_ciphers_onlyKubelet uses only strong TLS cipher suitesMEDIUM
kubelet_tls_cert_and_keyKubelet has TLS certificate and private key files configuredHIGH

rbac

9 checks.
Check IDTitleSeverity
rbac_cluster_admin_usageCluster role binding does not grant the cluster-admin roleCRITICAL
rbac_minimize_csr_approval_accessUser or group lacks update and patch access to the certificatesigningrequests/approval sub-resourceHIGH
rbac_minimize_node_proxy_subresource_accessUser or group has no get, list, or watch permissions on the nodes/proxy sub-resourceHIGH
rbac_minimize_pod_creation_accessRole or ClusterRole does not grant create permission on podsHIGH
rbac_minimize_pv_creation_accessUser or group does not have permission to create PersistentVolumesHIGH
rbac_minimize_secret_accessRole or ClusterRole does not grant get, list, or watch access to Kubernetes SecretsHIGH
rbac_minimize_service_account_token_creationUser or group does not have permission to create service account tokensHIGH
rbac_minimize_webhook_config_accessUser or group does not have create, update, or delete permissions on webhook configurationsHIGH
rbac_minimize_wildcard_use_rolesRole or ClusterRole does not use wildcard resources or verbsHIGH

scheduler

2 checks.
Check IDTitleSeverity
scheduler_bind_addressScheduler pod has —bind-address set to 127.0.0.1HIGH
scheduler_profilingScheduler pod has profiling disabledMEDIUM

What’s next

Cloud Security overview

Connect a provider, see findings end-to-end.

All checks

Index across every provider.

Compliance frameworks

How check IDs map to SOC 2 / PCI / HIPAA / ISO controls.

Reports

Per-framework PDF scorecards.