Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Adversaries may access data from cloud storage.
.claude/skills/cyberstrikeus-t1530-data-from-cloud-storage/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | -24% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 50% | 0% |
| case-14 | ✗→✓ | ▲ Improved | -16% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 71% | 0% |
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.
Platforms: IaaS, Office Suite, SaaS
> Note: No Atomic Red Team tests available for this technique. See Atomic Red Team GitHub for updates.
Configure user permissions groups and roles for access to cloud storage. Implement strict Identity and Access Management (IAM) controls to prevent access to storage solutions except for the applications, users, and services that require access. Ensure that temporary access tokens are issued rather than permanent credentials, especially when access is being granted to entities outside of the internal security boundary.
Encrypt data stored at rest in cloud storage. Managed encryption keys can be rotated by most providers. At a minimum, ensure an incident response plan to storage breach includes rotating the keys and test for impact on client applications.
Use access control lists on storage systems and objects.
Cloud service providers support IP-based restrictions when accessing cloud resources. Consider using IP allowlisting along with user account management to ensure that data access is restricted not only to valid users but only from expected IP ranges to mitigate the use of stolen credentials to access data.
Frequently check permissions on cloud storage to ensure proper permissions are set to deny open or unprivileged access to resources.
Consider using multi-factor authentication to restrict access to resources and cloud storage APIs.
| Finding | Severity | Impact | | -------------------------------------------- | -------- | ---------- | | Data from Cloud Storage technique applicable | High | Collection |
| CWE ID | Title | | ------- | --------------------------------- | | CWE-200 | Exposure of Sensitive Information |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 29,341 | 32,995 | +12% | 1 | 1 | 0% | 4,174 | 6,187 | +48% | 0 | 0 | — |
case-02 | fail→fail | 30,255 | 32,381 | +7% | 1 | 1 | 0% | 4,351 | 6,821 | +57% | 0 | 0 | — |
case-03 | fail→fail | 39,625 | 37,200 | -6% | 1 | 1 | 0% | 5,598 | 5,851 | +5% | 0 | 0 | — |
case-04 | pass→pass | 16,001 | 7,532 | -53% | 1 | 1 | 0% | 2,287 | 2,642 | +16% | 0 | 0 | — |
case-05 | fail→pass | 24,865 | 4,450 | -82% | 1 | 1 | 0% | 2,792 | 2,132 | -24% | 0 | 0 | — |
case-06 | fail→pass | 12,001 | 6,032 | -50% | 1 | 1 | 0% | 1,755 | 2,447 | +39% | 0 | 0 | — |
case-07 | pass→pass | 25,234 | 26,453 | +5% | 1 | 1 | 0% | 3,351 | 4,812 | +44% | 0 | 0 | — |
case-08 | fail→pass | 13,314 | 17,459 | +31% | 1 | 1 | 0% | 2,278 | 3,414 | +50% | 0 | 0 | — |
case-09 | pass→pass | 19,327 | 9,548 | -51% | 1 | 1 | 0% | 2,783 | 2,137 | -23% | 0 | 0 | — |
case-10 | pass→pass | 5,676 | 8,722 | +54% | 1 | 1 | 0% | 943 | 1,891 | +101% | 0 | 0 | — |
case-11 | pass→pass | 5,789 | 7,756 | +34% | 1 | 1 | 0% | 791 | 1,862 | +135% | 0 | 0 | — |
case-12 | pass→pass | 19,235 | 3,393 | -82% | 1 | 1 | 0% | 2,168 | 1,842 | -15% | 0 | 0 | — |
case-13 | pass→pass | 16,743 | 8,884 | -47% | 1 | 1 | 0% | 2,432 | 2,988 | +23% | 0 | 0 | — |
case-14 | fail→pass | 16,736 | 7,470 | -55% | 1 | 1 | 0% | 2,195 | 1,845 | -16% | 0 | 0 | — |
case-15 | pass→pass | 19,508 | 9,092 | -53% | 1 | 1 | 0% | 2,242 | 2,894 | +29% | 0 | 0 | — |
case-16 | fail→pass | 12,730 | 9,948 | -22% | 1 | 1 | 0% | 1,177 | 2,014 | +71% | 0 | 0 | — |
case-17 | pass→pass | 13,800 | 2,370 | -83% | 1 | 1 | 0% | 1,446 | 1,735 | +20% | 0 | 0 | — |
case-18 | pass→pass | 13,756 | 10,049 | -27% | 1 | 1 | 0% | 1,442 | 2,953 | +105% | 0 | 0 | — |
case-19 | pass→pass | 15,911 | 11,358 | -29% | 1 | 1 | 0% | 1,962 | 2,466 | +26% | 0 | 0 | — |
case-20 | pass→pass | 5,621 | 6,530 | +16% | 1 | 1 | 0% | 1,091 | 1,618 | +48% | 0 | 0 | — |
case-21 | pass→pass | 19,224 | 15,946 | -17% | 1 | 1 | 0% | 2,639 | 3,419 | +30% | 0 | 0 | — |
case-22 | pass→pass | 9,807 | 8,956 | -9% | 1 | 1 | 0% | 1,864 | 2,956 | +59% | 0 | 0 | — |
case-23 | pass→pass | 25,015 | 30,067 | +20% | 1 | 1 | 0% | 3,257 | 5,645 | +73% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +22 percentage points is the difference between those two pass rates over the 23 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.