CTIPilot
AI-generated · no human review · verify critical claims against the linked source. how it works →

Microsoft Azure

product · product:microsoft-azure single-source

Coverage
3
first 2026-09-28 → last 2026-11-09
Latest activity
2026-11-09
GTIG: stolen cloud keys enable Bedrock and Gemini model services, then resell the quota; hunt the…
Peak priority
high
1 high · 2 notable
Targets
finance
sectors: finance, retail, technology
Sources cited
6
5 hosts

Action items (2)

Do-now tasks recorded on the entries about Microsoft Azure, newest first. Check the date before acting on an older one.

  • In every Entra tenant you run or manage for others, list the app registrations that hold client secrets, starting with multitenant, delegated-admin (GDAP) and Partner Center apps, security-tool integration apps and Azure DevOps service connections, and search the service-principal and non-interactive sign-in logs for the invalid-secret or expired-secret errors AADSTS7000215 and AADSTS7000222 followed by a success for the same app; on any hit remove all client secrets, certificates and federated credentials on that app, including ones you did not add, disable its service principal if needed and rotate everything stored in any Key Vault it could read, because issued tokens stay valid until they expire.
    2026-11-06Entra app-credential abuse: agents hunt GitHub for…
  • Revoke or rotate every Azure service-principal client secret, storage key or connection string that has ever appeared in a public GitHub issue, PR, commit or gist, including ones since edited or deleted, and investigate each credential's historical use, as Microsoft advises.
    2026-09-28Microsoft ties JADEPUFFER's cloud operations to two…

Defender insights

What each entry about Microsoft Azure tells a defender to do, newest first.

2026-11-09NOTABLEGTIG: stolen cloud keys enable Bedrock and Gemini model services, then resell the quota; hunt the control-plane logs

Exposure · triage · detection

2026-11-06HIGHEntra app-credential abuse: agents hunt GitHub for secrets, an operator reaches MSP clients, government among them

Exposure · triage · detection

2026-09-28NOTABLEMicrosoft ties JADEPUFFER's cloud operations to two Azure service principals: one enumerated a tenant for 15+ hours, the other destroyed resources in minutes

Triage · detection

Story timeline

  1. 2026-11-09LLMjacking: stolen cloud identities and keys enable managed model services in victim accounts and resell the quota through proxy gateways (GTIG and Mandiant), with control-plane hunting guidance for AWS, Azure and Google Cloud
    active-threatsGTIG: stolen cloud keys enable Bedrock and Gemini model services, then resell the quota; hunt the control-plane logs
  2. 2026-11-06Exposed application credentials: Microsoft sees an agentic framework search GitHub for OAuth and cloud application secrets and then sign in as the applications from 2026-10-28, and Todyl sees an operator use MSP applications to reach 27 organisations, government clients among them
    active-threatsEntra app-credential abuse: agents hunt GitHub for secrets, an operator reaches MSP clients, government among them
  3. 2026-09-28Storm-3168 (JADEPUFFER): compromised Azure service principals enumerate a tenant for hours, then an automated burst destroys storage, Key Vault and app resources in about seven minutes
    active-threatsMicrosoft ties JADEPUFFER's cloud operations to two Azure service principals: one enumerated a tenant for 15+ hours, the other destroyed resources in minutes

Hunting pivots

Releases covered
Microsoft Azure ×3
ATT&CK techniques (25 across 12 tactics)

25 techniques observed across 3 entries about this entity, derived from entry metadata and body evidence, never asserted without a published entry behind it · pinned to MITRE ATT&CK v20.1 · compare on the matrix · Navigator layer (JSON)

  • ReconnaissanceSearch Open Websites/Domains: Code Repositories
  • Resource DevelopmentAcquire Infrastructure: Malvertising
  • Initial AccessValid Accounts: Cloud Accounts · Exploit Public-Facing Application · Trusted Relationship · Phishing
  • ExecutionCloud Administration Command
  • PersistenceValid Accounts: Cloud Accounts · Account Manipulation: Additional Cloud Credentials · Account Manipulation: Additional Cloud Roles · Account Manipulation: SSH Authorized Keys · Create Account: Cloud Account
  • Privilege EscalationValid Accounts: Cloud Accounts · Account Manipulation: Additional Cloud Credentials · Account Manipulation: Additional Cloud Roles · Account Manipulation: SSH Authorized Keys · Abuse Elevation Control Mechanism: Temporary Elevated Cloud Access
  • StealthValid Accounts: Cloud Accounts
  • Credential AccessSteal Application Access Token · Unsecured Credentials: Credentials In Files · Credentials from Password Stores: Cloud Secrets Management Stores
  • DiscoveryCloud Service Discovery · Cloud Infrastructure Discovery
  • Lateral MovementUse Alternate Authentication Material: Application Access Token
  • CollectionEmail Collection: Remote Email Collection · Data from Information Repositories: Sharepoint · Data from Information Repositories: Code Repositories · Data from Cloud Storage
  • ImpactData Destruction · Inhibit System Recovery · Resource Hijacking: Cloud Service Hijacking

Reconnaissance TA0043

T1593.003Search Open Websites/Domains: Code Repositories×1

Adversaries may search public code repositories for information about victims that can be used during targeting. Victims may store code in repositories on various third-party websites such as GitHub, GitLab, SourceForge, and BitBucket. Users typically interact with code repositories through a web application or command-line utilities such as git.

Evidence: 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

Resource Development TA0042

T1583.008Acquire Infrastructure: Malvertising×1

Adversaries may purchase online advertisements that can be abused to distribute malware to victims. Ads can be purchased to plant as well as favorably position artifacts in specific locations online, such as prominently placed within search engine results. These ads may make it more difficult for users to distinguish between actual search results and advertisements. Purchased ads may also target specific audiences using the advertising network’s capabilities, potentially further taking advantage of the trust inherently given to search engines and popular websites.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

Initial Access TA0001

T1078.004Valid Accounts: Cloud Accounts×3

Valid accounts in cloud environments may allow adversaries to perform actions to achieve Initial Access, Persistence, Privilege Escalation, or Defense Evasion. Cloud accounts are those created and configured by an organization for use by users, remote support, services, or for administration of resources within a cloud service provider or SaaS application. Cloud Accounts can exist solely in the cloud; alternatively, they may be hybrid-joined between on-premises systems and the cloud through syncing or federation with other identity sources such as Windows Active Directory.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1190Exploit Public-Facing Application×1

Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network. The weakness in the system can be a software bug, a temporary glitch, or a misconfiguration.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1199Trusted Relationship×1

Adversaries may breach or otherwise leverage organizations who have access to intended victims. Access through trusted third party relationship abuses an existing connection that may not be protected or receives less scrutiny than standard mechanisms of gaining access to a network.

Evidence: 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

T1566Phishing×1

Adversaries may send phishing messages to gain access to victim systems. All forms of phishing are electronically delivered social engineering. Phishing can be targeted, known as spearphishing. In spearphishing, a specific individual, company, or industry will be targeted by the adversary. More generally, adversaries can conduct non-targeted phishing, such as in mass malware spam campaigns.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

Execution TA0002

T1651Cloud Administration Command×1

Adversaries may abuse cloud management services to execute commands within virtual machines. Resources such as AWS Systems Manager, Azure RunCommand, and Runbooks allow users to remotely run scripts in virtual machines by leveraging installed virtual machine agents.

Evidence: 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

Persistence TA0003

T1078.004Valid Accounts: Cloud Accounts×3

