Commit Graph

631 Commits

Author SHA1 Message Date
Ruben Groenewoud 39cdb3887f [New/Tuning] TeamPCP Simulation - New & Tuned Rules (#5812)
* [New/Tuning] TeamPCP Simulation - New & Tuned Rules

* ++

* ++

* Added IGs

* Update event action conditions in TOML rule

Refactor process event conditions for clarity.

* Add cloud-related file access patterns to rules

* Update persistence_suspicious_webserver_child_process_execution.toml

* Update rules/integrations/cloud_defend/defense_evasion_file_creation_execution_deletion_cradle.toml

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

* Update defense_evasion_file_creation_execution_deletion_cradle.toml

* Update defense_evasion_file_creation_execution_deletion_cradle.toml

---------

Co-authored-by: Jonhnathan <26856693+w0rk3r@users.noreply.github.com>
2026-03-09 17:03:39 +01:00
Eric Forte 94c73e3ad7 [FR] Minor Typo Fixes (#5784) 2026-03-06 16:12:45 -06:00
Ruben Groenewoud c24f84b5b0 [Rule Tuning] kubernetes.audit.userAgent --> user_agent.original Conversion (#5808) 2026-03-05 14:13:30 +01:00
Isai 1e777d9be7 [Rule Tuning] AWS STS Role Assumption by User (#5796)
* [Rule Tuning] AWS STS Role Assumption by User

Removed AssumedRole from the `aws.cloudtrail.user_identity.type` filter to eliminate redundancy with the AWS STS Role Chaining rule. The AWS STS Role Chaining rule already covers AssumedRole identity types assuming other roles. This change ensures each rule has distinct coverage without overlapping alerts.

- Changed query filter from `aws.cloudtrail.user_identity.type: ("AssumedRole" or "IAMUser")` to `aws.cloudtrail.user_identity.type: "IAMUser"`
- Updated description to clarify the rule focuses on user-initiated role assumptions
- Minor formatting fixes to investigation guide headings

* reducing new_terms fields

reducing new_terms fields to only use "aws.cloudtrail.user_identity.arn" since we do not have to account for roles, this field is unique for IAMUsers
2026-03-04 13:01:49 -05:00
Isai c5dbd90662 [Rule Tunings] Add Console Session Filtering to AWS Temporary Credential Detection Rules (#5781)
* [Rule Tuningw] Add Console Session Filtering to AWS Temporary Credential Detection Rules

Added `aws.cloudtrail.session_credential_from_console` field filtering to 2 rules to reduce false positives from legitimate console login sessions. Console logins automatically issue temporary "ASIA" credentials, which previously triggered alerts for rules monitoring session token abuse.

- Updated false positives sections to reflect automatic console session filtering
- Updated investigation guides to note that alerts indicate non-console temporary credential usage
- min_stack_version = "9.2.0" because this field was introduced in AWS Integration version 4.6.0. 9.2.0 is the earliest major stack version supported.

Impact
- Significantly reduces false positives from legitimate AWS Management Console usage
- Improves rule fidelity by focusing detection on programmatic abuse of temporary credentials (CLI, SDK, stolen credentials)

* update boolean field value for aws.cloudtrail.session_credential_from_console

update boolean field value for aws.cloudtrail.session_credential_from_console

* removing filebeat compatibility

removing filebeat compatibility
2026-02-26 17:21:18 -05:00
Terrance DeJesus 5ecbc0f0b9 [New Rule] Microsoft 365 SharePoint/OneDrive Sensitive Search and File Access (#5777)
* [New Rule] Microsoft 365 SharePoint/OneDrive Sensitive Search and File Access
Fixes #5776

* adjusting UUIDs

* added additional strings

* adjusted investigation guide

* fixed mitre mappings

* fixed mitre mappings

* Apply suggestion from @terrancedejesus
2026-02-26 14:29:14 -05:00
Terrance DeJesus 71c461d867 [New Rule] M365 MFA Notification Email Deleted or Moved (#5779)
* [New Rule] M365 MFA Notification Email Deleted or Moved
Fixes #5778

* updated non-ecs

* adjusted rule name

* Apply suggestion from @terrancedejesus
2026-02-26 13:21:08 -05:00
Terrance DeJesus 8593116f58 [New Rule] Okta User Authentication via Proxy Followed by Security Alert (#5752)
* [New Rule] Okta User Authentication via Proxy Followed by Security Alert
Fixes #5751

* adjusted to EQL

* fixed syntax

* Update rules/integrations/okta/initial_access_first_occurrence_user_session_started_via_proxy.toml

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

* removed defense evasion; adjusted maxspan to 30m

* removed Okta tag

* adding Okta back as integration tag

---------

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
2026-02-26 11:32:25 -05:00
Terrance DeJesus 04ad018f27 [Rule Tuning] M365 OneDrive/SharePoint Excessive File Downloads (#5767)
* [Rule Tuning] M365 OneDrive/SharePoint Excessive File Downloads
Fixes #5766

* updated non-ecs

* fixing keep command
2026-02-26 10:38:59 -05:00
Terrance DeJesus 013dace20f adjusted min-stack (#5763) 2026-02-23 17:31:36 -05:00
Terrance DeJesus 35a8298bda [Rule Tuning] Entra ID Federated Identity Credential Issuer Modified (#5760)
* added min-stack

* Apply suggestion from @terrancedejesus
2026-02-23 12:43:16 -05:00
Terrance DeJesus 6a7c1e9674 [Rule Deprecation] Deprecate Individual MSFT Compliance Rules (#5679)
* [Rule Tuning] Deprecate Individual MSFT Defender Rules / Create BBR MSFT Defender Rule
Fixes #5678

* adjusted naming; fixed mitre match

* adding M365 Exchange DLP Policy Deleted to deprecation

* adjusted BBR naming to represent Purview and not Defender

* added tactic tags

* adding filebeat

* removed new rule
2026-02-20 14:00:34 -05:00
Terrance DeJesus c7954465f3 [Rule Tuning] Okta Credential Stuffing, Password Spraying, and Brute Force Detection Improvements (#5723)
* [Rule Tuning] Okta Credential Stuffing, Password Spraying, and Brute Force Detection Improvements
Fixes #5722

* adding adjustments

* adjusts made; still testing

* adjustments to logic; names; tags; standardization, etc.

* added missing tag

* updated reference rules
2026-02-20 13:36:25 -05:00
Isai 62aa4dcedc [Rule Tuning] Potential AWS S3 Bucket Ransomware Note Uploaded (#5739)
Tuning based on telemetry from recent rule version 9. There are many false positives for what look like typical S3 storage object names like `BillingInformation`, `InstanceInformation` created by AWS Service accounts. I'm excluding AWS service account types from the rule for now which eliminated ~97% of the false positives over last 30 days. leaving only 66 which is acceptable for this rule and should be addressed via local exclusions.

Co-authored-by: Colson Wilhoit <48036388+DefSecSentinel@users.noreply.github.com>
2026-02-20 10:41:42 -05:00
Terrance DeJesus f773103519 [Rule Tuning] Entra ID Federated Identity Credential Persistence Detection (#5702)
* [Rule Tuning] Entra ID Federated Identity Credential Persistence Detection
Fixes #5701

* updated mitre mapping ID

* adjusted mitre mappings; non-ecs schema file

* fixed trailing comma in non-ecs; adjusted file name

* adjusted file name; fixed non-ecs schema for upstream ESQL validation

* Apply suggestion from @terrancedejesus

* Apply suggestion from @terrancedejesus

* changed lookback to 9 minutes; adjusted keep values

* added setup; added tag
2026-02-19 15:58:12 -05:00
Terrance DeJesus 63f76cf004 [Rule Tuning] Entra ID SharePoint Accessed by Unusual User and Microsoft Authentication Broker Client (#5681)
* [Rule Tuning] Transform Dormant SharePoint Rule to Detect OAuth Phishing
Fixes #5680

* adjusted query format for unit test; added additional domain tag for storage

* Apply suggestion from @terrancedejesus

* Fix formatting in non-ecs-schema.json

* adjusted description

* re-order mappings
2026-02-19 10:09:15 -05:00
Terrance DeJesus dbbf71b9c2 [Rule Tuning] Entra ID Suspicious Cloud Device Registration (#5683)
* [Rule Tuning] Entra ID Suspicious Cloud Device Registration
Fixes #5682

* fixed investigation guide name

* adjusted from to 30m and interval to 15m
2026-02-18 17:37:17 -05:00
Isai e633c83b73 [New Rule] AWS SSM Inventory Reconnaissance by Rare User (#5724)
* [New Rule] AWS SSM Inventory Reconnaissance by Rare User

This rule detects the first time a user or role accesses AWS Systems Manager (SSM) inventory APIs or runs the AWS-GatherSoftwareInventory job. SSM Inventory provides detailed information about managed EC2 instances including installed software, patch compliance, network configurations, and command execution history. Threat actors, including Scattered Spider (LUCR-3), have been observed leveraging these APIs to enumerate targets for lateral movement while blending in with legitimate AWS operations. The rule uses a New Terms approach on cloud.account.id and user.name to identify when users access these reconnaissance APIs for the first time.

No existing rules specifically detect SSM inventory reconnaissance activity. This fills a gap in detecting cloud infrastructure discovery techniques used for target enumeration prior to lateral movement.

| API | Purpose |
|-----|---------|
| `GetInventory` | Query inventory data (installed software, OS details) |
| `GetInventorySchema` | Discover available inventory types |
| `ListInventoryEntries` | Get specific instance inventory |
| `DescribeInstancePatches` | Find patch compliance/vulnerabilities |
| `ListCommands` | View SSM command execution history |
| `CreateAssociation` | Trigger AWS-GatherSoftwareInventory job |

* Apply suggestions from code review
2026-02-18 15:50:14 -05:00
Isai f10de64527 [New Rule] AWS Sensitive IAM Operations Performed via CloudShell (#5718)
* [New Rule] AWS Sensitive IAM Operations Performed via CloudShell

This rule detects sensitive AWS IAM operations performed via CloudShell based on the user agent string. CloudShell is a browser-based shell that provides command-line access to AWS resources directly from the console without requiring local tooling. When attackers gain access to a compromised console session, CloudShell enables them to perform privileged operations such as creating users, access keys, roles, or attaching policies—leaving no artifacts on their local system. This behavior is documented in the Permiso blog on LUCR-3 (Scattered Spider) and the CISA Scattered Spider advisory, where threat actors leveraged CloudShell for post-compromise credential harvesting and privilege escalation.

No existing rules specifically detect CloudShell as the origin for sensitive IAM operations. This fills a gap by identifying high-risk actions from this browser-based execution context.

* adding iam provider

* primary tactic change

* updating highlighted fields

* removed bold from IG

* Apply suggestions from code review

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-02-18 15:29:53 -05:00
Isai f62026e378 [New Rules] AWS IAM new identity federation provider rules (#5691)
* [New Rules] AWS IAM new identity federation provider rules

AWS IAM SAML Provider Created and AWS IAM OIDC Provider Created by Rare User detect the creation of new identity federation providers in AWS IAM. SAML and OIDC providers establish trust relationships with external identity providers, enabling federated access to AWS resources. Adversaries who gain administrative access may create rogue providers to establish persistent access that survives credential rotation, allowing them to assume roles using tokens from an IdP they control. These rules map to MITRE ATT&CK T1484.002 (Trust Modification), which is referenced in the CISA Scattered Spider advisory (AA23-320A) under the Privilege Escalation tactic.

Existing Related Coverage: We already detect `UpdateSAMLProvider` via privilege_escalation_iam_saml_provider_updated.toml. These new rules close the gap by detecting the creation of federation providers, the initial step required to establish rogue trust relationships.

* Update rules/integrations/aws/persistence_iam_oidc_provider_created.toml

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

* Update rules/integrations/aws/persistence_iam_oidc_provider_created.toml

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

* Apply suggestion from @imays11

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2026-02-18 15:17:13 -05:00
Samirbous 204f0b2ebc [Tuning] Adds host metadata to the setup requirements (#5719)
* [Tuning] Adds host metadata to the setup requirements

Rules requiring host.ip and that are compatible with Elastic Defend integration can be impacting by windows].advanced.set_extended_host_information if set to the default value (false), host.ip won't be populated from 8.18+ (only host.name and host.os and host.id).

Related SDH https://github.com/elastic/sdh-endpoint/issues/722

* ++

* Update rules/integrations/lmd/lateral_movement_ml_high_mean_rdp_process_args.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_high_mean_rdp_session_duration.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_high_remote_file_size.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_high_variance_rdp_session_duration.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_rare_remote_file_directory.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_unusual_time_for_an_rdp_session.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_spike_in_connections_from_a_source_ip.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_rare_remote_file_extension.toml

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

* Update rules/integrations/lmd/lateral_movement_ml_spike_in_connections_to_a_destination_ip.toml

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

* Update lateral_movement_ml_spike_in_rdp_processes.toml

* Apply suggestion from @Mikaayenson

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-02-18 17:04:40 +00:00
Terrance DeJesus 93d20b1233 [Rule Deprecation] M365 Teams Guest & External Access Rules (#5721)
Fixes #5720
2026-02-18 10:00:24 -05:00
Isai 386c8f7e7a [New Rule] AWS GuardDuty Member Account Manipulation (#5688)
* [New Rule] AWS GuardDuty Member Account Manipulation

Detects attempts to manipulate GuardDuty member account relationships within AWS Organizations. This includes actions like `DisassociateFromAdministratorAccount`, `DeleteMembers`, `StopMonitoringMembers`, and `DeleteInvitations` that break centralized security visibility. These actions are often precursors to or alternatives for fully deleting GuardDuty detectors, allowing adversaries to operate undetected in member accounts. The idea for this rule was inspired by defense evasion techniques highlighted in Permiso's research on Scattered Spider, and expanded to include other relevant API calls that could be abused for the same purpose.

Existing Related Coverage: We already detect `DeleteDetector` via defense_evasion_guardduty_detector_deletion.toml. This new rule complements that coverage by catching the manipulation of GuardDuty member relationships, actions that break org-level visibility without requiring full detector deletion.

* toml file name change

* Apply suggestions from code review

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-02-17 16:32:20 -05:00
Terrance DeJesus 4299831b90 [Rule Tuning] M365 Identity Excessive SSO Login Errors Reported (#5677)
* [Rule Tuning] M365 Identity Excessive SSO Login Errors Reported
<!-- This issue will be created in repo elastic/detection-rules (https://github.com/elastic/detection-rules). Changing this line has no effect. -->
Fixes #5676

* adjusted file name

* adjusted message to STS codes; removed generic SAML request andresponse codes
2026-02-17 13:55:24 -05:00
Terrance DeJesus 62cc9f105d [Rule Tuning] Okta User Assigned Administrator Role (#5671)
Fixes #5670
2026-02-12 09:33:25 -05:00
Ruben Groenewoud 64168f62c1 [New/Tuning] Misc. D4C Rules (#5710)
* [New/Tuning] Misc. D4C Rules

* Added IGs

* ++

* Update rules/integrations/cloud_defend/persistence_suspicious_echo_or_printf_execution.toml

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

* Update rules/integrations/cloud_defend/persistence_suspicious_echo_or_printf_execution.toml

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

* Update rules/integrations/cloud_defend/execution_payload_downloaded_and_piped_to_shell.toml

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

* Apply suggestion from @Aegrah

* Update persistence_modification_of_persistence_relevant_files.toml

---------

Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
2026-02-12 10:52:16 +01:00
shashank-elastic 70d7f2b6b1 Monthly Manifest and Schema Updation (#5697) 2026-02-10 09:17:04 +05:30
Ruben Groenewoud 229f3adf75 [New/Tuning] Misc. New D4C Rules and Tunings (#5692)
* Updated kubernetes.audit.requestObject.spec.containers.image type of text to Keyword

* [New/Tuning] Misc. New D4C Rules and Tunings

* Added IGs for High Severity Rules

* Apply suggestion from @Aegrah

* ++

* Update discovery_privilege_boundary_enumeration_from_interactive_process.toml

* ++

* Update rules/integrations/cloud_defend/credential_access_service_account_token_or_cert_read.toml

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>

* Update rules/integrations/cloud_defend/discovery_service_account_namespace_read.toml

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>

* Update execution_interactive_file_creation_followed_by_execution.toml

* Some updates based on feedback

* Rule name changes

* ++

---------

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
2026-02-09 16:58:27 +01:00
Isai 793d79b063 [New Rule] AWS EC2 Serial Console Access Enabled (#5687)
* [New Rule] AWS EC2 Serial Console Access Enabled

Detects when an adversary enables the EC2 Serial Console feature at the AWS account level. This technique was documented by Permiso in their LUCR-3 Scattered Spider research as a defense evasion method that provides out-of-band access to EC2 instances, completely bypassing network-based security monitoring, VPCs, and security groups. Enabling serial console access is extremely rare in production environments, making this a high-signal detection with minimal false positive risk. I've tested this query against alert and prod telemetry and found rare instances.

Existing Related Coverage: We already detect `SendSerialConsoleSSHPublicKey` via lateral_movement_ec2_instance_connect_ssh_public_key_uploaded.toml, which catches the usage of serial console. This new rule closes the gap by detecting the enablement of serial console access, the prerequisite step that must occur before an attacker can leverage this out-of-band channel.

* raising severity and risk score
2026-02-06 17:34:55 -05:00
Isai 1c59a6adde [Rule Tuning] Potential AWS S3 Bucket Ransomware Note Uploaded (#5657)
* [Rule Tuning] Potential AWS S3 Bucket Ransomware Note Uploaded

This rule was very loud in telemetry since it's last tuning. ~8,938 alerts in last 24 hours. All false positives due to regex pattern matches for file names like `enc` as part of /filetransfertmsadherence/ and absence/; `lock` as part of citations-blocks/.

I've reworked this rule based on more research into common ransom note file name keywords and replaced the list here with the most common keywords. For `file` (the most common) and `back`, I was still seeing false positives so decided to alert on a combination of either or these 2 words in conjunction with any of the other words from the list. I also changed the regex to be case-insensitive.

With this new query, I see only true positive results within the last year all from known testing events.

I changed the toml file name so the rule looks new but it is just tuned.

I've updated the description and investigation guide, and added the study I used as a reference: https://www.mdpi.com/2073-431X/10/11/145#computers-10-00145-f002

Test data is in our stack, script for executing is here:

Screenshot of new working query in our test stack

* Apply suggestions from code review

* removing redundany regex pattern
2026-02-05 21:34:38 -05:00
yuriShafet 64cca9e1ba [Rule Tuning] Machine Learning Detected a Suspicious Windows Event with a High Malicious Probability Score (#5523) (#5686)
Add EQL exclusions for benign activity:
Opera GX renderer children,
Slack creating slack children,
Node using playwright to create chrome process
Python editors accessing reg.exe
Logitech manager activity
 and Zabbix script paths.
2026-02-05 15:54:26 -05:00
Ruben Groenewoud 64a08cd6af [New Rules] Misc. K8s RBAC Abuse Rules (#5673)
* Updated kubernetes.audit.requestObject.spec.containers.image type of text to Keyword

* [New Rules] Misc. K8s RBAC Abuse Rules

* --

* Update non-ecs-schema

* Update to make unit tests happy

* Mitre mapping updates

* Fix query logic for service account role bindings

* Fix formatting in persistence_service_account_bound_to_clusterrole rule
2026-02-05 17:42:03 +01:00
Samirbous 00159a3eca [Tuning] M365 Exchange Inbox Phishing Evasion Rule Created (#5648)
* Update defense_evasion_exchange_new_inbox_rule_delete_or_move.toml

* Update defense_evasion_exchange_new_inbox_rule_delete_or_move.toml

---------

Co-authored-by: Jonhnathan <26856693+w0rk3r@users.noreply.github.com>
2026-02-05 10:02:57 -03:00
Ruben Groenewoud 3cba3d7982 [Rule Tuning] Dormant & Deprecated Rule Clean-Up (#5672)
* Updated kubernetes.audit.requestObject.spec.containers.image type of text to Keyword

* [Rule Tuning] Dormant & Deprecated Rule Clean-Up

* [Rule Tuning] Dormant & Deprecated Rule Clean-Up

* Few more deprecations

* ++

* Update unit test syntax fix

* Update bad bytes

* ++
2026-02-05 13:24:21 +01:00
Samirbous fda9f00c2b [Tuning] M365 Exchange Inbox Forwarding Rule Created (#5647)
* Update collection_exchange_new_inbox_rule.toml

* Update collection_exchange_new_inbox_rule.toml

* Update rules/integrations/o365/collection_exchange_new_inbox_rule.toml

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

* Update rules/integrations/o365/collection_exchange_new_inbox_rule.toml

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

* Update rules/integrations/o365/collection_exchange_new_inbox_rule.toml

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-02-04 13:50:55 +00:00
Ruben Groenewoud c455d3d98a [Rule Tuning] Full Kubernetes Ruleset (#5659)
* [Rule Tuning] Full Kubernetes Ruleset

* ++

* Update manifests & schemas

* Update pyproject.toml

* Added "kubernetes.audit.userAgent" to non_ecs

* Updated kubernetes.audit.requestObject.spec.containers.image of type text to Keyword

* Apply suggestion from @Aegrah

* Apply suggestion from @Aegrah

* Update privilege_escalation_pod_created_with_hostnetwork.toml

* Apply suggestion from @Aegrah

* Update privilege_escalation_pod_created_with_hostipc.toml

* Apply suggestion from @Mikaayenson

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

* ++

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-02-04 10:42:41 +01:00
Ruben Groenewoud 7c03840737 [New Rules] Misc. D4C Rules re: (un)Authenticated API Access (#5661)
* Updated kubernetes.audit.requestObject.spec.containers.image type of text to Keyword

* [New Rules] Misc. D4C Rules related to (un)authenticated API Access

* Apply suggestion from @Aegrah

* [New Rule] Kubelet Certificate File Access Detected via Defend for Containers

* [New Rule] Kubeletctl Execution Detected via Defend for Containers

* [New Rule] Potential Kubeletctl Execution Detected via Defend for Containers

* [New Rule] Kubernetes Potential Endpoint Permission Enumeration Attempt Detected

* [New Rule] Kubernetes Potential Endpoint Permission Enumeration Attempt by Anonymous User Detected

* [New Rule] Kubernetes Anonymous User Create/Update/Patch Pods Request

* [New Rule] Potential Cluster Enumeration via jq Detected via Defend for Containers

* Apply suggestion from @Aegrah

* Update execution_kubeletctl_execution.toml
2026-02-04 09:58:42 +01:00
Terrance DeJesus 6502ba61d7 [Rule Tuning] M365 Security Compliance Potential Ransomware Activity (#5653)
Fixes #5652
2026-01-30 09:57:56 -05:00
Terrance DeJesus fa56ae556e [New Rule] Okta AiTM Session Cookie Replay Detection (#5627)
* New Rule: Okta AiTM Session Cookie Replay Detection
Fixes #5626

* added keep; linted

* adjusted logic to include UA 2+, fixed MITRE Mappings

---------

Co-authored-by: Jonhnathan <26856693+w0rk3r@users.noreply.github.com>
2026-01-29 08:58:59 -05:00
Eric Forte 2265717c41 chore: Fix lock version for 9.3.2 Release (#5634)
* Min stack mv_contains
2026-01-27 22:38:39 -05:00
shashank-elastic 3ee0a72a65 Add investigation guides (#5630) 2026-01-27 14:28:06 +05:30
Terrance DeJesus b311044624 [Rule Tuning] Entra ID OAuth Phishing via First-Party Microsoft Application (#5610)
Fixes #5609
2026-01-26 14:55:18 -05:00
Ruben Groenewoud c5b64c9fbf [New/Tuning] General API Abuse D4C/K8s Rules (#5591)
* [New/Tuning] General API Abuse D4C/K8s Rules

* [New Rule] DNS Enumeration Detected via Defend for Containers

* [New Rule] Tool Enumeration Detected via Defend for Containers

* [New Rule] Tool Installation Detected via Defend for Containers

* Service Account File Reads

* [New Rule] Direct Interactive Kubernetes API Request Detected via Defend for Containers

* Rule name update

* [New Rules] D4C K8S MDA API Request Rules

* Add 'tor' to the list of allowed process args

* ++

* ++

* Update rules/integrations/kubernetes/execution_user_exec_to_pod.toml

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

* Update description

* Update rules/integrations/cloud_defend/execution_tool_installation.toml

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

* Update rules/integrations/cloud_defend/execution_tool_installation.toml

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

* Update rules/integrations/cloud_defend/execution_tool_installation.toml

* Update non-ecs-schema.json

---------

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-01-26 16:59:14 +01:00
Ruben Groenewoud 57599e3796 [New Rule] Curl SOCKS Proxy Detected via Defend for Containers (#5596)
* [New Rule] Curl SOCKS Proxy Detected via Defend for Containers

* Added reference

* Update rules/integrations/cloud_defend/command_and_control_curl_socks_proxy_detected_inside_container.toml

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

* Update time range for cloud defend rule

* Update rules/integrations/cloud_defend/command_and_control_curl_socks_proxy_detected_inside_container.toml

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>

---------

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
2026-01-26 16:46:59 +01:00
Ruben Groenewoud fe4418d7f5 [New Rules] Reintroduction of Defend for Containers (D4C) Ruleset (#5561)
* [New Rules] Reintroduction of Defend for Containers (D4C) Ruleset

* ++

* Removed Reintroduced Rules from Deprecated Folder

* Updated Rule Names

* Added maturity field

* [Update] Large D4C Compatibility Overhaul

* Added busybox

* Remove file that was accidently added in this PR

* Creation date revert

* ++

* Update pyproject.toml

* ++

* ++

* Update

* Update schemas/manifests

* ++
2026-01-26 16:37:34 +01:00
Terrance DeJesus 6c555aaba4 [Rule Tuning] Entra ID OAuth Authorization Code Grant for Unusual User, App, and Resource (#5589)
Fixes #5588
2026-01-24 08:51:23 -05:00
Terrance DeJesus 04b99c8ec1 [Rule Tuning] Entra ID OAuth Device Code Flow with Concurrent Sign-ins (#5594)
Fixes #5593
2026-01-23 16:25:51 -05:00
Terrance DeJesus 15aacaba70 [Rule Tuning] M365 Threat Intelligence Signal (#5587)
* [Rule Tuning] M365 Threat Intelligence Signal
Fixes #5586

* updating date

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-01-23 15:45:05 -05:00
Ruben Groenewoud 4408ea014b [Rule Tuning] Removing host.os.type from K8s Rules (#5577) 2026-01-23 10:41:20 +01:00
Isai 4e4559204d [Rule Tunings] AWS remove target.entity.id and actor.entity.id fields (#5603)
* [Rule Tunings] AWS removal of target.entity.id and actor.entity.id fields

Related Issue : - https://github.com/elastic/security-team/issues/14019

`target.entity.id` and `related.entity.id` fields will soon be fully removed from the AWS Integration. This rule tuning replaces rule queries that relied on `target.entity.id` with the equivalent field `entity.target.id` which was introduced with AWS version 4.7.0 along with several new entity classification fields. This tuning also removes references to these fields in highlighted fields and investigation guides for several rules.

* update data for defense_evasion_route53_dns_query_resolver_config_deletion.toml

update data for defense_evasion_route53_dns_query_resolver_config_deletion.toml

* updated_dates

* [Rule Tunings] AWS remove target.entity.id and actor.entity.id fields

adding min_stack to rules using the field `entity.target.id`, we determined AWS version 4.7.0 is compatible with Kibana versions '^8.19.4 || ^9.1.4'. We reverted the initial PR and this one adds the min_stack_version.

Original PR: - https://github.com/elastic/detection-rules/pull/5563
______

### Issue Link
- https://github.com/elastic/ia-trade-team/issues/781

## Summary - What I changed

`target.entity.id` and `actor.entity.id` fields will soon be fully removed from the AWS Integration. This rule tuning replaces rule queries that relied on `target.entity.id` with the equivalent field `entity.target.id` which was introduced with AWS version 4.7.0 along with several new entity classification fields. This tuning also removes references to these fields in highlighted fields and investigation guides for several rules.

<img width="1622" height="1488" alt="image" src="https://github.com/user-attachments/assets/024fbdb2-c0e4-4785-9735-5285218e4fa9" />

## Rules with Query Changes

**AWS IAM Customer-Managed Policy Attached to Role by Rare User
AWS IAM Assume Role Policy Update**

Both of these rules relied on `target.entity.id` as a new terms field, this field has been replaced with `entity.target.id` field which is populating the same value for the event.actions these rules trigger on, as shown in the screenshot below.

<img width="1600" height="445" alt="Screenshot 2026-01-15 at 12 13 17 PM" src="https://github.com/user-attachments/assets/27e482fe-2a09-4dfb-8337-2e5070422183" />

## How To Test
- recent test data is in our stack for the 2 rules that have changes to their new terms values.
- test scripts for each:
  - [trigger_privilege_escalation_iam_customer_managed_policy_attached_to_role.py](https://github.com/elastic/elastic-aws-ruleset-testing/blob/main/IAM/trigger_privilege_escalation_iam_customer_managed_policy_attached_to_role.py)
  - [trigger_privilege_escalation_update_assume_role_policy.py](https://github.com/elastic/elastic-aws-ruleset-testing/blob/main/IAM/trigger_privilege_escalation_update_assume_role_policy.py)
2026-01-22 15:01:49 -05:00