[New Rule] Entra ID Named Location Modified - #6691
Open
descambiado wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a detection for the creation, modification, or deletion of a Conditional Access named location in Entra ID.
Named locations define the trusted or excluded IP ranges and countries that Conditional Access policies evaluate as a condition. An attacker with Conditional Access Administrator or Global Administrator privileges can widen a trusted IP range to include an attacker-controlled address, or remove a country restriction, without touching the Conditional Access policy object itself. Existing policies stay enabled and visible in monitoring dashboards, so alerts that watch for policy state changes do not fire.
Checked the existing ruleset first: the only Conditional Access rule currently in the repo (
Entra ID Conditional Access Policy (CAP) Modified) only fires onevent.action: "Update conditional access policy", never on a named location change. This is a distinct, unobserved path to the same outcome.Validation
Detection logic and the investigation guide are derived from audit events generated and captured in a live Entra ID tenant (Microsoft Entra ID P2 trial), not from documentation.
Ran all three operations end to end: created, updated, and deleted a named IP-range location, using RFC 5737 documentation ranges (
203.0.113.0/24,198.51.100.0/24), not real infrastructure.All three operations logged as
Category: Policy, actor attribution correct viainitiated_by, and themodifiedPropertiesshape forNamedLocationmatches this rule's assumptions.One operational note worth carrying over from testing: audit log ingestion latency was on the order of minutes, not instant, consistent with what I observed while validating the two rules already merged in #6168.
Checks:
T1562.001rule_idverified unique against the repositoryseverity/risk_scoreset to medium/47, matching the closest comparable Conditional Access rule already in the rulesetWhat I did not verify
detection_rules validate-rulelocally (same missing toolchain dependency noted in [New Rule] Entra ID Admin Registered MFA Method for User #6680), so this has only been checked by hand and by parsing. CI will be the first real run.Notes
Happy to adjust severity or fold this into the existing Conditional Access policy rule instead if you'd rather see it as one broader rule than two narrow ones.