Detection rules › Sigma

Azure Login Bypassing Conditional Access Policies

Status
experimental
Severity
high
Log source
product m365, service audit
Author
Josh Nickels, Marius Rothenbücher
Source
github.com/SigmaHQ/sigma

Detects a successful login to the Microsoft Intune Company Portal which could allow bypassing Conditional Access Policies and InTune device trust using a tool like TokenSmith.

MITRE ATT&CK coverage

TacticTechniques
Initial Access
Persistence
Privilege Escalation
Stealth

Telemetry coverage

PlatformRecord / event type
Microsoft 365UserLoggedIn

Rules detecting the same action

These rules filter on the same operation.

Rule body

title: Azure Login Bypassing Conditional Access Policies
id: 13f2d3f5-6497-44a7-bf5f-dc13ffafe5dc
status: experimental
description: |
    Detects a successful login to the Microsoft Intune Company Portal which could allow bypassing Conditional Access Policies and InTune device trust using a tool like TokenSmith.
author: Josh Nickels, Marius Rothenbücher
references:
    - https://labs.jumpsec.com/tokensmith-bypassing-intune-compliant-device-conditional-access/
    - https://github.com/JumpsecLabs/TokenSmith
date: 2025-01-08
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.initial-access
    - attack.stealth
    - attack.t1078
logsource:
    service: audit
    product: m365
detection:
    selection:
        Operation: 'UserLoggedIn'
        ApplicationId: '9ba1a5c7-f17a-4de9-a1f1-6178c8d51223'
        ResultStatus: 'Success'
        RequestType: 'Cmsi:Cmsi'
    filter_main_bjectid:
        ObjectId: '0000000a-0000-0000-c000-000000000000' # Microsoft Intune seen when mobile devices are enrolled
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    Operation: 'UserLoggedIn'
    ApplicationId: '9ba1a5c7-f17a-4de9-a1f1-6178c8d51223'
    ResultStatus: 'Success'
    RequestType: 'Cmsi:Cmsi'

Stage 2: not filter_main_bjectid

filter_main_bjectid:
    ObjectId: '0000000a-0000-0000-c000-000000000000'

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ObjectIdeq0000000a-0000-0000-c000-000000000000excludes:ObjectId field:"ObjectId" value:"0000000a-0000-0000-c000-000000000000"

Indicators

These rows show field, operator, and value matches.