Valid accounts in cloud environments may allow adversaries to perform actions to achieve Initial Access, Persistence, Privilege Escalation, or Defense Evasion. Cloud accounts are those created and configured by an organization for use by users, remote support, services, or for administration of resources within a cloud service provider or SaaS application. Cloud Accounts can exist solely in the cloud; alternatively, they may be hybrid-joined between on-premises systems and the cloud through syncing or federation with other identity sources such as Windows Active Directory.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1098.001Account Manipulation: Additional Cloud Credentials×1

Adversaries may add adversary-controlled credentials to a cloud account to maintain persistent access to victim accounts and instances within the environment.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1098.003Account Manipulation: Additional Cloud Roles×1

An adversary may add additional roles or permissions to an adversary-controlled cloud account to maintain persistent access to a tenant. For example, adversaries may update IAM policies in cloud-based environments or add a new global administrator in Office 365 environments. With sufficient permissions, a compromised account can gain almost unlimited access to data and settings (including the ability to reset the passwords of other admins).

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1098.004Account Manipulation: SSH Authorized Keys×1

Adversaries may modify the SSH <code>authorized_keys</code> file to maintain persistence on a victim host. Linux distributions, macOS, and ESXi hypervisors commonly use key-based authentication to secure the authentication process of SSH sessions for remote management. The <code>authorized_keys</code> file in SSH specifies the SSH keys that can be used for logging into the user account for which the file is configured. This file is usually found in the user's home directory under <code>&lt;user-home&gt;/.ssh/authorized_keys</code> (or, on ESXi, `/etc/ssh/keys-<username>/authorized_keys`). Users may edit the system’s SSH config file to modify the directives `PubkeyAuthentication` and `RSAAuthentication` to the value `yes` to ensure public key and RSA authentication are enabled, as well as modify the directive `PermitRootLogin` to the value `yes` to enable root authentication via SSH. The SSH config file is usually located under <code>/etc/ssh/sshd_config</code>.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1136.003Create Account: Cloud Account×1

Adversaries may create a cloud account to maintain access to victim systems. With a sufficient level of access, such accounts may be used to establish secondary credentialed access that does not require persistent remote access tools to be deployed on the system.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

Privilege Escalation TA0004

T1078.004Valid Accounts: Cloud Accounts×3

Valid accounts in cloud environments may allow adversaries to perform actions to achieve Initial Access, Persistence, Privilege Escalation, or Defense Evasion. Cloud accounts are those created and configured by an organization for use by users, remote support, services, or for administration of resources within a cloud service provider or SaaS application. Cloud Accounts can exist solely in the cloud; alternatively, they may be hybrid-joined between on-premises systems and the cloud through syncing or federation with other identity sources such as Windows Active Directory.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1098.001Account Manipulation: Additional Cloud Credentials×1

Adversaries may add adversary-controlled credentials to a cloud account to maintain persistent access to victim accounts and instances within the environment.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1098.003Account Manipulation: Additional Cloud Roles×1

An adversary may add additional roles or permissions to an adversary-controlled cloud account to maintain persistent access to a tenant. For example, adversaries may update IAM policies in cloud-based environments or add a new global administrator in Office 365 environments. With sufficient permissions, a compromised account can gain almost unlimited access to data and settings (including the ability to reset the passwords of other admins).

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1098.004Account Manipulation: SSH Authorized Keys×1

Adversaries may modify the SSH <code>authorized_keys</code> file to maintain persistence on a victim host. Linux distributions, macOS, and ESXi hypervisors commonly use key-based authentication to secure the authentication process of SSH sessions for remote management. The <code>authorized_keys</code> file in SSH specifies the SSH keys that can be used for logging into the user account for which the file is configured. This file is usually found in the user's home directory under <code>&lt;user-home&gt;/.ssh/authorized_keys</code> (or, on ESXi, `/etc/ssh/keys-<username>/authorized_keys`). Users may edit the system’s SSH config file to modify the directives `PubkeyAuthentication` and `RSAAuthentication` to the value `yes` to ensure public key and RSA authentication are enabled, as well as modify the directive `PermitRootLogin` to the value `yes` to enable root authentication via SSH. The SSH config file is usually located under <code>/etc/ssh/sshd_config</code>.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1548.005Abuse Elevation Control Mechanism: Temporary Elevated Cloud Access×1

