Skip to content

[Rule Tuning] O365 Exchange Suspicious Mailbox Right Delegation #4589

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 2, 2025

Conversation

w0rk3r
Copy link
Contributor

@w0rk3r w0rk3r commented Apr 1, 2025

Summary

As per SDH 564 (and confirmed via telemetry), this fixes the case difference that makes the exception invalid.

Copy link
Contributor

github-actions bot commented Apr 1, 2025

Rule: Tuning - Guidelines

These guidelines serve as a reminder set of considerations when tuning an existing rule.

Documentation and Context

  • Detailed description of the suggested changes.
  • Provide example JSON data or screenshots.
  • Provide evidence of reducing benign events mistakenly identified as threats (False Positives).
  • Provide evidence of enhancing detection of true threats that were previously missed (False Negatives).
  • Provide evidence of optimizing resource consumption and execution time of detection rules (Performance).
  • Provide evidence of specific environment factors influencing customized rule tuning (Contextual Tuning).
  • Provide evidence of improvements made by modifying sensitivity by changing alert triggering thresholds (Threshold Adjustments).
  • Provide evidence of refining rules to better detect deviations from typical behavior (Behavioral Tuning).
  • Provide evidence of improvements of adjusting rules based on time-based patterns (Temporal Tuning).
  • Provide reasoning of adjusting priority or severity levels of alerts (Severity Tuning).
  • Provide evidence of improving quality integrity of our data used by detection rules (Data Quality).
  • Ensure the tuning includes necessary updates to the release documentation and versioning.

Rule Metadata Checks

  • updated_date matches the date of tuning PR merged.
  • min_stack_version should support the widest stack versions.
  • name and description should be descriptive and not include typos.
  • query should be inclusive, not overly exclusive. Review to ensure the original intent of the rule is maintained.

Testing and Validation

  • Validate that the tuned rule's performance is satisfactory and does not negatively impact the stack.
  • Ensure that the tuned rule has a low false positive rate.

Copy link
Contributor

@eric-forte-elastic eric-forte-elastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 👍 Microsoft Q&A for reference that explain the Mailbox behavior with this user ID. No other rules appear to use this ID.

