T1580 Cloud Infrastructure Discovery
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.
Cloud providers offer methods such as APIs and commands issued through CLIs to serve information about infrastructure. For example, AWS provides a DescribeInstances
API within the Amazon EC2 API that can return information about one or more instances within an account, the ListBuckets
API that returns a list of all buckets owned by the authenticated sender of the request, the HeadBucket
API to determine a bucket’s existence along with access permissions of the request sender, or the GetPublicAccessBlock
API to retrieve access block configuration for a bucket.5632 Similarly, GCP’s Cloud SDK CLI provides the gcloud compute instances list
command to list all Google Compute Engine instances in a project 7, and Azure’s CLI command az vm list
lists details of virtual machines.9 In addition to API commands, adversaries can utilize open source tools to discover cloud storage infrastructure through Wordlist Scanning.10
An adversary may enumerate resources using a compromised user’s access keys to determine which are available to that user.1 The discovery of these available resources may help adversaries determine their next steps in the Cloud environment, such as establishing Persistence.8An adversary may also use this information to change the configuration to make the bucket publicly accessible, allowing data to be accessed without authentication. Adversaries have also may use infrastructure discovery APIs such as DescribeDBInstances
to determine size, owner, permissions, and network ACLs of database resources. 4 Adversaries can use this information to determine the potential value of databases and discover the requirements to access them. Unlike in Cloud Service Discovery, this technique focuses on the discovery of components of the provided services rather than the services themselves.
Item | Value |
---|---|
ID | T1580 |
Sub-techniques | |
Tactics | TA0007 |
Platforms | IaaS |
Version | 1.3 |
Created | 20 August 2020 |
Last Modified | 20 April 2022 |
Mitigations
ID | Mitigation | Description |
---|---|---|
M1018 | User Account Management | Limit permissions to discover cloud infrastructure in accordance with least privilege. Organizations should limit the number of users within the organization with an IAM role that has administrative privileges, strive to reduce all permanent privileged role assignments, and conduct periodic entitlement reviews on IAM users, roles and policies. |
Detection
ID | Data Source | Data Component |
---|---|---|
DS0010 | Cloud Storage | Cloud Storage Enumeration |
DS0030 | Instance | Instance Enumeration |
DS0020 | Snapshot | Snapshot Enumeration |
DS0034 | Volume | Volume Enumeration |
References
-
A. Randazzo, B. Manahan and S. Lipton. (2020, April 28). Finding Evil in AWS. Retrieved June 25, 2020. ↩
-
Amazon Web Services. (n.d.). AWS HeadBucket. Retrieved February 14, 2022. ↩
-
Amazon. (n.d.). describe-instance-information. Retrieved March 3, 2020. ↩
-
Amazon. (n.d.). DescribeInstances. Retrieved May 26, 2020. ↩
-
Google. (n.d.). gcloud compute instances list. Retrieved May 26, 2020. ↩
-
Mandiant. (2020, February). M-Trends 2020. Retrieved April 24, 2020. ↩
-
Vasilios Hioureas. (2019, September 13). Hacking with AWS: incorporating leaky buckets into your OSINT workflow. Retrieved February 14, 2022. ↩