Cloud ransomware rarely involves malware: attackers log in with stolen cloud credentials and use the provider's own features to encrypt objects with a key only they hold, delete snapshots and backups, or wipe SaaS data, and the on-premises ransomware playbook has no steps for any of it. This template gives [Organisation] a response playbook for three cloud scenarios: Amazon S3 objects re-encrypted with customer-provided keys (SSE-C), deletion of snapshots, backups and storage accounts, and mass deletion of SaaS data such as Microsoft 365 or Google Workspace content. How these attacks work and how to prevent them is covered in the Cloud Ransomware Guide; general cloud response is in the Cloud Incident Response Guide. This page is the response runbook for cloud security, identity and backup teams. Replace every [bracketed] placeholder.
How to use this template
- Pick the scenario early: sections 3 to 6 have steps marked [S3], [Snapshot] and [SaaS]. Most real incidents combine at least two: Microsoft's account of Storm-0501 describes exfiltration, deletion of snapshots and backup containers, then encryption with an attacker-controlled key.
- Treat it as an identity incident: every scenario here starts with a valid cloud credential (ATT&CK T1078.004 Cloud Accounts). Containment is mostly about cutting that access, not isolating hosts.
- Act fast on deletion timers: lifecycle rules, soft-delete windows and SaaS retention periods set hard deadlines. Section 3 step 4 records them.
- Run it under the main plan: the ransom decision, law enforcement contact and executive communication follow the Ransomware Playbook Template.
- Owner and review: [Head of Cloud Security], reviewed every [12] months and after any change in cloud provider, backup product or SaaS tenant.
1. Scope and triggers
1.1 Covers [AWS accounts, Azure subscriptions, Google Cloud projects, Microsoft 365 and Google Workspace tenants, other SaaS] owned by [Organisation]. Encryption of virtual machines or hypervisors uses the ESXi Ransomware Playbook or host playbooks.
| Scenario | Trigger signals | ATT&CK v20 |
|---|---|---|
| [S3] Objects re-encrypted with SSE-C | Applications get errors reading objects; CloudTrail data events show PutObject or CopyObject with the x-amz-server-side-encryption-customer-algorithm parameter from an unusual principal; ransom note objects appear | T1486 Data Encrypted for Impact |
| [S3] Lifecycle rule added to expire data | New or changed bucket lifecycle configuration outside change control | T1485.001 Lifecycle-Triggered Deletion |
| [Snapshot] Snapshots, recovery points or backup vaults deleted | Bulk delete events for EBS or RDS snapshots, backup recovery points, Azure Recovery Services items, storage accounts; immutability or resource locks removed | T1490 Inhibit System Recovery; T1485 Data Destruction |
| [Snapshot] Encryption key disabled or deleted | KMS key scheduled for deletion, Key Vault key deleted after new customer-managed key assigned | T1486 Data Encrypted for Impact |
| [SaaS] Mass deletion of mailboxes, sites, drives or users | Spikes in delete events in the Microsoft 365 unified audit log or Google Workspace audit logs; users report missing files | T1485 Data Destruction |
| [All] Data copied out before impact | Large egress from storage, new cross-account replication, bulk downloads | T1530 Data from Cloud Storage; T1537 Transfer Data to Cloud Account |
2. Roles and contacts
| Role | Named owner and deputy | Responsibilities |
|---|---|---|
| Incident Manager | [Name, out-of-band phone] | Declares the incident, owns decisions and the log |
| Cloud Security Lead | [Name per provider] | Credential containment, policy changes, log collection |
| Identity Lead | [Name] | Entra ID, IAM Identity Center, Workspace admin accounts, federation and sync servers |
| Backup and Data Owner | [Name] | Versioning, Object Lock, backup vaults, SaaS backups, restore order |
| SaaS Administrator | [Microsoft 365, Workspace admins] | Tenant-level restores and retention holds |
| Provider support | [AWS, Microsoft, Google support plan and case process] | Provider-side investigation and recovery options |
| Legal and Privacy Lead | [Name] | Notification assessment, extortion handling, evidence custody |
2.1 Use [out-of-band channel] if the collaboration suite may be compromised; Storm-0501 contacted a victim through Microsoft Teams using a compromised account.
3. Detection and triage
- Identify the principal: from CloudTrail, Azure activity logs or SaaS audit logs, find which user, role, access key, service principal or app performed the destructive actions, and from which IP addresses.
- [S3] Confirm SSE-C: object reads fail without a customer key and the data events show the SSE-C algorithm parameter. AWS does not store the customer-provided key, and CloudTrail records only an HMAC of it, so the data cannot be decrypted by AWS or from logs. Recovery depends on earlier object versions or independent copies.
- Find surviving copies: is versioning on, and do prior versions exist? Is there Object Lock, replication to another account or Region, AWS Backup or Azure Backup in a separate account, or third-party SaaS backup?
- Record every deadline:
| Deadline | Source | Window |
|---|---|---|
| S3 lifecycle expiry set by attacker | Bucket lifecycle configuration | As configured (Codefinger used rules expiring within seven days) |
| Deleted SharePoint site | SharePoint admin center, Deleted sites | 93 days; other Microsoft 365 group resources 30 days |
| Google Drive items after a user empties trash | Admin console, Directory, Users, Restore data | 25 days; 20 days after a user account is deleted |
| Deleted Key Vault keys or soft-deleted blobs | Soft-delete settings | [Configured retention] |
| KMS key pending deletion | AWS KMS key state | [Waiting period set at scheduling] |
- 5. Scope exfiltration: check for large GetObject volumes, storage key listing and copy tools, and new external sharing. Assume data theft until disproved; the Ransomware Data Leak Site Listing Playbook covers publication.
- 6. Do not follow ransom note instructions about not changing permissions; the notes in the Codefinger S3 Ransomware 2025 attack warned that changes would end negotiations. Containment takes priority.
4. Containment
Order by priority. Record every change with time and operator.
- Stop the deletion clocks first: [S3] remove attacker lifecycle rules (save a copy as evidence); [Snapshot] cancel pending KMS key deletion and recover soft-deleted Key Vault keys; [SaaS] place retention holds on affected mailboxes, sites and drives.
- Disable the credential: deactivate the access key, disable the user or service principal, revoke sessions and refresh tokens, and remove any credentials the attacker added (T1098.001 Additional Cloud Credentials). See the AWS Access Keys Security Guide.
- Block the technique account-wide: [S3] block SSE-C on affected buckets through the bucket encryption setting (BlockedEncryptionTypes with SSE-C) or deny PutObject requests carrying the SSE-C header in bucket policies or resource control policies; [Snapshot] apply deny policies on delete actions for backup vaults and snapshots to all but the break-glass role; [SaaS] restrict admin roles to the incident team.
- Check the identity plane: look for new admin role assignments, federation or custom domain changes, elevated Azure access, and compromised directory sync servers. The Storm-0501 Hybrid Cloud Attacks 2024 page shows how stolen Entra Connect Sync credentials carried operators from on-premises into the cloud.
- Preserve evidence: export CloudTrail (management and data events), Azure activity and Key Vault logs, and SaaS audit logs to a separate, locked account before retention runs out. See the AWS CloudTrail Guide.
5. Eradication
- Rotate widely: rotate every long-term key, client secret and storage account key that the compromised principal could read, not only the one used. Replace long-term access keys with roles or federated short-lived credentials where possible.
- Remove persistence: unknown IAM users, roles with external trust, cross-account replication rules, new app registrations and OAuth consents, mail forwarding rules, and resources created in unused Regions.
- Re-enable protections the attacker removed: versioning, Object Lock default retention, resource locks, immutability policies, Key Vault purge protection, Defender or GuardDuty protection plans, and logging.
- Confirm the entry point is closed: leaked key in a repository, phished admin, exposed sync server or vulnerable application. Do not restore data into an environment the attacker can still reach.
6. Recovery
| Scenario | Primary recovery route | Checks before declaring success |
|---|---|---|
| [S3] SSE-C re-encryption | Restore prior object versions (the SSE-C write creates a new version when versioning is on), or restore from AWS Backup or replicas in a separate account | Sample objects readable by applications; no further SSE-C writes in data events |
| [Snapshot] Deleted snapshots or backups | Restore from locked copies (Object Lock compliance mode, locked immutability policies, vaults in another account) or from SaaS or third-party backups | Restored workloads pass integrity tests; backup jobs running again into protected targets |
| [Snapshot] Key deleted or disabled | Recover the soft-deleted key or cancel scheduled deletion; otherwise restore from copies encrypted with a different key | Decrypt test on restored data; key policy limited to named roles |
| [SaaS] Mass deletion | Native restores within retention windows (SharePoint Deleted sites, Workspace Restore data), then backup product restores for anything outside them | Owners confirm content; sharing reapplied (Workspace restores require resharing) |
- Restore in business priority order from [critical data list], verifying backup integrity before use (NIST CSF 2.0 RC.RP-03).
- Restore into clean targets: where the account itself is in doubt, restore into a new account or subscription with fresh credentials. See the Cloud Recovery and Clean Room Guide.
- Watch for return: keep heightened alerting on destructive APIs for [30] days.
7. Communication and notification
- Law enforcement and CISA or NCSC: CISA's #StopRansomware guidance asks victims to report incidents; record the reference.
- Regulators: the Privacy Lead assesses personal data impact, for example the GDPR Article 33 72-hour deadline, and sector rules in [list].
- Provider: open a support case early; providers can confirm activity and sometimes help with recovery options.
- Customers and partners: through the main incident process, especially where shared buckets or SaaS data belonged to them.
8. Post-incident review
- How the credential was obtained and why it had destructive permissions.
- Which copies survived and why; which protections had been disabled before impact and how quickly that was detected.
- Time from first destructive API call to detection, containment and full restore.
- Actions: SSE-C blocked where unused, backups in a separate account with immutability, alerts on lifecycle and delete APIs, and this playbook updated within [30] days.
Implementation guidance
Prepare before an incident. Pre-build the alert queries for the trigger table, a break-glass role per provider that can apply deny policies, and a separate log archive account. AWS notes that since April 2026 SSE-C is disabled by default on new general purpose buckets and on existing buckets in accounts without SSE-C objects; check your older buckets.
Rehearse each scenario in a sandbox account: encrypt test objects with SSE-C and restore prior versions; delete a test snapshot and restore from the vault copy; delete a test site and restore it.
| Metric | Target |
|---|---|
| Time to disable the attacking principal after first destructive call | Under [30] minutes |
| Critical buckets with versioning and an independent copy | 100% |
| Backup vaults in a separate account with immutability | 100% for [tier 1] data |
| Scenario rehearsals completed per year | At least one per scenario |
Framework mapping. NIST SP 800-53 IR-4 Incident Handling, CP-9 System Backup and CP-10 System Recovery and Reconstitution; NIST CSF 2.0 RS.MI-01, RC.RP-03 and PR.DS-11; ISO/IEC 27001:2022 Annex A 8.13 Information backup.
References. AWS: Using server-side encryption with customer-provided keys (SSE-C) · AWS Security Blog: Preventing unintended encryption of Amazon S3 objects · AWS: S3 Object Lock · Microsoft Security Blog: Storm-0501's evolving techniques lead to cloud-based ransomware · Microsoft: Restore deleted sites · Google Workspace: Recover deleted files for Drive users · CISA: #StopRansomware Guide
Related NHI Mgmt Group resources: Cloud Ransomware Guide · Cloud Incident Response Guide · Codefinger S3 Ransomware 2025 · Cloud Native Backup and Ransomware Resilience Guide · Ransomware Playbook Template