@w0rk3r w0rk3r merged commit e7806fc into main Apr 2, 2025
31 checks passed
@w0rk3r w0rk3r deleted the rt_o365 branch April 2, 2025 12:52
r0ot added a commit to VigilantSec/detection-rules that referenced this pull request Apr 16, 2025
* Temporaily Disable Changed FIles Workflow (elastic#4538)

* Temporaily Disable Changed FIles Workflow

* bump version

* Add new ML detection rules for Privileged Access Detection (elastic#4516)

Add detection-rules for privileged access detection integration

* Revert "Add new ML detection rules for Privileged Access Detection (elastic#4516)" (elastic#4548)

This reverts commit 2ff8d1b.

* Min stack rules from 4516 (elastic#4549)

* Update defense_evasion_posh_assembly_load.toml (elastic#4543)

Co-authored-by: Jonhnathan <[email protected]>

* Change description and name of problemchild ML detection-rules (elastic#4545)

Changed description and name of problemchild ML detection-rules

* Prep for Release 9.0 (elastic#4550)

* [ci] Add new docs-builder automation. (elastic#4507)

* Add new docs automation

* Add path-pattern filters for documentation folders

* Update .github/workflows/docs-build.yml

Co-authored-by: Jan Calanog <[email protected]>

---------

Co-authored-by: Mika Ayenson, PhD <[email protected]>
Co-authored-by: Terrance DeJesus <[email protected]>
Co-authored-by: Jan Calanog <[email protected]>
Co-authored-by: Sergey Polzunov <[email protected]>

* [FR] Bump changed-files Version to Patched Version (elastic#4542)

* Bump changed-files Version to Patched Version

* patch bump

* reenable workflow

* Use full length commit hash

* Bump 44 to 46

---------

Co-authored-by: shashank-elastic <[email protected]>

* [New Rule] Adding Coverage for DynamoDB Exfiltration Behaviors (elastic#4535)

* new rules for AWS DynamoDB data exfiltration

* bumping patch version

* adjusting investigation guide

* updating patch version

* updating patch version

* updating patch version

---------

Co-authored-by: Colson Wilhoit <[email protected]>

* fix: removing outdated code in Kibana client auth (elastic#4495)

* Simplify kibana session management

* Drop removed options from `kibana_args` set

* Style fix

* Patch version bump

* Bumping kibana lib version

* Relax CLI requirement, making `api_key` optional, to allow `help` to run

* Create new detection rule set documentation to be included in the new docs. (elastic#4508)

* move docs folder to docs-dev

* Add new docs folder

* update docset.yml to reflect latest usage

* Add rules_building_block folder

* revert changes to docs-dev/experimental-machine-learning/url-spoof.md

* bump patch versions

* revert bump

---------

Co-authored-by: Mika Ayenson, PhD <[email protected]>
Co-authored-by: Terrance DeJesus <[email protected]>

* fixing double header in investigation notes (elastic#4490)

* [Bug] Update Custom Rules Markdown Location (elastic#4565)

* Update to custom-rules markdown location

* bump version

* Update link reference

* Prep main for 9.1 (elastic#4555)

* Prep for Release 9.1

* Update Patch Version

* Update Patch version

* Update Patch version

* [Rule Tuning] Added OWA (outlook for web) new AppID (elastic#4568)

* Added OWA (outlook for web) new AppID

**Title:** Add new Outlook for Web AppID to abnormal Microsoft 365 ClientAppID rule

**Description:**

This pull request updates the `initial_access_microsoft_365_abnormal_clientappid` rule to include the newly introduced Outlook for Web AppID:
- **New AppID**: `9199bf20-a13f-4107-85dc-02114787ef48`

### Context

Outlook for Web (OWA) is migrating to a new authentication platform using MSAL and a Single Page Application (SPA) auth model. As part of this backend change, Microsoft is replacing the existing OWA AppID with a new one. This change is being rolled out during the first half of calendar year 2024, with full deployment expected by Q4 2024.
- **Old OWA AppID**: `00000002-0000-0ff1-ce00-000000000000`
- **New OWA AppID**: `9199bf20-a13f-4107-85dc-02114787ef48`
    

Although no action is required for tenant administrators, this new AppID may show up in logs and should be accounted for in detections relying on known legitimate ClientAppIDs.

### Why this change?

The rule `initial_access_microsoft_365_abnormal_clientappid` flags potentially suspicious or unauthorized client applications accessing Microsoft 365 services. To prevent false positives caused by this official change from Microsoft, this PR adds the new OWA AppID to the allowlist.

### References
- Microsoft 365 Message Center notice (ref: MC715025)
- [MSAL documentation](https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-overview)

* Update initial_access_microsoft_365_abnormal_clientappid.toml

Updated updated_date

* Update Max signals value to supported limits (elastic#4556)

* Update ATT&CK coverage URL(s) in docs-dev/ATT&CK-coverage.md (elastic#4571)

* deprecating 'Azure Virtual Network Device Modified or Deleted' (elastic#4559)

* tuning 'Azure Conditional Access Policy Modified' (elastic#4558)

* [Rule Tuning] Tuning Illicit Grant Consent Detections in Azure and M365 (elastic#4557)

* tuning Azure rule for illicit grant activity; creating new rule for M365

* Update rules/integrations/o365/initial_access_microsoft_365_illicit_consent_grant_via_registered_application.toml

* Update rules/integrations/azure/initial_access_entra_illicit_consent_grant_via_registered_application.toml

* adjusted tags

* Update rules/integrations/azure/initial_access_entra_illicit_consent_grant_via_registered_application.toml

* Update defense_evasion_microsoft_defender_tampering.toml (elastic#4573)

Co-authored-by: Jonhnathan <[email protected]>

* [Rule Tuning] O365 Exchange Suspicious Mailbox Right Delegation (elastic#4589)

* Update docset.yml (elastic#4590)

Remove diagnostic hint

* [New] Unusual Network Connection to Suspicious Web Service (elastic#4569)

* [New] Unusual Network Connection to Suspicious Web Service

* Update rule threat order

---------

Co-authored-by: Eric Forte <[email protected]>
Co-authored-by: eric-forte-elastic <[email protected]>
Co-authored-by: Mika Ayenson, PhD <[email protected]>

* [New] Unusual Network Connection to Suspicious Top Level Domain (elastic#4563)

* [Rule Tuning] Add Host Metadata to ES|QL Aggregation Rules (elastic#4592)

Co-authored-by: Mika Ayenson, PhD <[email protected]>

* Add investigation guides (elastic#4600)

* [Rule Tuning] Suspicious Execution via Scheduled Task (elastic#4599)

* Lock versions for releases: 8.14,8.15,8.16,8.17,8.18,9.0 (elastic#4601)

* [FN Tuning] Shared Object Created or Changed by Previously Unknown Pr… (elastic#4529)

* [FN Tuning] Shared Object Created or Changed by Previously Unknown Process

* Update process exclusions in TOML file

---------

Co-authored-by: Colson Wilhoit <[email protected]>
Co-authored-by: shashank-elastic <[email protected]>
Co-authored-by: Terrance DeJesus <[email protected]>
Co-authored-by: Eric Forte <[email protected]>

* [D4C Conversion] Converting Compatible D4C Rules to DR (elastic#4532)

* [D4C Conversion] Converting Compatible D4C Rules to DR

* added host.os.type

* Rename

* Update rules/linux/execution_container_management_binary_launched_inside_container.toml

Co-authored-by: Isai <[email protected]>

* Update rules/linux/privilege_escalation_debugfs_launched_inside_container.toml

Co-authored-by: Isai <[email protected]>

* Update rules/linux/privilege_escalation_debugfs_launched_inside_container.toml

Co-authored-by: Isai <[email protected]>

* Update rules/linux/privilege_escalation_mount_launched_inside_container.toml

Co-authored-by: Isai <[email protected]>

* Update rules/linux/privilege_escalation_mount_launched_inside_container.toml

Co-authored-by: Isai <[email protected]>

---------

Co-authored-by: Isai <[email protected]>
Co-authored-by: shashank-elastic <[email protected]>
Co-authored-by: Terrance DeJesus <[email protected]>
Co-authored-by: Mika Ayenson, PhD <[email protected]>

* Remove Task List reference (elastic#4605)

* [FR] Update Detection Rules MITRE Workflow to SHA Pin  (elastic#4581)

* Update to pinned hash

* version bump

* [FR] Add Kibana Action Connector Error to Exception List Workaround (elastic#4583)

* Add error catch for workaround

* Switch to set for efficiency

* Patch version bump

---------

Co-authored-by: Mika Ayenson, PhD <[email protected]>

* [Rule Tuning] SSH Authorized Keys File Deletion (elastic#4591)

Co-authored-by: Mika Ayenson, PhD <[email protected]>

* [Rule Tuning] Suspicious WMI Event Subscription Created (elastic#4618)

* [Rule Tuning] Suspicious Execution via Scheduled Task

* [Rule Tuning] Suspicious WMI Event Subscription Created

* [Rule Tuning] Adjusting `Microsoft Entra ID Rare Authentication Requirement for Principal User` (elastic#4562)

* tuning 'Microsoft Entra ID Rare Authentication Requirement for Principal User'

* updated MITRE ATT&CK mappings

* updated index target

* updated patch version

* updating patch version

* bumping patch version

* updating patch version

* [Rule Tuning] Tuning `Azure Service Principal Credentials Added` (elastic#4570)

* tuning 'Azure Service Principal Credentials Added'

* updated patch version

* added investigation guide

* updating patch version

* updating patch version

* [FR] Add Support for Local Dates Flag (elastic#4582)

* Add support for local dates flag

* Use two variables

* Add support for import-rules-to-repo

* Revert arg formatting

* Update comment

* Pass Rule Path as Path Object

* Update to rule loader function

* Streamline metadata function

* Also support dictionaries

* Bump patch version

* Reduce complexity

* Add if path exists check

* Fix version bump

* Feature exclude tactic name (elastic#4593)

* Added new cli flag to exclude tactic name in rule file name

* added a shortcut for the flag and adjusted CLI readme

* Add no tactic flag also to import to prevent warnings

* Added info about unit test

* version bump

* Added no_tactic_filename as config option + fixed linting

* pyproject version bump

---------

Co-authored-by: Mika Ayenson, PhD <[email protected]>
Co-authored-by: Eric Forte <[email protected]>

---------

Co-authored-by: Eric Forte <[email protected]>
Co-authored-by: Kirti Sodhi <[email protected]>
Co-authored-by: Samirbous <[email protected]>
Co-authored-by: Jonhnathan <[email protected]>
Co-authored-by: shashank-elastic <[email protected]>
Co-authored-by: Martijn Laarman <[email protected]>
Co-authored-by: Mika Ayenson, PhD <[email protected]>
Co-authored-by: Terrance DeJesus <[email protected]>
Co-authored-by: Jan Calanog <[email protected]>
Co-authored-by: Sergey Polzunov <[email protected]>
Co-authored-by: Colson Wilhoit <[email protected]>
Co-authored-by: M. Visser <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: eric-forte-elastic <[email protected]>
Co-authored-by: Ruben Groenewoud <[email protected]>
Co-authored-by: Isai <[email protected]>
Co-authored-by: Frederik Berg <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants