具有凭据的第一方服务主体

High

描述

第一方服务主体(企业应用程序)来自 Microsoft 的应用程序(应用程序注册)。他们中的大多数在 Microsoft Entra ID 中拥有一些在安全检查过程中经常被忽略的敏感权限。攻击者可以借此向这些主体添加凭据,以隐蔽的方式利用主体的特权获益。

因为拥有应用程序管理员角色的主体可以将凭据添加至应用程序(包括拥有更高特权的应用程序),所以这项技术提供持久性​能力和特权提升​。

除极少数情况(参阅“建议”)外,第一方服务主体不应该拥有任何凭据。

APT29 威胁组织在 2020 年 12 月滥用这种方法对 SolarWinds 发起了臭名昭著的“Solorigate”攻击,MicrosoftMandiant 对此均有记录。

解决方案

首先评估​观察到的凭据的合法性。如果这些凭据与以下服务主体之一相关联,则可以认为这些凭据是合法的:Exchange Online/Skype for Business/AAD Password Protection Proxy。

在您怀疑凭据不合法的其他情况下:

  • 因为这可能是攻击的信号,所以应进行取证调查​。目标是确定未经证实的攻击是否属实,找出攻击者和攻击时间,并查明潜在入侵的程度。
  • 审查审计日志​以识别添加凭据的时间,并查明这些凭据是否正在或已经被使用。
  • 过期凭据尽管已经不再使用,但是因为有可能曾被威胁制造者用于攻击,所以您也需要检查过期凭据。

与附加在应用程序中的凭据不同,您无法使用 Azure 门户列出服务主体凭据。使用以下来自 AzureAD PowerShell 模块的 cmdlet 来列出服务主体凭据:

  • 对于密钥凭据:Get-AzureADServicePrincipalKeyCredential
  • 对于密码凭据:Get-AzureADServicePrincipalPasswordCredential

如要删除这些凭据,请使用:

  • 对于密钥凭据:Remove-AzureADServicePrincipalKeyCredential
  • 对于密码凭据:Remove-AzureADServicePrincipalPasswordCredential

指标详细信息

名称: 具有凭据的第一方服务主体

代码名称: FIRST-PARTY-SERVICE-PRINCIPAL-WITH-CREDENTIALS

严重程度: High

MITRE ATT&CK 信息:

技术: T1098.001

More: Azure AD privilege escalation - Taking over default application permissions as Application Admin