T1552.005 Cloud Instance Metadata API
Sub-technique of: T1552
High-Level Description
Adversaries may attempt to access the Cloud Instance Metadata API to collect credentials and other sensitive data.
Most cloud service providers support a Cloud Instance Metadata API which is a service provided to running virtual instances that allows applications to access information about the running virtual instance. Available information generally includes name, security group, and additional metadata including sensitive data such as credentials and UserData scripts that may contain additional secrets. The Instance Metadata API is provided as a convenience to assist in managing applications and is accessible by anyone who can access the instance. A cloud metadata API has been used in at least one high profile compromise.
If adversaries have a presence on the running virtual instance, they may query the Instance Metadata API directly to identify credentials that grant access to additional resources. Additionally, adversaries may exploit a Server-Side Request Forgery (SSRF) vulnerability in a public facing web proxy that allows them to gain access to the sensitive information via a request to the Instance Metadata API.
The de facto standard across cloud service providers is to host the Instance Metadata API at http[:]//169.254.169.254.
Kill Chain Phase
- Credential Access (TA0006)
Platforms: IaaS
What to Check
- Identify if Cloud Instance Metadata API technique is applicable to target environment
- Check IaaS systems for indicators of Cloud Instance Metadata API
- Verify mitigations are bypassed or absent (3 known mitigations)
- Assess detection coverage (1 detection strategies)
How to Test
Manual Testing
Identify Attack Surface: Determine if the target environment is susceptible to Cloud Instance Metadata API by examining the target platforms (IaaS).
Assess Existing Defenses: Review whether mitigations for T1552.005 are in place. If defenses are absent or misconfigured, this technique may be exploitable.
Execute Test: Use tools and methods described in the MITRE ATT&CK page and external references below.
Note: No Atomic Red Team tests available for this technique. See Atomic Red Team GitHub for updates.
Remediation Guide
M1035 Limit Access to Resource Over Network
Limit access to the Instance Metadata API using a host-based firewall such as iptables.
M1042 Disable or Remove Feature or Program
Disable unnecessary metadata services and restrict or disable insecure versions of metadata services that are in use to prevent adversary access.
M1037 Filter Network Traffic
Limit access to the Instance Metadata API. A properly configured Web Application Firewall (WAF) may help prevent external adversaries from exploiting Server-side Request Forgery (SSRF) attacks that allow access to the Cloud Instance Metadata API.
Detection
Detect Access to Cloud Instance Metadata API (IaaS)
Risk Assessment
| Finding | Severity | Impact |
|---|---|---|
| Cloud Instance Metadata API technique applicable | High | Credential Access |
CWE Categories
| CWE ID | Title |
|---|---|
| CWE-522 | Insufficiently Protected Credentials |