Cross-source coverage
T1530 / ATT&CK
Data from Cloud Storage
From MITRE ATT&CK 19.2
Adversaries may access data from cloud storage.
Many IaaS providers offer solutions for online data object storage such as Amazon S3, Azure Storage, and Google Cloud Storage. Similarly, SaaS enterprise platforms such as Office 365 and Google Workspace provide cloud-based document storage to users through services such as OneDrive and Google Drive, while SaaS application providers such as Slack, Confluence, Salesforce, and Dropbox may provide cloud storage solutions as a peripheral or primary use case of their platform.
In some cases, as with IaaS-based cloud storage, there exists no overarching application (such as SQL or Elasticsearch) with which to interact with the stored objects: instead, data from these solutions is retrieved directly though the Cloud API. In SaaS applications, adversaries may be able to collect this data directly from APIs or backend cloud storage objects, rather than through their front-end application or interface (i.e., Data from Information Repositories).
Adversaries may collect sensitive data from these cloud storage solutions. Providers typically offer security guides to help end users configure systems, though misconfigurations are a common problem. There have been numerous incidents where cloud storage has been improperly secured, typically by unintentionally allowing public access to unauthenticated users, overly-broad access by all users, or even access for any anonymous person outside the control of the Identity Access Management system without even needing basic user permissions.
This open access may expose various types of sensitive data, such as credit cards, personally identifiable information, or medical records.
Adversaries may also obtain then abuse leaked credentials from source repositories, logs, or other means as a way to gain access to cloud storage objects.
- Tactics
- Collection
- Platforms
- IaaS · Office Suite · SaaS
- Telemetry
-
AWS:CloudTrailAWS:VPCFlowLogsm365:unifiedm365:sharepointazure:signinlogs
How MITRE says to detect it DET0484
Multi-Platform Cloud Storage Exfiltration Behavior Chain
IaaS Analytic 1328
Spike in object access from new IAM user or role followed by data exfiltration to external IPs
AWS:CloudTrailGetObject, CopyObjectAWS:CloudTrailAssumeRoleAWS:VPCFlowLogsUnusual volume of data transferred from S3 storage endpoints to non-corporate IPs
SaaS Analytic 1329
OAuth token granted to external app followed by download of high-volume files in OneDrive/Google Drive
m365:unifiedFileAccessed, FileDownloaded, ConsentGranted
Office Suite Analytic 1330
Internal user account accesses shared links outside org followed by mass file download
m365:sharepointAnonymousLinkCreated, FileDownloadedazure:signinlogsSigninSuccess
panther-labs/panther-analysis
26 rules · 25 families| Detection | Severity | Format |
|---|---|---|
| Kubernetes All Secrets Dumped Across Namespaces | Critical | Panther Python |
| Slack Enterprise Key Management Unenrolled | Critical | Panther Python |
| Snowflake Data Exfiltration 2 variants | Critical | Panther Python |
| Snowflake Data Exfiltration 2 variants | Critical | Panther Python |
| Azure Storage Blob Anonymous Access Enabled | High | Panther Python |
| Azure VM Disk SAS URI Generated | High | Panther Python |
| Databricks Repeated Unauthorized UC Data Requests | High | Panther Python |
| GCS Bucket Made Public | High | Panther Python |
| AppOmni Alert Passthrough | Medium | Panther Python |
| AWS S3 Access IP Allowlist | Medium | Panther Python |
+ 16 more from panther-labs/panther-analysis → showing the 10 highest-severity
elastic/detection-rules
22 rules| Detection | Severity | Format |
|---|---|---|
| AWS CloudTrail Log Updated | High | Elastic TOML |
| Google Workspace Drive Encryption Key(s) Accessed from Anonymous User | High | Elastic TOML |
| M365 SharePoint/OneDrive File Access via PowerShell | High | Elastic TOML |
| AWS EC2 Export Task | Medium | Elastic TOML |
| AWS S3 Bucket ACL Modified to Allow Public Access by New Identity | Medium | Elastic TOML |
| AWS S3 Bucket Policy Added to Allow Public Access | Medium | Elastic TOML |
| AWS S3 Bucket Policy Added to Share with External Account | Medium | Elastic TOML |
| AWS S3 Credential File Retrieved from Bucket | Medium | Elastic TOML |
| AWS S3 Unauthenticated Bucket Access by Rare Source | Medium | Elastic TOML |
| Azure Storage Account Blob Public Access Enabled | Medium | Elastic TOML |
+ 12 more from elastic/detection-rules → showing the 10 highest-severity
splunk/security_content
10 rules| Detection | Severity | Format |
|---|---|---|
| Cisco ASA - Device File Copy Activity | Undefined | SPL |
| Detect GCP Storage access from a new IP | Undefined | SPL |
| Detect New Open GCP Storage Buckets | Undefined | SPL |
| Detect New Open S3 buckets | Undefined | SPL |
| Detect New Open S3 Buckets over AWS CLI | Undefined | SPL |
| Detect S3 access from a new IP | Undefined | SPL |
| Detect Spike in S3 Bucket deletion | Undefined | SPL |
| O365 Exfiltration via File Access | Undefined | SPL |
| O365 Exfiltration via File Download | Undefined | SPL |
| O365 Exfiltration via File Sync Download | Undefined | SPL |
Azure/Azure-Sentinel
8 rules| Detection | Severity | Format |
|---|---|---|
| Users searching for VIP user activity | Low | KQL |
| Cross workspace query anomolies | Undefined | KQL |
| Detect Enumeration Activity Using Unique Identifiers and Session Aggregation | Undefined | KQL |
| New client running queries | Undefined | KQL |
| New ServicePrincipal running queries | Undefined | KQL |
| New users calling sensitive Watchlist | Undefined | KQL |
| New users running queries | Undefined | KQL |
| Query looking for secrets | Undefined | KQL |
Wazuh Core Ruleset
4 rules| Detection | Severity | Format |
|---|---|---|
| Credentials access: Multiple attempts to retrieve EC2 credentials. | High | Wazuh XML |
| Credentials access: Attempt to retrieve EC2 credentials. | Low | Wazuh XML |
| GCP pub/sub topic created. | Low | Wazuh XML |
| GCP pub/sub topic subscription created. | Low | Wazuh XML |
Bert-JanP/Hunting-Queries-Detection-Rules
2 rules| Detection | Severity | Format |
|---|---|---|
| MITRE ATT&CK Mapping | Undefined | KQL |
| OneDrive Sync From Rare IP | Undefined | KQL |
chainguard-dev/osquery-defense-kit
1 rule| Detection | Severity | Format |
|---|---|---|
| Find database exports. Will need tuning based on your table names. | Undefined | osquery SQL |