Adversaries may abuse permission configurations that allow them to gain temporarily elevated access to cloud resources. Many cloud environments allow administrators to grant user or service accounts permission to request just-in-time access to roles, impersonate other accounts, pass roles onto resources and services, or otherwise gain short-term access to a set of privileges that may be distinct from their own.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

Stealth TA0005

T1078.004Valid Accounts: Cloud Accounts×3

Valid accounts in cloud environments may allow adversaries to perform actions to achieve Initial Access, Persistence, Privilege Escalation, or Defense Evasion. Cloud accounts are those created and configured by an organization for use by users, remote support, services, or for administration of resources within a cloud service provider or SaaS application. Cloud Accounts can exist solely in the cloud; alternatively, they may be hybrid-joined between on-premises systems and the cloud through syncing or federation with other identity sources such as Windows Active Directory.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

Credential Access TA0006

T1528Steal Application Access Token×1

Adversaries can steal application access tokens as a means of acquiring credentials to access remote systems and resources.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1552.001Unsecured Credentials: Credentials In Files×2

Adversaries may search local file systems and remote file shares for files containing insecurely stored credentials. These can be files created by users to store their own credentials, shared credential stores for a group of individuals, configuration files containing passwords for a system or service, or source code/binary files containing embedded passwords.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

T1555.006Credentials from Password Stores: Cloud Secrets Management Stores×2

Adversaries may acquire credentials from cloud-native secret management solutions such as AWS Secrets Manager, GCP Secret Manager, Azure Key Vault, and Terraform Vault.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

Discovery TA0007

T1526Cloud Service Discovery×1

An adversary may attempt to enumerate the cloud services running on a system after gaining access. These methods can differ from platform-as-a-service (PaaS), to infrastructure-as-a-service (IaaS), or software-as-a-service (SaaS). Many services exist throughout the various cloud providers and can include Continuous Integration and Continuous Delivery (CI/CD), Lambda Functions, Entra ID, etc. They may also include security services, such as AWS GuardDuty and Microsoft Defender for Cloud, and logging services, such as AWS CloudTrail and Google Cloud Audit Logs.

Evidence: 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1580Cloud Infrastructure Discovery×2

An adversary may attempt to discover infrastructure and resources that are available within an infrastructure-as-a-service (IaaS) environment. This includes compute service resources such as instances, virtual machines, and snapshots as well as resources of other services including the storage and database services.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

Lateral Movement TA0008

T1550.001Use Alternate Authentication Material: Application Access Token×2

Adversaries may use stolen application access tokens to bypass the typical authentication process and access restricted accounts, information, or services on remote systems. These tokens are typically stolen from users or services and used in lieu of login credentials.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

Collection TA0009

T1114.002Email Collection: Remote Email Collection×1

Adversaries may target an Exchange server, Office 365, or Google Workspace to collect sensitive information. Adversaries may leverage a user's credentials and interact directly with the Exchange server to acquire information from within a network. Adversaries may also access externally facing Exchange services, Office 365, or Google Workspace to access email using credentials or access tokens. Tools such as MailSniper can be used to automate searches for specific keywords.

Evidence: 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

T1213.002Data from Information Repositories: Sharepoint×1

Adversaries may leverage the SharePoint repository as a source to mine valuable information. SharePoint will often contain useful information for an adversary to learn about the structure and functionality of the internal network and systems. For example, the following is a list of example information that may hold potential value to an adversary and may also be found on SharePoint:

Evidence: 2026-11-06/exposed-app-credentials-entra-signins-msp-clients-artex · ATT&CK page ↗

T1213.003Data from Information Repositories: Code Repositories×1

