T1098.001 IBM QRadar · QRadar

Detect Additional Cloud Credentials in IBM QRadar

Adversaries may add adversary-controlled credentials to a cloud account to maintain persistent access to victim accounts and instances within the environment. This includes adding credentials to Azure/Entra ID Service Principals and Applications (x509 keys and passwords), generating or importing SSH keys in AWS/GCP, creating AWS IAM access keys or login profiles, and adding app passwords to Entra ID user accounts to bypass MFA. These techniques allow persistent access even if the original compromised credentials are rotated.

MITRE ATT&CK

Tactic
Persistence Privilege Escalation
Technique
T1098 Account Manipulation
Sub-technique
T1098.001 Additional Cloud Credentials
Canonical reference
https://attack.mitre.org/techniques/T1098/001/

QRadar Detection Query

IBM QRadar (QRadar)
sql
SELECT
  DATEFORMAT(starttime, 'yyyy-MM-dd HH:mm:ss') AS EventTime,
  QIDNAME(qid)                                  AS OperationName,
  username                                       AS InitiatingUPN,
  sourceip                                       AS InitiatingIPAddress,
  "TargetObjectName"                             AS TargetResource,
  "TargetObjectType"                             AS TargetType,
  "Result"                                       AS Result,
  LOGSOURCENAME(logsourceid)                     AS LogSource,
  CATEGORYNAME(highlevelcategory)                AS HighLevelCategory,
  magnitude,
  CASE
    WHEN LOWER(QIDNAME(qid)) LIKE '%certificate%' OR LOWER(QIDNAME(qid)) LIKE '%secret%' THEN 'Certificate_or_Secret'
    WHEN LOWER(QIDNAME(qid)) LIKE '%password%'    THEN 'AppPassword'
    WHEN LOWER(QIDNAME(qid)) LIKE '%credentials%' THEN 'ServicePrincipalCredential'
    ELSE 'Other'
  END AS CredentialType,
  CASE
    WHEN QIDNAME(qid) = 'Create application password for user' THEN 'MFA_Bypass_Risk'
    WHEN QIDNAME(qid) = 'Add service principal credentials'    THEN 'SP_Credential_Add'
    WHEN QIDNAME(qid) = 'Add owner to application'            THEN 'Ownership_Change'
    ELSE 'Low'
  END AS IsHighRisk
FROM events
WHERE
  LOGSOURCETYPEID(logsourceid) IN (
    430,   -- Microsoft Azure Active Directory (verify ID in your deployment)
    520,   -- Microsoft Office 365 (verify ID in your deployment)
    540    -- Microsoft Azure Monitor (verify ID in your deployment)
  )
  AND (
    LOWER(QIDNAME(qid)) LIKE '%service principal credentials%'
    OR LOWER(QIDNAME(qid)) LIKE '%certificates and secrets%'
    OR LOWER(QIDNAME(qid)) LIKE '%application password%'
    OR LOWER(QIDNAME(qid)) LIKE '%app role assignment%'
    OR LOWER(QIDNAME(qid)) LIKE '%owner to application%'
    OR LOWER(QIDNAME(qid)) LIKE '%update service principal%'
    OR LOWER(QIDNAME(qid)) LIKE '%add application%'
  )
  AND (
    "Result" = 'success'
    OR "Result" IS NULL
    OR "Result" = ''
  )
  AND starttime > NOW() - 86400000
ORDER BY starttime DESC
LIMIT 1000
high severity medium confidence

Detects Azure/Entra ID service principal and application credential additions by querying the QRadar events table filtered to Microsoft Azure Active Directory and Office 365 log sources. Uses QIDNAME matching against Azure AD DSM-mapped operation names covering service principal credential additions, certificate and secret management, application ownership changes, and app password creation. LOGSOURCETYPEID values must be verified against the specific QRadar deployment's DSM configuration. Risk classification is applied inline via CASE expressions.

Data Sources

Microsoft Azure Active Directory DSMMicrosoft Office 365 DSMMicrosoft Azure Monitor DSM

Required Tables

events

False Positives & Tuning

  • Automated infrastructure-as-code tooling (Terraform, Pulumi, Ansible) that provisions Azure resources and creates service principal credentials as part of normal deployment pipelines
  • Scheduled credential rotation jobs run by platform engineering teams that reset service principal certificates or secrets on a defined cadence
  • Vendor-managed SaaS applications that auto-rotate their own Azure AD application credentials and trigger audit events on their scheduled rotation cycles
Download portable Sigma rule (.yml)

Other platforms for T1098.001


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Add Client Secret to Entra ID Application via Azure CLI

    Expected signal: Entra ID Audit Logs: OperationName='Update application – Certificates and secrets management' or 'Add service principal credentials' with Result=success. InitiatedBy will show the authenticated CLI user. TargetResources will contain the application object ID and display name. ModifiedProperties will include the new credential's KeyId, StartDate, EndDate, and CustomKeyIdentifier.

  2. Test 2Create AWS IAM Access Key for Existing User via AWS CLI

    Expected signal: AWS CloudTrail: EventName='CreateAccessKey' with requestParameters.userName=<TARGET_USERNAME>, responseElements.accessKey.accessKeyId=<NEW_KEY_ID>, responseElements.accessKey.status='Active'. UserIdentity section shows the requesting account. EventSource=iam.amazonaws.com.

  3. Test 3Add Certificate Credential to Entra ID Service Principal via PowerShell

    Expected signal: Entra ID Audit Logs: OperationName='Add service principal credentials' with Result=success. ModifiedProperties will contain KeyCredentials with Type=AsymmetricX509Cert, Usage=Verify, and the certificate's StartDate/EndDate. PowerShell ScriptBlock Logging (Event ID 4104) will capture the New-AzADSpCredential command. Sysmon Event ID 1 will show powershell.exe execution.

  4. Test 4Create Entra ID App Password for MFA Bypass via Microsoft Graph API

    Expected signal: Entra ID Audit Logs: OperationName='Create application password for user' with Result=success. InitiatedBy will show the authenticated Graph API caller. TargetResources will contain the target user's UPN and object ID. Microsoft Defender for Cloud Apps may also generate an alert for unusual MFA modification activity.

Unlock Pro Content

Get the full detection package for T1098.001 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections