Commit Graph

2662 Commits

Author SHA1 Message Date
Samirbous bf49a90eb0 [New] Sensitive Identity File Open by Suspicious Process via Auditd (#5982)
* [New] Sensitive Identity File Open by Suspicious Process via Auditd

Detects Auditd opened-file reads on sensitive root and cluster paths (Kubernetes token mounts, kubelet and admin kubeconfig, PKI material, shadow, root SSH keys, root cloud CLI and Docker config) when the process looks like common copy or scripting utilities or the binary runs from temp or run staging. User home paths are excluded so file watches
stay explicit and aligned with auditd:

* ++

* Update credential_access_auditd_sensitive_cloud_and_host_identity_file_open.toml

* Update credential_access_auditd_sensitive_cloud_and_host_identity_file_open.toml

* Update rules/linux/credential_access_auditd_sensitive_cloud_and_host_identity_file_open.toml

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @imays11

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Apply suggestion from @Mikaayenson

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

---------

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-05-03 11:24:43 +01:00
Samirbous 0c69b63ff2 [New] Kubernetes Secret get or list with Suspicious User Agent (#5974)
* [New] Kubernetes Secret get or list via Scripting or Generic HTTP Client

After obtaining Kubernetes API credentials, adversaries often reach for generic HTTP stacks and scripting runtimes (curl, wget, Python requests, Go’s default client, and similar) instead of kubectl or in-cluster controllers that advertise purpose-built user agents. Those clients are easy to drive from a stolen kubeconfig, a compromised bastion,  or a reverse shell and are commonly used to enumerate or download Secret objects (tokens, registry credentials, TLS material, application keys).

* ++

* Update credential_access_kubernetes_secret_access_scripting_http_clients.toml
2026-05-02 16:14:17 +01:00
Samirbous 2e223459c4 [New/Tuning] K8 RBAC Privs (#5987)
* [New/Tuning] K8 RBAC Privs

- new rule with high severity for wildcards for both verb/resource
- added responseObject to an existing rule as on my testing it did not trigger on requestObject (unknown type of on EKS logs), also added few sensitive resources and adjusted logic to ignore list/get on things like roles/clusterroles etc.

* ++

* Rename persistence_kubernetes_role_patch_wildcard_verbs_resources_response.toml to  privilege_escalation_role_patch_wildcard_verbs_resources_response.toml

* Update and rename  privilege_escalation_role_patch_wildcard_verbs_resources_response.toml to privilege_escalation_role_patch_wildcard_verbs_resources_response.toml

* Update privilege_escalation_role_patch_wildcard_verbs_resources_response.toml

* Update privilege_escalation_role_patch_wildcard_verbs_resources_response.toml

* Update persistence_sensitive_role_creation_or_modification.toml

* Update persistence_sensitive_role_creation_or_modification.toml

* Update privilege_escalation_role_patch_wildcard_verbs_resources_response.toml
2026-05-02 15:08:00 +01:00
Samirbous 838e926058 [New] Nsenter to PID 1 Namespace via Auditd/D4C (#5988)
* [New] Nsenter to PID 1 Namespace via Auditd

we have an existing rule https://github.com/elastic/detection-rules/blob/0f521a0848420844f3af383f1dee8481d41b2e5b/rules/linux/privilege_escalation_docker_escape_via_nsenter.toml#L15 (compatible only with Elastic Defend `process.entry_leader.entry_meta.type == "container"`).

This rule is compatible with the auditd integration and scoped to Init/systemd PID namespace commonly targeted for container escape.

* Create privilege_escalation_nsenter_execution_inside_container.toml

* Update privilege_escalation_auditd_nsenter_target_host_pid.toml

* Update privilege_escalation_auditd_nsenter_target_host_pid.toml

* Update privilege_escalation_auditd_nsenter_target_host_pid.toml

* Update privilege_escalation_auditd_nsenter_target_host_pid.toml

* Update rules/linux/privilege_escalation_auditd_nsenter_target_host_pid.toml

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

* Update privilege_escalation_nsenter_execution_inside_container.toml

* Update privilege_escalation_auditd_nsenter_target_host_pid.toml

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-05-02 14:56:06 +01:00
Samirbous 80f3ed464c [New/Tuning] Chroot Execution in Container Context on Linux (#5992)
* [New/Tuning] Chroot Execution in Container Context on Linux

New rule compatible with auditd and ED using process.title and process.entry_leader.entry_meta.type and tuned an existing one (bum-up severity to high).

* Update rules/linux/privilege_escalation_chroot_execution_container_context.toml

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-05-02 13:45:21 +01:00
Samirbous 338548a306 [New] Kubernetes Secret get or list from Node or Pod Service Account (#5973)
* [New] Kubernetes Secret get or list from Node or Pod Service Account

Kubernetes audit identities for kubelet (`system:node:*`) and workloads (`system:serviceaccount:*`) are meant to operate with tight, predictable API usage. Direct `get` or `list` on the Secrets API from those principals is
often a sign of credential access.

* Update credential_access_kubernetes_secret_read_by_node_or_pod_service_account.toml

* Update credential_access_kubernetes_secret_read_by_node_or_pod_service_account.toml
2026-05-02 11:48:24 +01:00
Samirbous e0c6e715fb [New] Curl or Wget Execution from Container Context (#5975)
* [New] Curl or Wget Execution from Container Context

detect execution of curl/wget from container runtime.

* Update command_and_control_auditd_curl_wget_from_container.toml

* Update command_and_control_auditd_curl_wget_from_container.toml

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

---------

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
2026-05-02 11:08:29 +01:00
Samirbous 55f91946ec [New] Kubernetes Secrets List Across Cluster or Sensitive Namespaces (#5966)
* [New] Kubernetes Secrets List Across Cluster or Sensitive Namespaces

Detects `list` operations on Kubernetes Secrets from a non-loopback client when the request URI targets cluster-wide secrets or list operations under `kube-system` or `default`. Useful for spotting broad secret enumeration from remote clients.

* Update credential_access_kubernetes_secrets_list_cluster_and_sensitive_namespaces.toml

* Update credential_access_kubernetes_secrets_list_cluster_and_sensitive_namespaces.toml

* Update rules/integrations/kubernetes/credential_access_kubernetes_secrets_list_cluster_and_sensitive_namespaces.toml

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-05-02 10:55:30 +01:00
Samirbous 0a4a05f322 [New] Kubernetes Rapid Secret GET Activity Against Multiple Objects (#5967)
* [New] Kubernetes Rapid Secret GET Activity Against Multiple Objects

Detects multiple k8 get secret calls for unique secret names in a short period of time (rule interval default to every 5m):

* Update credential_access_kubernetes_multiple_secret_retrieval_burst.toml

* Update credential_access_kubernetes_multiple_secret_retrieval_burst.toml

* Update credential_access_kubernetes_multiple_secret_retrieval_burst.toml

* Update credential_access_kubernetes_multiple_secret_retrieval_burst.toml
2026-05-02 10:43:13 +01:00
Samirbous a892cd1b6d [New] Kubernetes Multi-Resource Discovery (#5971)
* [New] Kubernetes Multi-Resource Setup and RBAC Discovery Burst

detects k8 multi-resource (at least 3 unique) discovery in 1m time interval from same user/ip/user_agent :

* Update discovery_kubernetes_multi_resource_setup_recon.toml

* Update discovery_kubernetes_multi_resource_setup_recon.toml

* Update discovery_kubernetes_multi_resource_setup_recon.toml

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

---------

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
2026-05-02 10:32:50 +01:00
Samirbous 40213fa041 [New] Unusual Process Connection to Docker or Containerd Socket (#6005)
* [New] Unusual Process Connection to Docker or Containerd Socket

Detects a process connecting to a container runtime Unix socket (containerd or Docker) that is not a known legitimate runtime component. Direct access to the container runtime socket allows an attacker to create, exec into, or manipulate containers without going through the Kubernetes API server, bypassing RBAC, admission webhooks, pod security standards, and Kubernetes audit logging entirely.

* Update discovery_unusual_process_connection_to_container_runtime_socket.toml
2026-05-02 10:05:09 +01:00
Eric Forte 435ec8115d [Rule Tuning] Network Rules Deprecate Beats Indices (#5932)
* Remove packet and audit beat as they are type string for ips
2026-05-01 21:33:53 -04:00
Ruben Groenewoud efa3fe5911 [Rule Tuning] Fixes for Unsupported Fields (#6025)
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-05-01 18:01:01 -05:00
Mika Ayenson, PhD 69da69f1d8 [Rule Tuning] Misc GenAI Tuning (#6006) 2026-05-01 17:46:51 -05:00
Jonhnathan 748ee85339 [Rule Tuning] Windows High-Severity Rules Revamp - 7 (#6013)
* [Rule Tuning] Windows High-Severity Rules Revamp - 7

* Apply suggestion from @w0rk3r
2026-05-01 19:13:37 -03:00
Jonhnathan c503e550b8 [Rule Tuning] Misc Windows Tuning (#5990)
* [Rule Tuning] Misc Windows Tuning

* Apply suggestions from code review

Co-authored-by: Jonhnathan <26856693+w0rk3r@users.noreply.github.com>

* Update defense_evasion_msbuild_making_network_connections.toml

* Update defense_evasion_msbuild_making_network_connections.toml
2026-05-01 18:40:27 -03:00
Jonhnathan ab7f9d7296 [Rule Tuning] Windows High-Severity Rules Revamp - 3 (#5969) 2026-05-01 18:23:53 -03:00
Samirbous 250ad4a8eb [New] Diverse AWS rules (#5913)
* [New] Diverse AWS Rules

- AWS EC2 Role GetCallerIdentity from New Source AS Organization
- AWS CloudTrail API Request with TruffleHog User Agent

* Create discovery_new_terms_vpn_asn_discovery_api_calls.toml

* ++

* Update discovery_new_terms_sts_getcalleridentity_ec2_role_new_source_as.toml

* Update discovery_new_terms_vpn_asn_discovery_api_calls.toml

* Delete initial_access_aws_cloudtrail_trufflehog_user_agent.toml

* Update discovery_new_terms_vpn_asn_discovery_api_calls.toml

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Revert "++"

This reverts commit fbb69afa95f39d3bf83acf3aca601cc40fc98ea1.

* Update discovery_new_terms_sts_getcalleridentity_ec2_role_new_source_as.toml

* Update discovery_new_terms_sts_getcalleridentity_ec2_role_new_source_as.toml

* Update discovery_new_terms_sts_getcalleridentity_ec2_role_new_source_as.toml

* ++

* ++

* Update discovery_new_terms_vpn_asn_discovery_api_calls.toml

* ++

* ++

* ++

* ++

* Update execution_ec2_stop_start_with_user_data_modification.toml

* Update execution_ec2_stop_start_with_user_data_modification.toml

* Update execution_aws_ssm_session_manager_child_process.toml

* Update execution_aws_ssm_session_manager_child_process.toml

* Update execution_aws_ssm_session_manager_child_process.toml

* ++

* ++

* ++

* ++

* ++

* ++

* Update defense_evasion_kms_key_policy_put.toml

* Rename defense_evasion_kms_key_policy_put.toml to privilege_escalation_kms_key_policy_put.toml

* Update privilege_escalation_iam_customer_managed_policy_version_created_or_set_default.toml

* Update discovery_new_terms_sts_getcalleridentity_ec2_role_new_source_as.toml

* Delete rules/integrations/aws/discovery_new_terms_ec2_describe_instance_userdata_unusual_context.toml

similar rule exist

* Update discovery_new_terms_vpn_asn_discovery_api_calls.toml

* Apply suggestion from @imays11

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Apply suggestion from @imays11

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Update persistence_new_terms_ec2_create_keypair_unusual_source_as.toml

* Update privilege_escalation_kms_key_policy_put.toml

* Update privilege_escalation_iam_customer_managed_policy_version_created_or_set_default.toml

* Update persistence_new_terms_ec2_create_keypair_unusual_source_as.toml

* Update execution_aws_ssm_session_manager_child_process.toml

* Update rules/integrations/aws/privilege_escalation_iam_customer_managed_policy_version_created_or_set_default.toml

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Update rules/integrations/aws/execution_ec2_stop_start_with_user_data_modification.toml

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Update privilege_escalation_iam_privilege_operations_via_lambda_execution_role.toml

* Apply suggestion from @imays11

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Update execution_ec2_stop_start_with_user_data_modification.toml

---------

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
2026-05-01 21:57:28 +01:00
Jonhnathan 61ee9caf8a [Rule Tuning] Windows High-Severity Rules Revamp - 5 (#6004) 2026-05-01 17:02:56 -03:00
Isai 84f2d3771c [Rule Tunings] AWS ESQL keep fields missing (#6014)
* [Tunings] AWS ESQL keep fields missing

Adding missing keep fields to 2 ESQL rules. 1 additional field name change as well.

* Apply suggestions from @eric

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>

---------

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>
2026-05-01 15:43:38 -04:00
Jonhnathan 771be70c38 [Rule Tuning] Windows High-Severity Rules Revamp - 6 (#6010)
* [Rule Tuning] Windows High-Severity Rules Revamp - 6

* ++
2026-05-01 16:14:44 -03:00
Jonhnathan 2cb5e1860a [Rule Tuning] Windows High-Severity Rules Revamp - 8 (#6019)
* [Rule Tuning] Windows High-Severity Rules Revamp - 8

* Delete measure_note_size.py
2026-05-01 15:52:50 -03:00
Jonhnathan 8982ff9032 [Rule Tuning] Windows High-Severity Rules Revamp - 9 (#6022) 2026-05-01 15:32:43 -03:00
Jonhnathan 920910c485 [Rule Tuning] Windows High-Severity Rules Revamp - 4 (#5981)
* [Rule Tuning] Windows High-Severity Rules Revamp - 4

* Apply suggestion from @w0rk3r
2026-05-01 14:31:25 -03:00
Samirbous 244cdda427 [New] Multi-Cloud CLI Token and Credential Access Commands (#6012)
* [New] Multi-Cloud CLI Token and Credential Access Commands

Correlates process telemetry for shells and major cloud/Kubernetes CLIs when command lines match token or credential material access patterns (GCP, Azure, AWS, GitHub, kubectl, DigitalOcean, OCI). Flags hosts where multiple cloud targets appear occurs within five-minute window.

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Apply suggestion from @eric-forte-elastic

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Update credential_access_multi_cloud_cli_token_harvesting.toml

* Update credential_access_multi_cloud_cli_token_harvesting.toml

---------

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>
2026-05-01 17:35:19 +01:00
Samirbous ba8fa3ef0f [Tuning/New] Namespace Manipulation Using Unshare (#6024)
* Update privilege_escalation_unshare_namespace_manipulation.toml

* Create privilege_escalation_unshare_namespace_manip.toml

* Apply suggestion from @Aegrah

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>

* Update privilege_escalation_unshare_namespace_manip.toml

* Update privilege_escalation_unshare_namespace_manipulation.toml

* Update privilege_escalation_unshare_namespace_manipulation.toml

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2026-05-01 15:29:44 +01:00
Mika Ayenson, PhD a1458f0fd0 Revert "[Tuning] Namespace Manipulation Using Unshare (#5989)" (#6023)
This reverts commit 175e043adf.
2026-05-01 08:23:55 -05:00
Samirbous b399d856a1 [New] AWS Lateral Movement via Kubernetes SA (#5959)
* [New] AWS Lateral Movement from Kubernetes SA via AssumeRoleWithWebIdentity

Detects when credentials issued through `AssumeRoleWithWebIdentity` for a Kubernetes service account identity are later used for several distinct AWS control-plane actions on the same session access key. Workloads that use EKS IAM Roles for Service Accounts routinely exchange a projected service-account token for short-lived IAM credentials; this rule highlights sessions where that exchange is followed by a spread of sensitive APIs—reconnaissance, secrets and parameter
access, IAM changes, or compute creation—beyond what routine pod traffic usually shows.

* Update initial_access_assumed_web_identity_session_with_multi_phase_api_use.toml

* Update and rename initial_access_assumed_web_identity_session_with_multi_phase_api_use.toml to lateral_movement_k8_assumed_web_identity_session_with_multi_phase_api_use.toml

* Create initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

* Update initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

* Update initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

* Update initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

* [New] Potential Privilege Escalation in Container via Runc Init

Identifies audit events for `runc init` child processes where the effective user is root and the login user ID is not root. This pattern can indicate privilege escalation or credential separation abuse inside container runtimes, where a process executes  with elevated effective privileges while retaining a non-root audit identity.

* Update rules/linux/privilege_escalation_container_runc_init_effective_root_auditd.toml

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

* Delete rules/linux/privilege_escalation_container_runc_init_effective_root_auditd.toml

* Update rules/integrations/aws/initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Apply suggestion from @imays11

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Update rules/integrations/aws/lateral_movement_k8_assumed_web_identity_session_with_multi_phase_api_use.toml

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Update rules/integrations/aws/lateral_movement_k8_assumed_web_identity_session_with_multi_phase_api_use.toml

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>

* Update rules/integrations/aws/initial_access_assume_role_with_web_identity_kubernetes_sa_from_external_asn.toml

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Apply suggestion from @terrancedejesus

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>

* Update lateral_movement_k8_assumed_web_identity_session_with_multi_phase_api_use.toml

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
2026-05-01 12:10:55 +01:00
Samirbous 175e043adf [Tuning] Namespace Manipulation Using Unshare (#5989)
* Update privilege_escalation_unshare_namespace_manipulation.toml

* Update privilege_escalation_unshare_namespace_manipulation.toml
2026-05-01 11:17:17 +01:00
Samirbous 6b3b84ca38 [New/Tuning] Linux LPE via SUID Shell (#5980)
* [New] Kubernetes Pod Exec with Curl or Wget to HTTPS

Detects pod or attach `exec` API calls where the decoded request query implies curl or wget fetching an https URL (avoid noisy local http services).

* Create execution_kubernetes_pod_exec_potential_reverse_shell.toml

* Update execution_kubernetes_pod_exec_curl_wget_https.toml

* Update execution_kubernetes_pod_exec_potential_reverse_shell.toml

* ++

* ++

* Add auditd rule for root-effective shell -p outside system paths; extend SUID/SGID exploitation coverage.

Made-with: Cursor

* Revert "++"

This reverts commit eb5631d80e980a3ad59f44095741505f5c4fc7ec.

* Revert "++"

This reverts commit 2d2c34ca211879069f666f850cb00a4e18b24f27.

* Delete rules/integrations/kubernetes/execution_kubernetes_pod_exec_curl_wget_https.toml

* Delete rules/integrations/kubernetes/execution_kubernetes_pod_exec_potential_reverse_shell.toml

* Update privilege_escalation_auditd_euid_root_shell_from_non_standard_path.toml

* Update privilege_escalation_auditd_euid_root_shell_from_non_standard_path.toml

* Update rules/linux/privilege_escalation_auditd_euid_root_shell_from_non_standard_path.toml

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>

* Update privilege_escalation_auditd_euid_root_shell_from_non_standard_path.toml

---------

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>
2026-05-01 10:51:29 +01:00
Ruben Groenewoud 8dc3fef270 [Rule Tuning] Privilege Escalation via SUID/SGID (#6017)
Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
2026-05-01 10:08:46 +02:00
Jonhnathan eb32e7a242 [Rule Tuning] Veeam Backup Library Loaded by Unusual Process (#5985) 2026-04-30 18:15:40 -03:00
Samirbous f0467c8bed [New] Suspicious SUID Binary Execution (#6018)
* [New] Suspicious SUDI Binary Execution

Detects execution of common privilege elevation helpers (su, sudo, pkexec, passwd, chsh, newgrp) under the root effective user when the real user and parent user are not root, combined with minimal argument counts and suspicious parent context (interpreters, short shell -c invocations, or parents running from user-writable paths) :

* Update rules/linux/privilege_escalation_suspicious_sudi_binary_execution.toml

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>

* Update rules/linux/privilege_escalation_suspicious_sudi_binary_execution.toml

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>

* Update privilege_escalation_suspicious_sudi_binary_execution.toml

* Update privilege_escalation_suspicious_sudi_binary_execution.toml

* Rename privilege_escalation_suspicious_sudi_binary_execution.toml to privilege_escalation_suspicious_suid_binary_execution.toml

* Update privilege_escalation_suspicious_suid_binary_execution.toml

* Update privilege_escalation_suspicious_suid_binary_execution.toml

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2026-04-30 17:38:22 +01:00
Eric Forte 3371938045 [New] Potential Copy Fail (CVE-2026-31431) Exploitation via AF_ALG Socket (#6015)
* initial draft rule too noisy atm

* Switch To Sequence Rule
Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>

---------

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-04-30 12:24:01 -04:00
Jonhnathan b9065e0689 [Rule Tuning] Add Lunixar to RMM rules, fix new_terms condition (#5986) 2026-04-30 07:59:46 -03:00
Terrance DeJesus 53f26965e3 [Rule Tuning] Revert Event Dataset for Security Alert Index (#5994)
* [Rule Tuning] Revert Event Dataset for Security Alert Index; Add Unit Test

---------

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
2026-04-28 13:17:03 -04:00
shashank-elastic 7a54f8be99 Prep for Release 9.4 (#5965) 2026-04-23 00:13:05 +05:30
Jonhnathan ebcd05f879 [Rule Tuning] Misc Windows Tunings (#5955)
Co-authored-by: Colson Wilhoit <48036388+DefSecSentinel@users.noreply.github.com>
Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2026-04-22 15:10:05 -03:00
Samirbous 496d2e206a [New] AWS Credentials Used from GitHub Actions and Non-CI/CD Infra (#5956)
* [New] AWS Credentials Used from GitHub Actions and Non-CI/CD Infrastructure

Detects AWS access keys that are used from both GitHub Actions CI/CD infrastructure and non-CI/CD infrastructure. This pattern indicates potential credential theft where an attacker who has stolen AWS credentials configured as GitHub Actions secrets and is using them from their own infrastructure.

* Update initial_access_github_actions_oidc_credentials_used_from_suspicious_network.toml

* ++

* Update initial_access_github_actions_oidc_credentials_used_from_suspicious_network.toml

---------

Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2026-04-22 23:15:55 +05:30
Samirbous 2177135f86 [New] AWS Rare Source AS Organization Activity (#5957)
* [New] AWS Rare Source AS Organization Activity

Surfaces an AWS identity whose successful API traffic is dominated by a small set of large cloud-provider source AS organization labels, yet also shows a very small share of traffic from other AS organization names—including at least one sensitive control-plane, credential, storage, or model-invocation action on that uncommon network path with recent
activity from the uncommon path. The intent is to highlight disproportionate “baseline” cloud egress versus sparse use from rarer networks on the same principal, a shape that can appear when automation or CI credentials are reused or pivoted outside their usual hosted-cloud footprint.

* Apply suggestion from @eric-forte-elastic

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>

* Update initial_access_aws_api_unusual_asn.toml

* Update initial_access_aws_api_unusual_asn.toml

* Update initial_access_aws_api_unusual_asn.toml

---------

Co-authored-by: Eric Forte <119343520+eric-forte-elastic@users.noreply.github.com>
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2026-04-22 23:00:57 +05:30
Samirbous 62076dd0dd [Tuning] Execution via GitHub Actions Runner (#5892) 2026-04-22 22:46:22 +05:30
Samirbous ec791fa67a [New] Long Base64 Encoded Command via Scripting Interpreter (#5891)
* [New] Long Base64 Encoded Command via Scripting Interpreter

Identifies oversized command lines used by Python, PowerShell, Node.js, or Deno that contain base64 decoding or encoded-command patterns. Adversaries may embed long inline encoded payloads in scripting interpreters to evade inspection and execute malicious content across Windows, macOS, and Linux systems.

* Update defense_evasion_long_base64_encoded_interpreter_command_line.toml

* Update defense_evasion_long_base64_encoded_interpreter_command_line.toml
2026-04-22 18:05:49 +01:00
Mika Ayenson, PhD be80d7f2be [Rule Tuning] Additional GenAI context for Domains & Cred File Access (#5958) 2026-04-22 11:34:10 -05:00
Terrance DeJesus aa89d2512f [Rule Tuning] Multiple Device Token Hashes for Single Okta Session (#5948)
Fixes #5947

Co-authored-by: Colson Wilhoit <48036388+DefSecSentinel@users.noreply.github.com>
Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2026-04-22 08:16:42 -04:00
Susan d8a39869c5 Add Entity related integrations ML rules with _ea job IDs and min_stack_version 9.4.0 (#5909)
Co-authored-by: Shashank K S <Shashank.Suryanarayana@elastic.co>
2026-04-22 17:36:35 +05:30
Ruben Groenewoud 4512ec1735 [New Rules] False Negatives for New BPFDoor Variants (#5939)
* [New Rules] False Negatives for New BPFDoor Variants

* Update defense_evasion_file_creation_world_writeable_dir_by_unusual_process.toml

* Update defense_evasion_file_creation_world_writeable_dir_by_unusual_process.toml

* IG Additions

---------

Co-authored-by: Colson Wilhoit <48036388+DefSecSentinel@users.noreply.github.com>
2026-04-22 08:03:32 +02:00
Jonhnathan 8d25a7ddce [Rule Tuning] Update MDE tags to "Microsoft Defender XDR" (#5927)
* [Rule Tuning] Fix MS Defender XDR tag

* bump upodated_date
2026-04-20 18:38:09 -03:00
Eric Forte b2e4925c7f [Rule Tuning] Abnormally Large DNS Response (#5922)
* Refine event dataset and remove flag on connection type
2026-04-20 09:28:01 -04:00
Terrance DeJesus deab1c0161 [Rule Tuning] Change event.dataset to data_stream.dataset (#5943)
* [Rule Tuning] Change event.dataset to data_stream.dataset

* updating ESQL field names
2026-04-10 12:27:52 -04:00
Jonhnathan a9d0d79a5b [Rule Tuning] Process Created with an Elevated Token (#5934) 2026-04-10 11:47:27 -03:00