nuclei-templates/http/misconfiguration/proxy/metadata-aws.yaml

51 lines
1.8 KiB
YAML

id: metadata-service-aws
# This attack abuses a misconfigured proxy that allows access to the metadata
# IP or a name which resolves to the IP. A standard proxy request is made to
# the proxy using the full metadata URL, which the proxy will fulfill to its
# own metadata service.
#
# The proxy may also be vulnerable to host/port enumeration on localhost or
# inside the private network.
info:
name: Amazon AWS Metadata Service Check
author: sullo,DhiyaneshDk
severity: critical
description: The AWS host is configured as a proxy which allows access to the metadata service. This could allow significant access to the host/infrastructure.
reference:
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
- https://blog.projectdiscovery.io/abusing-reverse-proxies-metadata/
- https://www.mcafee.com/blogs/enterprise/cloud-security/how-an-attacker-could-use-instance-metadata-to-breach-your-app-in-aws/
- https://twitter.com/Random_Robbie/status/1268186743657947137
- https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Request%20Forgery#
remediation: Disable the proxy or restrict configuration to only allow access to approved hosts/ports. Upgrade to IMDSv2 if possible.
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N
cvss-score: 9.3
cwe-id: CWE-441
tags: exposure,proxy,aws,amazon,misconfig,metadata
metadata:
max-request: 4
http:
- raw:
- |+
GET http://{{hostval}}/latest/meta-data/ HTTP/1.1
Host: {{hostval}}
payloads:
hostval:
- aws.oast.online
- 169.254.169.254
- 2852039166 # decimal encoding
- 169.254.169.254.nip.io
unsafe: true
matchers:
- type: word
part: body
words:
- "public-ipv4"
- "privateIp"
condition: or