b4c84e8a40
* Update Tags * Bump updated date separately to be easy to revert if needed * Update resource_development_ml_linux_anomalous_compiler_activity.toml * Apply changes from the discussion * Update persistence_init_d_file_creation.toml * Update defense_evasion_timestomp_sysmon.toml * Update defense_evasion_application_removed_from_blocklist_in_google_workspace.toml * Update missing Tactic tags * Update unit tests to match new tags * Add missing IG tags * Delete okta_threat_detected_by_okta_threatinsight.toml * Update command_and_control_google_drive_malicious_file_download.toml * Update persistence_rc_script_creation.toml * Mass bump * Update persistence_shell_activity_by_web_server.toml * . --------- Co-authored-by: Mika Ayenson <Mika.ayenson@elastic.co> Co-authored-by: Mika Ayenson <Mikaayenson@users.noreply.github.com>
80 lines
3.0 KiB
TOML
80 lines
3.0 KiB
TOML
[metadata]
|
|
creation_date = "2022/07/05"
|
|
integration = ["kubernetes"]
|
|
maturity = "production"
|
|
min_stack_comments = "New fields added to Kubernetes Integration"
|
|
min_stack_version = "8.4.0"
|
|
updated_date = "2023/06/22"
|
|
|
|
[rule]
|
|
author = ["Elastic"]
|
|
description = """
|
|
This rule detects when a user creates a pod/container running in privileged mode. A highly privileged container has
|
|
access to the node's resources and breaks the isolation between containers. If compromised, an attacker can use the
|
|
privileged container to gain access to the underlying host. Gaining access to the host may provide the adversary with
|
|
the opportunity to achieve follow-on objectives, such as establishing persistence, moving laterally within the
|
|
environment, or setting up a command and control channel on the host.
|
|
"""
|
|
false_positives = [
|
|
"""
|
|
By default a container is not allowed to access any devices on the host, but a "privileged" container is given
|
|
access to all devices on the host. This allows the container nearly all the same access as processes running on the
|
|
host. An administrator may want to run a privileged container to use operating system administrative capabilities
|
|
such as manipulating the network stack or accessing hardware devices from within the cluster. Add exceptions for
|
|
trusted container images using the query field "kubernetes.audit.requestObject.spec.container.image"
|
|
""",
|
|
]
|
|
index = ["logs-kubernetes.*"]
|
|
language = "kuery"
|
|
license = "Elastic License v2"
|
|
name = "Kubernetes Privileged Pod Created"
|
|
note = """## Setup
|
|
|
|
The Kubernetes Fleet integration with Audit Logs enabled or similarly structured data is required to be compatible with this rule."""
|
|
references = [
|
|
"https://media.defense.gov/2021/Aug/03/2002820425/-1/-1/1/CTR_KUBERNETES%20HARDENING%20GUIDANCE.PDF",
|
|
"https://kubernetes.io/docs/tasks/configure-pod-container/security-context/",
|
|
]
|
|
risk_score = 47
|
|
rule_id = "c7908cac-337a-4f38-b50d-5eeb78bdb531"
|
|
severity = "medium"
|
|
tags = ["Data Source: Kubernetes", "Tactic: Execution", "Tactic: Privilege Escalation"]
|
|
timestamp_override = "event.ingested"
|
|
type = "query"
|
|
|
|
query = '''
|
|
event.dataset : "kubernetes.audit_logs"
|
|
and kubernetes.audit.annotations.authorization_k8s_io/decision:"allow"
|
|
and kubernetes.audit.objectRef.resource:pods
|
|
and kubernetes.audit.verb:create
|
|
and kubernetes.audit.requestObject.spec.containers.securityContext.privileged:true
|
|
and not kubernetes.audit.requestObject.spec.containers.image: ("docker.elastic.co/beats/elastic-agent:8.4.0")
|
|
'''
|
|
|
|
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1611"
|
|
name = "Escape to Host"
|
|
reference = "https://attack.mitre.org/techniques/T1611/"
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0004"
|
|
name = "Privilege Escalation"
|
|
reference = "https://attack.mitre.org/tactics/TA0004/"
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1610"
|
|
name = "Deploy Container"
|
|
reference = "https://attack.mitre.org/techniques/T1610/"
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0002"
|
|
name = "Execution"
|
|
reference = "https://attack.mitre.org/tactics/TA0002/"
|
|
|