Hybrid Identity
Adversaries may patch or backdoor cloud authentication processes tied to on-premises identities to bypass authentication, access credentials, and enable persistent access. Methods include: injecting a malicious DLL (PTASpy via AADInternals) into the AzureADConnectAuthenticationAgentService to authorize all authentication attempts and record credentials; modifying Microsoft.IdentityServer.Servicehost.exe.config (ADFS) to load a malicious DLL generating tokens for any user (APT29 MagicWeb); and registering a new PTA agent via the web console. Detection requires monitoring of Azure AD Connect processes, ADFS configuration files, and PTA agent registrations.
let PTAAgentEvents = AuditLogs
| where TimeGenerated > ago(24h)
| where OperationName has_any (
"Add agent to application",
"Register connector",
"Agent health status",
"Pass-through authentication agent"
)
| extend Actor = tostring(InitiatedBy.user.userPrincipalName)
| project TimeGenerated, OperationName, Actor, Result, ResultDescription;
let ADFSServiceEvents = DeviceFileEvents
| where Timestamp > ago(24h)
| where FolderPath has_any (
@"\ADFS\", @"\Microsoft.IdentityServer",
@"\AzureADConnectAuthenticationAgentService"
)
| where ActionType in ("FileCreated", "FileModified")
| where FileName endswith ".dll" or FileName endswith ".config" or FileName endswith ".exe"
| project Timestamp, DeviceName, FolderPath, FileName, ActionType,
InitiatingProcessFileName, InitiatingProcessCommandLine, SHA256;
let AzureADConnectProcess = DeviceProcessEvents
| where Timestamp > ago(24h)
| where InitiatingProcessFileName =~ "AzureADConnectAuthenticationAgentService.exe"
or FileName =~ "AzureADConnectAuthenticationAgentService.exe"
| where ProcessCommandLine has_any ("inject", "dll", "-", "PTASpy")
or InitiatingProcessFileName !in~ ("services.exe", "svchost.exe")
| project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine, InitiatingProcessFileName;
union PTAAgentEvents, ADFSServiceEvents, AzureADConnectProcess
| sort by TimeGenerated desc, Timestamp desc Data Sources
Required Tables
False Positives
- Authorized Azure AD Connect upgrades that modify PTA agent binaries and configuration files
- Legitimate new PTA agent registration during Azure AD Connect scale-out deployments
- ADFS server updates or patches that modify Microsoft.IdentityServer binaries
- Configuration management tools (Ansible, DSC) deploying authorized ADFS configuration changes
References (6)
- https://attack.mitre.org/techniques/T1556/007/
- https://www.microsoft.com/security/blog/2022/08/24/magicweb-nobeliums-post-compromise-trick-to-authenticate-as-anyone/
- https://blog.xpnsec.com/azuread-connect-for-redteam/
- https://o365blog.com/post/on-prem_admin/
- https://www.mandiant.com/resources/detecting-microsoft-365-azure-active-directory-backdoors
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1556.007/T1556.007.md
Unlock Pro Content
Get the full detection package for T1556.007 including response playbook, investigation guide, and atomic red team tests.