Adversaries may leverage code repositories to collect valuable information. Code repositories are tools/services that store source code and automate software builds. They may be hosted internally or privately on third party sites such as Github, GitLab, SourceForge, and BitBucket. Users typically interact with code repositories through a web application or command-line utilities such as git.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

T1530Data from Cloud Storage×2

Impact TA0040

T1485Data Destruction×1

Adversaries may destroy data and files on specific systems or in large numbers on a network to interrupt availability to systems, services, and network resources. Data destruction is likely to render stored data irrecoverable by forensic techniques through overwriting files or data on local and remote drives. Common operating system file deletion commands such as <code>del</code> and <code>rm</code> often only remove pointers to files without wiping the contents of the files themselves, making the files recoverable by proper forensic methodology. This behavior is distinct from Disk Content Wipe and Disk Structure Wipe because individual files are destroyed rather than sections of a storage disk or the disk's logical structure.

Evidence: 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1490Inhibit System Recovery×1

Adversaries may delete or remove built-in data and turn off services designed to aid in the recovery of a corrupted system to prevent recovery. This may deny access to available backups and recovery options.

Evidence: 2026-09-28/storm-3168-jadepuffer-azure-destructive-service-principal · ATT&CK page ↗

T1496.004Resource Hijacking: Cloud Service Hijacking×1

Adversaries may leverage compromised software-as-a-service (SaaS) applications to complete resource-intensive tasks, which may impact hosted service availability.

Evidence: 2026-11-09/llmjacking-stolen-cloud-keys-enable-model-services-resale · ATT&CK page ↗

Entries about Microsoft Azure (3)

2026-11-09 · view entry permalink →

NOTABLENATOB2

LLMjacking: stolen cloud identities and keys enable managed model services in victim accounts and resell the quota through proxy gateways (GTIG and Mandiant), with control-plane hunting guidance for AWS, Azure and Google Cloud

Mandiant responded to multiple 2026 incidents in which actors hijacked enterprise access to large language models ("LLMJacking") with charges above USD 100,000 in a single day (GTIG, 2026-11-02). The dominant initial access was exposed or stolen cloud identity tokens (IAM credentials, service-account keys, GitHub tokens, session tokens). One actor harvested LLM API keys from public GitHub repositories and validated them with single-token requests that stayed under EDR and SIEM volume alerts; another scripted calls against exposed Ollama endpoints to register its own models; cluster UNC6993 had users paste a raw JSON payload holding an active access token into a fake application-portal page, which bypasses password and MFA (GTIG, 2026-11-02).

After the foothold the actors enumerated cloud services and repositories for credentials, took secrets from cloud secret managers, created unauthorized IAM and service accounts, attached administrative policies to service roles and injected SSH keys into compute instances or instance metadata; one rotated short-lived service accounts to get around rate limits (GTIG, 2026-11-02). In multiple incidents the model services were not enabled at compromise, and the stolen keys were used to enable them and to create further API keys (GTIG, 2026-11-02). A follow-on cluster holding pre-validated virtual keys exploited the victim's LiteLLM gateway at its /key/regenerate endpoint to lift standard virtual keys to proxy-admin credentials (GTIG, 2026-11-02). "LLM Mixers" proxy, aggregate and resell the stolen access; UNC6993 used the open-source new-api and gcli2api gateways (GTIG, 2026-11-02).

Triage: GTIG treats any call that disables model invocation logging, made by a principal outside infrastructure-as-code, as high severity (GTIG, 2026-11-02).

the dominant initial access vector has been exposed or stolen cloud identity tokens

In multiple incidents that Mandiant investigated, LLM services were not enabled at the time of compromise.

Gemini Enterprise Agent Platform inference operations are contained within Data Access logs, which are disabled by default due to volume and ingestion costs.

Google Threat Intelligence Group and Mandiant 2026-11-02

Wiz identified threat actors hijacking Google Cloud Platform (GCP) billing accounts via search-ad phishing to fund unauthorized Gemini API usage.

Wiz

