Commit Graph

589 Commits

Author SHA1 Message Date
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
Terrance DeJesus dcd7dadece reverting 07579f2bd7 (#5602) 2026-01-22 12:44:18 -06:00
Isai 07579f2bd7 [Rule Tunings] AWS remove target.entity.id and actor.entity.id fields (#5563)
* [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
2026-01-21 13:54:56 -05:00
Isai 5f4f9d206f [Rule Deprecations] AWS Rule Deprecations (#5568)
Completing the Deprecation process for these rules as they have been shipped at least 2 release cycles with "Deprecated - " prefix.

All have the following metadata changes

maturity = "deprecated"
updated_date = "2026/01/16"
deprecation_date = "2026/01/16"
2026-01-20 16:05:39 -05:00
Isai 9e6bf04e82 [Rule Tunings] AWS Removing Disclaimer from IGs (#5567)
- Removing the genAI disclaimer for the AWS ruleset Investigation guides which were all manually modified during the most recent audit.
- Removing any numbering in the investigation guides to maintain better consistency across guides
- Fixed any spacing inconsistencies
2026-01-20 15:52:48 -05:00
shashank-elastic 1ce072a4e5 Prep for Release 9.3 (#5548) 2026-01-12 21:07:07 +05:30
Terrance DeJesus 8b84c26286 [Rule Tuning] Okta Sign-In Events via Third-Party IdP - Convert to New Terms (#5544)
* [Rule Tuning] Okta Sign-In Events via Third-Party IdP - Convert to New Terms
Fixes #5543

* fixed query optimization
2026-01-12 09:40:09 -05:00
Terrance DeJesus 4e5b8be0de [Rule Tuning] New Okta Authentication Behavior Detected (#5542)
* [Rule Tuning] New Okta Authentication Behavior Detected
Fixes #5541

* tuning New Okta Authentication Behavior Detected

* Update rules_building_block/initial_access_new_okta_authentication_behavior.toml

* updated tag, adjusted lookback window
2026-01-12 09:01:32 -05:00
Terrance DeJesus de42a5aabd [New Rule] ConsentFix Detections (#5485)
* adjusting/adding consentfix detections

* updating investigation guides to be standardized

* making investigation guides more contextual

* updating descriptions

* Update rules/integrations/azure/initial_access_entra_id_oauth_auth_code_grant_unusual_app_resource_user.toml

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

* reducing new terms window to 7d

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2026-01-12 08:45:50 -05:00
Terrance DeJesus 7b4611713b [Rule Tuning] Entra ID Protection Sign-in and User Risk Detection Rules - Filter Remediated Risk States (#5535)
Fixes #5534

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
2026-01-09 11:27:52 -05:00
Ruben Groenewoud 34daf12d51 [New Rules] Several GitHub Related Rules (#5470)
* [New Rules] Several GitHub Related Rules

* Added additional references

* Update defense_evasion_secret_scanning_disabled.toml

* Update persistence_new_pat_created.toml

* Added two more rules

* ++

* Update rules/integrations/github/impact_github_repository_activity_from_unusual_ip.toml

* Added github.repository_public to non_ecs

* Update impact_github_repository_activity_from_unusual_ip.toml

* Update rules/integrations/github/impact_high_number_of_failed_protected_branch_force_pushes_by_user.toml

* ++

* Update rules/integrations/github/exfiltration_high_number_of_cloning_by_user.toml

* Update rules/integrations/github/impact_high_number_of_closed_pull_requests_by_user.toml

* Update rules/integrations/github/impact_high_number_of_protected_branch_force_pushes_by_user.toml

* ++

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2026-01-08 17:19:12 +01:00
Terrance DeJesus 98058816a7 [Rule Tuning] Entra ID Excessive Account Lockouts Detected (#5502)
* [Rule Tuning] Entra ID Excessive Account Lockouts Detected
Fixes #5501

* linting

* removed newlines

* Update rules/integrations/azure/credential_access_entra_id_excessive_account_lockouts.toml

---------

Co-authored-by: Colson Wilhoit <48036388+DefSecSentinel@users.noreply.github.com>
2026-01-07 11:38:04 -05:00
Terrance DeJesus b0d3d7d960 [Rule Tuning] Entra ID OAuth PRT Issuance to Non-Managed Device Detected (#5464)
* [Rule Tuning] Entra ID OAuth PRT Issuance to Non-Managed Device Detected
Fixes #5463

* Adjusted description in investigation guide
2025-12-21 16:30:32 -05:00
Terrance DeJesus 0fd3df6239 [Rule Tuning] Entra ID User Sign-in with Unusual Registered Device (#5466)
Fixes #5465
2025-12-21 15:51:13 -05:00
Isai a14a1fd068 [Rule Tuning] AWS Service Quotas Multi-Region GetServiceQuota Requests (#5468)
* [Rule Tuning] AWS Service Quotas Multi-Region GetServiceQuota Requests

This rule is alerting as expected with very few instances in telemetry (only have data from 1 cluster).
- added more fields for context in the query.
- added metadata fields to query
- reduced execution window
- added highlighted fields

#### screenshot of working query with additional context

* Update rules/integrations/aws/discovery_servicequotas_multi_region_service_quota_requests.toml

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2025-12-19 16:46:45 -05:00
Isai 284d7d5b23 [Rule Tuning] AWS SQS Queue Purge (#5457)
This rule is triggering as expected with moderate telemetry volume (high spikes for what looks like expected cleanup jobs) in specific cluster. No changes needed to the rule query.

- updated description, FP and IG
- reduced execution window
- updated highlighted fields
2025-12-19 15:51:43 -05:00
Isai e8f317817e [Rule Tunings] AWS Config Rule Tunings (#5456)
### AWS Config Resource Deletion
- added exclusions for services that perform Config modifications by design, reducing noise by 97% over the last 30 days.
- added success criteria to query as well
- increased severity to medium as this alert should be triaged
- updated description, false positive and investigation guide sections
- reduced execution window
- updated MITRE
- updated tags
- added highlighted fields

### AWS Configuration Recorder Stopped
no major query changes needed for this rule, performing as expected in telemetry with low volume as this is more rare activity.
- updated description, false positive and investigation guide sections
- reduced execution window
- updated MITRE
- updated tags
- added highlighted fields
2025-12-19 13:58:45 -05:00
Isai 97b0bd84d8 [Rule Tunings] AWS Lambda Rules (#5451)
* [Rule Tunings] AWS Lambda Rules

#### AWS Lambda Layer Added to Existing Function
This rule was missing alerts for the `UpdateFunctionConfiguration` action due to a missing wildcard.
- added missing wildcard to query
- reduced execution window
- updated description, FP and IG sections
- added highlighted fields

#### AWS Lambda Function Policy Updated to Allow Public Invocation
- changed this query to use EQL instead of KQL to optimize wildcard usage
- uses `event.type` as `event_category_override`
- reduced execution window
- updated description, FP and IG sections
- added highlighted fields

* Update rules/integrations/aws/persistence_lambda_backdoor_invoke_function_for_any_principal.toml

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
2025-12-19 13:45:47 -05:00
Isai 12d257ed56 [Rule Tuning] AWS EC2 EBS Snapshot Access Removed (#5499)
- fixed mistake in creation date
- excludes `backup.amazon.com` FP from telemetry
2025-12-19 13:28:27 -05:00
Terrance DeJesus 4c9317b9cc [Rule Tuning] Entra ID User Sign-in with Unusual Client (#5473)
* [Rule Tuning] Entra ID User Sign-in with Unusual Client
Fixes #5472

* linting

* Update rules/integrations/azure/initial_access_entra_id_rare_app_id_for_principal_auth.toml

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

* removed duplicate client ID

* fixed investigation guide

* Update rules/integrations/azure/initial_access_entra_id_rare_app_id_for_principal_auth.toml

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

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
2025-12-18 20:04:11 -05:00
Terrance DeJesus 1bd7dea8ed [Rule Tuning] Entra ID OAuth user_impersonation Scope for Unusual User and Client (#5462)
Fixes #5461
2025-12-18 19:55:02 -05:00
Isai bc6ad03f86 [Rule Tuning] AWS EventBridge Rule Disabled or Deleted (#5458)
There was a mistake in the query for this rule. It was looking for `event.provider: eventbridge.amazonaws.com` instead of `events.amazonaws.com`. So we have no existing telemetry for this rule. However, I have tested the behavior properly and ensured the new query does alert as expected. I will monitor this rule in telemetry moving forward to gauge it's performance.

- query change `event.provider: events.amazonaws.com`
- reduced execution window
- updated description, FP and IG sections
- updated tags
- added highlighted fields
2025-12-18 16:56:04 -05:00
Isai ed42a9e9dd [Rule Tuning] AWS CLI with Kali Linux Fingerprint Identified (#5467)
* [Rule Tuning] AWS CLI with Kali Linux Fingerprint Identified

This rule is performing well in telemetry as expected. I changed this to EQL to avoid the multiple wildcards needed with KQL.

- changed rule type to EQL
- reduced execution window
- updated description, false positive and investigation guide

Script for testing this rule:
Manually perform any action against our AWS account using Kali Linux distribution

#### Screenshot showing working EQL query, still captures the BitPanda behavior this rule was initially designed around.

* add highlighted fields

add highlighted fields

* Update initial_access_kali_user_agent_detected_with_aws_cli.toml
2025-12-18 16:13:34 -05:00
Isai c35a5801cd [Rule Tunings] AWS Route53 Rules (#5448)
AWS Route53 Resolver Query Log Configuration Deleted
- updated title
- updated Description, FP and IG sections
- reduced execution window
- updated tags
- added highlighted fields

AWS Route53 Domain Transfer Lock Disabled
- increased rule severity to high
- corrected `event.provider` value in query
- updated title
- updated Description, FP and IG sections
- reduced execution window
- added highlighted fields
- updated Mitre

AWS Route53 Domain Transferred to Another Account
- increased rule severity to high
- corrected `event.provider` value in query
- updated title
- updated Description, FP and IG sections
- reduced execution window
- added highlighted fields
- updated Mitre

AWS Route53 Private Hosted Zone Associated With a VPC
- increased rule severity to medium
- corrected `event.provider` value in query
- updated title
- updated Description, FP and IG sections
- reduced execution window
- added highlighted fields
- updated Mitre
2025-12-18 14:49:10 -05:00
Isai 25545b5802 [Rule Tunings] AWS New Terms History Window Reduction (#5479)
I reduced the history window for new terms rules that were either:
- `now-14 days`
- showing slow performance metrics

There are still several AWS rules with a `now-10d` window but they are not showing any performance issues so I'd like to leave them as is for now.

First Time Seen AWS Secret Value Accessed in Secrets Manager
- removed `BatchGetSecretValue` API call since this calls `GetSecretValue`
- removed the user_agent exclusions from this one, too easy to bypass.

AWS EC2 User Data Retrieval for EC2 Instance
- excluded more benign AWS services from telemetry

AWS IAM Assume Role Policy Update
- removed use of cloudformation exclusion, this should be captured as well
2025-12-18 11:47:59 -05:00
Isai d1f9ebb890 [Rule Tunings] AWS WAF Rules (#5429)
AWS WAF Access Control List Deletion
- reduced execution window
- updated tags
- added event.provider fields to query
- updated Mitre mapping
- updated description, fp and ig sections
- added highlighted fields

AWS WAF Rule or Rule Group Deletion
- reduced execution window
- updated tags
- updated Mitre mapping
- updated description, fp and ig sections
- added highlighted fields
2025-12-18 11:27:37 -05:00
Samirbous b996a29451 [Tuning] Diverse Rules Tuning (#5482)
* [Tuning] Diverse Rules Tuning

* Update persistence_shell_profile_modification.toml

* Update defense_evasion_ml_suspicious_windows_event_low_probability.toml

* Update defense_evasion_ml_suspicious_windows_event_high_probability.toml

* Update defense_evasion_ml_suspicious_windows_event_high_probability.toml

* ++

* Update persistence_suspicious_ssh_execution_xzbackdoor.toml

* Update persistence_suspicious_ssh_execution_xzbackdoor.toml

* Update credential_access_potential_linux_ssh_bruteforce_internal.toml

* Update persistence_shell_profile_modification.toml

* Revert "Update credential_access_potential_linux_ssh_bruteforce_internal.toml"

This reverts commit bad889a30d3f4a028de2b6624307f75b279a205b.

* Update persistence_web_server_sus_destination_port.toml

* Update defense_evasion_ml_suspicious_windows_event_high_probability.toml

* Update defense_evasion_ml_suspicious_windows_event_low_probability.toml

---------

Co-authored-by: Jonhnathan <26856693+w0rk3r@users.noreply.github.com>
Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2025-12-18 15:30:12 +00:00
Terrance DeJesus 57f18a1dcf [New Rule] GitHub Actions Bot Pushed to Repository for First Time (#5438)
* [New Rule] GitHub Actions Bot Pushed to Repository for First Time
Fixes #5437

* Update rules/integrations/github/initial_access_github_actions_bot_first_push_to_repo.toml

* Update rules/integrations/github/initial_access_github_actions_bot_first_push_to_repo.toml

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

* Update rules/integrations/github/initial_access_github_actions_bot_first_push_to_repo.toml

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

* Adjusted rule name

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2025-12-18 09:58:57 -05:00
Terrance DeJesus f43bf99698 [New Rule] GitHub Actions Workflow Injection Blocked (#5433)
* [New Rule] GitHub Actions Workflow Injection Blocked
Fixes #5431

* adjusts MITRE ATT&CK mappings

* adjusting file name

* updating GitHub integration schema; fixed MITRE mappings

* revert manifests / schemas to main

* added dynamic github fields to non-ecs file

* Update rules/integrations/github/initial_access_github_actions_workflow_injection_blocked.toml

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

* Update rules/integrations/github/initial_access_github_actions_workflow_injection_blocked.toml

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

* Update rules/integrations/github/initial_access_github_actions_workflow_injection_blocked.toml

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

* changed github actor ID reference

---------

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2025-12-17 14:29:33 -05:00
Samirbous 3726611b93 [Tuning] Top Noisy Rules (#5449)
* [Tuning] Windows BruteForce Rules Tuning

#1 Multiple Logon Failure from the same Source Address: converted to ES|QL and raised the threshold to 100 failed auths, alert quality should be better since it aggregates all failed auths info into one alert vs multiple EQL matches. (expected reduction more than 50%)

#2 Privileged Account Brute Force - coverted to ESQL and set the threshold to 50 in a minute. this should drop noise volume by more than 50%.

* ++

* Update execution_shell_evasion_linux_binary.toml

* Update execution_shell_evasion_linux_binary.toml

* Update defense_evasion_indirect_exec_forfiles.toml

* Update lateral_movement_remote_file_copy_hidden_share.toml

* Update lateral_movement_remote_file_copy_hidden_share.toml

* Update persistence_service_windows_service_winlog.toml

* Update credential_access_lsass_openprocess_api.toml

* Update persistence_suspicious_scheduled_task_runtime.toml

* Update impact_hosts_file_modified.toml

* Update defense_evasion_process_termination_followed_by_deletion.toml

* Update rules/windows/credential_access_lsass_openprocess_api.toml

* Update rules/windows/credential_access_bruteforce_admin_account.toml

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

* Update rules/windows/credential_access_lsass_openprocess_api.toml

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

* Update rules/windows/credential_access_bruteforce_multiple_logon_failure_same_srcip.toml

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

* Update credential_access_lsass_openprocess_api.toml

* Update impact_hosts_file_modified.toml

* Update credential_access_dollar_account_relay.toml

* Update credential_access_new_terms_secretsmanager_getsecretvalue.toml

---------

Co-authored-by: Ruben Groenewoud <78494512+Aegrah@users.noreply.github.com>
2025-12-12 14:28:12 +00:00
Terrance DeJesus cabf1c2a02 [Rule Tuning] Update Azure / M365 Rule Names and File Paths (#5172)
* Tuning azure and m365 rule names and file paths

* addressing unit test failures

* addressing unit test failures

* Changed Frontdoor to Front Door

* removed extra space in name

* adjusted Microsoft 365 to M365 in rule name

* Update rules/integrations/azure/credential_access_storage_account_key_regenerated.toml

* Update rules/integrations/azure/defense_evasion_automation_runbook_deleted.toml

* Update rules/integrations/azure/execution_automation_runbook_created_or_modified.toml

* Update rules/integrations/azure/persistence_automation_account_created.toml

* Update rules/integrations/azure/impact_key_vault_modified_by_unusual_user.toml

* Update rules/integrations/azure/initial_access_entra_id_protection_sign_in_risk_detected.toml

* Update rules/integrations/azure/initial_access_entra_id_protection_user_risk_detected.toml

* Update rules/integrations/azure/persistence_automation_webhook_created.toml

* Update rules/integrations/azure/persistence_entra_id_global_administrator_role_assigned.toml

* Update rules/integrations/azure/persistence_entra_id_mfa_disabled_for_user.toml

* Update rules/integrations/azure/persistence_event_hub_created_or_updated.toml

* Update rules/integrations/o365/collection_onedrive_excessive_file_downloads.toml

* Update rules/integrations/o365/initial_access_defender_for_m365_threat_intelligence_signal.toml

* Update rules/integrations/azure/credential_access_entra_id_signin_brute_force_microsoft_365.toml

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

* Update rules/integrations/azure/credential_access_entra_id_signin_brute_force_microsoft_365.toml

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

* Update rules/integrations/o365/credential_access_entra_id_potential_user_account_brute_force.toml

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

* Update rules/integrations/o365/credential_access_entra_id_potential_user_account_brute_force.toml

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

* fixed additional rule names

* Update rule dates and investigation guide headers

- Set updated_date to 2025/12/10 for all modified rules
- Fix investigation guide headers to match actual rule names
- Ensures compliance with test_rule_change_has_updated_date
- Ensures compliance with test_investigation_guide_uses_rule_name

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* changed kibana alert rule name to rule ID

---------

Co-authored-by: Isai <59296946+imays11@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-10 12:59:50 -05:00
Terrance DeJesus f4085ad873 [Rule Tuning] New GitHub Self Hosted Action Runner (#5436)
Fixes #5435
2025-12-10 10:55:47 -05:00
Jonhnathan 7a54ae33a5 [Rule Tuning] Add Missing Metadata to KEEP conditions (#5442)
* [Rule Tuning] Add Missing Metadata to KEEP conditions

* Add them all

* ++

* date bump

* Update rules_building_block/discovery_ec2_multi_region_describe_instances.toml
2025-12-09 17:05:20 -08:00
Terrance DeJesus b3173ac505 bumping min-stack to 9.0.0 (#5424) 2025-12-08 23:32:59 +05:30
shashank-elastic 58a514340b December Schema Refresh (#5420) 2025-12-08 22:07:46 +05:30
Isai 8c5231ec4e [Rule Tuning] AWS RDS DB Snapshot Shared with Another Account (#5418)
This rule is performing well in telemetry and producing alerts as expected for both explicit external account sharing and making snapshots public. Both scenarios tested.
- updated description, FP and IG
- added highlighted fields
- added `event.type` as `event_category_override` field because `event.category` is not populated for these events.

Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2025-12-08 11:11:36 -05:00
Isai f2d8ab54d7 [Rule Tuning] AWS KMS Customer Managed Key Disabled or Scheduled for Deletion (#5417)
This rule is performing well in telemetry, low volume and expected alerts. No major changes to rule query.
- reduced execution window
- updated description and IG
- added highlighted fields

Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2025-12-08 10:55:03 -05:00
Isai f885b3b70d [Rule Tuning] AWS S3 Bucket Replicated to Another Account (#5405)
AWS S3 Bucket Replicated to Another Account
- updated description and IG
- added `event.type` as `event_category_override` field
- adjusted query to use `info` instead of `any` and added `Account=` instead of `Account` to help reduce chances of capturing unintended requests.
- added highlighted fields

AWS S3 Bucket Policy Added to Share with External Account
- added `event.outcome = success` to query to reduce noise from failed attempts

Co-authored-by: shashank-elastic <91139415+shashank-elastic@users.noreply.github.com>
2025-12-08 10:43:39 -05:00
Isai 9793d90193 [Rule Tunings] AWS Multiple API Calls ESQL rules (#5238)
* [Rule Tunings] AWS Multiple API Calls rules

AWS EC2 Multi-Region DescribeInstances API Calls
Over 2,000 alerts in the last 24 hours. This is a very noisy rule, by design it is alerting on quite normal behavior. There is not much in-the-wild threat behavior that justifies keeping this rule as a standalone alert. As a threat indicator, this is best used as a hunting rule or in correlation with another rule, for example: (GetCallerIdentity new terms + multi region DescribeInstances by same principal)  or (Multiple Discovery API calls + multi region DescribeInstances by same principal) or (multi region DescribeInstances + snapshot/AMI activity by same principal). However, on its own it’s not adding much value over the noise.
- I’m keeping this as ESQL rule but converting it to a BBR
- keeping more fields for further context
- Changing investigation guide to be more relevant for hunting/correlation rule

AWS Discovery API Calls via CLI from a Single Resource
This rule is alerting as expected with low telemetry. It has to remain an ESQL rule as no other rule types can truncate the time window to 10 sec looking for a threshold of unique API calls coming from a single user.
- Keeping as ESQL rule
- Reduced execution window
- Keeping more fields for further context
- Adding highlighted fields
- Updated Investigation guide

* adding highlighted fields to keep parameter

* Apply suggestions from code review

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

* Apply suggestion from @imays11

---------

Co-authored-by: Mika Ayenson, PhD <Mikaayenson@users.noreply.github.com>
Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
Co-authored-by: Terrance DeJesus <99630311+terrancedejesus@users.noreply.github.com>
2025-12-08 10:31:09 -05:00
Isai 97583418f4 [Rule Tuning] AWS STS AssumeRoot by Rare User and Member Account (#5398)
This rule is performing as expected in telemetry, low volume rare behavior. No query changes needed.
- increased the severity and risk score
- reduced execution window
- reduced lookback window for new terms
- updated description and investigation guide
- slight edits to highlighted fields
2025-12-05 12:58:01 -05:00
Isai b3d7804a00 [Rule Tuning] AWS S3 Object Encryption Using External KMS Key (#5399)
Rule is alerting as expected, with low telemetry volume. Updates to rule query are to provide more alert context as an ESQL rule.
- reduced execution window
- added additional fields for more alert context, include customer-requested `data_stream.namespace` field
- added highlighted fields
- updated description and investigation guide
2025-12-05 12:04:23 -05:00
Isai 3bfbafe583 [Rule Tuning] AWS Access Token Used from Multiple Addresses (#5412)
* [Rule Tuning] AWS Access Token Used from Multiple Addresses

This rule is extremely loud in telemetry ~2612 alerts in last 24 hours. There have also been a couple community requests for changes.
- reduced the scope of the alerts to only surface the "high" fidelity_score cases for `"multiple_ip_network_city"` or `"multiple_ip_network_city_user_agent"` criteria. This reduced telemetry by ~90%
- excluded 2 more benign service providers `support` which reduced volume by another 6%.
- added the `data_stream.namespace` field as requested.
- kept the rest of the rule logic visible so that if customers would like to broaden the scope of this rule again, they can duplicate the rules and revert back to the broader condition `Esql.activity_type != "normal_activity"`. This has been included as a comment in the rule query.

I will keep an eye on this rule in telemetry to determine it's value moving forward.

* nit IG format changes
2025-12-05 11:48:22 -05:00
Ruben Groenewoud 612928b34c [Rule Tuning] Potential Persistence via File Modification (#5404) 2025-12-05 10:32:58 +01:00