Valid credentials then undergo a separate check for Bedrock access

Datadog Security Labs 2026-10-06

Builds on: An exposed AI API key is a billing incident on a clock: Unit 42 saw one reach a reseller in…

threat09 Nov 03:26Zmulti-sourceOpen finding →

2026-11-06 · view entry permalink →

HIGHupdatedNATOB2

Exposed application credentials: Microsoft sees an agentic framework search GitHub for OAuth and cloud application secrets and then sign in as the applications from 2026-10-28, and Todyl sees an operator use MSP applications to reach 27 organisations, government clients among them

Microsoft reports that since August 2026 threat actors have used the agentic offensive framework ARTEX to submit large volumes of queries to public GitHub for secrets (Microsoft Threat Intelligence, 2026-11-05). As early as 2026-10-28 it saw successful service-principal sign-ins from two IP addresses, one a Tor exit node that may carry unrelated activity, across dozens of applications in several tenants, including a vendor-owned multitenant application whose credential was compromised at the source and used to reach multiple downstream tenants (Microsoft Threat Intelligence, 2026-11-05). Microsoft states that a similar campaign involving the same addresses was also reported by Todyl (Microsoft Threat Intelligence, 2026-11-05).

Todyl, from its managed-detection telemetry, describes one operator who since 2026-11-01 has signed in to MSPs' Microsoft 365 and Azure environments as their own applications with stolen credentials that are still valid: about 45 app registrations at roughly 18 organisations were targeted, more than 33 authenticated, and 27 organisations were reached, among them the MSPs' downstream clients in government (Todyl, 2026-11-03). For nearly every credential the operator requests an Azure Resource Manager token, then a Key Vault token, and within minutes applications that had never been used start authenticating; MSP multitenant and delegated-admin apps and Partner Center tokens reach client tenants, one app sweeping 15 client tenants in about 10-second loops (Todyl, 2026-11-03). Todyl says no Microsoft vulnerability is involved and that it saw no persistence (Todyl, 2026-11-03). Its update of 2026-11-06 assesses the operator as an automated agentic credential crawler and the likely credential source as public repositories or web apps, citing credential scanning from the actor's address before the first sign-in, no sign of earlier compromise and custom-built affected apps (Todyl, 2026-11-03). After its detections fired on 2026-11-03 the operator switched to spoofed browser user agents and replayed users' refresh tokens, all blocked by Conditional Access (Todyl, 2026-11-03).

Triage: the invalid-secret and expired-secret errors alone only show that someone holds an old or wrong credential for the app; Microsoft treats a failure followed by a success as the urgent case (Microsoft Threat Intelligence, 2026-11-05).

Starting in August 2026, Microsoft observed threat actors using an agentic AI offensive framework to submit large volumes of queries to GitHub for secrets.

Sign-in errors AADSTS7000215 (invalid secret) or AADSTS7000222 (expired secret) indicate someone holds a credential for your app; a failure followed by a success is urgent.

Microsoft Threat Intelligence 2026-11-05

Through those apps the actor has reached 27 organizations so far, including the MSPs' downstream clients in government, energy, food and agriculture, transportation, construction and engineering, legal, education and nonprofits.

This activity is an automated, agentic credential crawler: AI-driven tooling that finds exposed secrets, signs in with them, and acts on what it collects with little human direction.

Todyl 2026-11-03
Updaterun 2026-11-08T1309Z-auditbodyevidencesourcing_notesummary

Todyl updated its post on 2026-11-06 after Microsoft's research of 2026-11-05: it says Microsoft's findings match its assessment that the activity is an automated, agentic credential crawler, and it now names public repositories or web apps as the likely source of the stolen secrets, citing credential scanning from the actor's address before the first sign-in, no sign of earlier compromise and custom-built affected apps (Todyl, 2026-11-03). It quotes Microsoft for the GitHub access path and the ARTEX name, and adds that the operator replays harvested material within minutes, in one case signing in as a connector's app about 2.5 minutes after downloading its archive (Todyl, 2026-11-03). Todyl says AI agents using or posting credentials in cleartext on the command line have been the largest contributor to the exposed credentials it has observed, and advises hunting service-principal and non-interactive sign-in logs back to at least 2026-10-28 (Todyl, 2026-11-03).

Builds on: Microsoft: Storm-0940 runs ARTEX at machine speed; Mandiant now sees agent frameworks in… · ConnectWise SkyKick app credential used in 162+ Microsoft 365 tenants; disabling it does not… · CrowdStrike: VAPOR PANDA runs ARTEX against 200+ organisations, European foreign ministries… · Huntress: stolen post-MFA M365 tokens replayed within minutes; a password reset leaves planted… · JPCERT/CC and NICT: attackers decompile the public app, then call internal APIs; AI platforms…

threat06 Nov 03:46Zmulti-sourceOpen finding →

2026-09-28 · view entry permalink →

NOTABLEupdatedNATOB2

Storm-3168 (JADEPUFFER): compromised Azure service principals enumerate a tenant for hours, then an automated burst destroys storage, Key Vault and app resources in about seven minutes

Microsoft Security Research has identified Azure resource-destruction activity it associates with JADEPUFFER, the threat actor Sysdig disclosed in July 2026 as the first documented agentic-ransomware operation, giving the first detailed view into the actor's cloud-native operations under Microsoft's own tracking designation Storm-3168 (Microsoft Security Blog, 2026-09-25). Two compromised service principals belonging to one tenant divided the work: the first spent roughly 15.5 hours running 300+ read-only enumeration calls across virtual machines, subscriptions and resource groups; the second, activated 90 minutes later, ran rapid parallel enumeration across two subscriptions in five seconds, then 16 hours later probed Azure App Service configuration stores and Azure OpenSearch resources, apparently hunting for exposed credentials. Within one second of a failed key-retrieval attempt against a non-existent storage account, the same service principal began a roughly seven-minute destructive sequence: 100+ storage-account deletion attempts, mostly successful, though Azure resource locks and storage-account-level deletion protection blocked deletion for a subset, plus deletion of a Key Vault, Function App and App Service plan belonging to the same resource group. Parallel attempts to delete Azure SQL databases failed only because the actor used an unsupported API version for that resource type. The actor also made repeated, unsuccessful attempts against Azure Site Recovery locks and Azure Backup protection locks, which Microsoft assesses as potentially intending to impair recovery, before pivoting roughly 30 minutes later to 30+ successful Storage-Account ListKeys credential-collection calls, including against Site-Recovery-related accounts, for possible future exfiltration.

Timing evidence drives Microsoft's automation assessment: five unique tokens were issued for the destructive and collection work, with two active during the same 70-second window performing different resource-type deletions in parallel: "the timing between the different operations and the division of work using multiple service principals and overlapping token streams from the same service principal strongly indicates automated or scripted execution" (Microsoft Security Blog, 2026-09-25). No ransom note or confirmed data exfiltration was observed in this specific activity, but Microsoft assesses the destruction, recovery-mechanism targeting and credential harvesting together as consistent with a ransomware/extortion-aligned objective. Microsoft separately notes ongoing probing from Storm-3168-linked infrastructure since the start of the year against multiple Azure App Service customers, targeting WordPress-administration, PHP-CGI and LangFlow code-validation endpoints, but found no App-Service-to-ARM credential path connecting that probing to the tenant affected in this campaign.

Initial access to the compromised service principal is not confirmed: it is "unclear how the service principal was initially compromised," but its client ID, client secret and tenant ID had previously been posted in plaintext in a public GitHub issue by an employee of the affected organization. The issue was later edited to remove the visible secret, but the value remained retrievable through the issue's public edit history; Microsoft states plainly that "removing or redacting an exposed secret does not invalidate it," while also stating it "could not confirm whether this secret was used for the activity described here" (Microsoft Security Blog, 2026-09-25).

Detection and hunting. In Azure Resource Manager audit-log telemetry, the signal is volume and sequencing rather than any single call: dozens to hundreds of deletion or ListKeys operations against storage accounts, Key Vaults and Function Apps within minutes, especially when preceded by hours of broad read-only enumeration from the same or a paired service principal; attempts against Site Recovery or Backup protection locks corroborate the sequence. The python-requests user agent Microsoft observed on both compromised principals (Microsoft Security Blog, 2026-09-25) is a further, if weak, signal worth correlating with the rest of the sequence rather than alerting on alone.

Triage: legitimate infrastructure-as-code teardown and disaster-recovery testing can also delete storage accounts and Key Vaults in bulk, and decommissioning protected resources requires removing their locks first, so a lock-removal attempt corroborates rather than discriminates. The discriminator is the sequence Microsoft's timeline shows: hours of read-only enumeration by one principal, then a bulk deletion burst by a second principal with multiple overlapping tokens performing different destructive operations in parallel, then a credential-harvesting ListKeys sweep (Microsoft Security Blog, 2026-09-25), from principals whose normal call pattern does not include it.

The issue was later edited to remove the secret, but the secret remained accessible through the issue's public edit history. Removing or redacting an exposed secret does not invalidate it; credentials exposed in any public internet location should be treated as compromised and promptly revoked or rotated. We could not confirm whether this secret was used for the activity described here.

The timing between the different operations and the division of work using multiple service principals and overlapping token streams from the same service principal strongly indicates automated or scripted execution.

However, we did not observe a ransom note or confirm successful data exfiltration in the activity described here.

Microsoft Security Blog
Correctionrun 2026-09-30T0639Z-audittitlesummarybodyactionsheadline

Microsoft does not tie the campaign to the GitHub-exposed secret. It lists the secret under possible initial access, says it is unclear how the service principal was initially compromised, and states it could not confirm whether the secret was used (Microsoft Security Blog, 2026-09-25). Resource locks and storage-account deletion protection blocked deletion for a few storage accounts, and the Azure SQL database deletions failed because the actor used an unsupported API version (Microsoft Security Blog, 2026-09-25), so the locks were not the only control that stopped deletions. The headline said one service principal enumerated the tenant and then destroyed resources. Microsoft reports two: one performed reconnaissance and resource discovery, and the other performed discovery, destructive operations and credential collection (Microsoft Security Blog, 2026-09-25). The summary said the actor attempted to disable the Azure Site Recovery and Backup protection locks, and the main text said Microsoft attributes the activity to JADEPUFFER. Microsoft reports multiple unsuccessful deletion attempts against those locks and describes the activity as associated with JADEPUFFER (Microsoft Security Blog, 2026-09-25).

Correctionrun 2026-10-11T1307Z-auditsummarybodyprioritytechniquessectors

Microsoft observed two compromised service principals in the same tenant: "One performed reconnaissance and resource discovery. The other performed discovery, destructive operations, and credential collection" (Microsoft Security Blog, 2026-09-25). Only the first enumerated for about 15 hours and 30 minutes; the second enumerated two subscriptions in five seconds before its destructive burst. Microsoft describes the activity as associated with JADEPUFFER. Removing resource locks is also a step in legitimate decommissioning of protected resources, so the sequence across both principals, not the lock-removal attempt, is what separates this activity from an authorized teardown.

threat28 Sep 04:04Zsingle-sourceOpen finding →

Co-occurring entities

Derived: referenced by the same focused operational entries (weekly summaries and report roundups don't count); ×N counts the shared entries.

Where this entity is cited

  • Threats3

Source distribution

  • microsoft.com2 (33%)
  • cloud.google.com1 (17%)
  • securitylabs.datadoghq.com1 (17%)
  • threats.wiz.io1 (17%)
  • todyl.com1 (17%)