Sensitive AWS details exposed due to SSRF
The endpoint appears to be vulnerable to Server Side Request Forgery attack. The original request was replayed by replacing the URI parameter with metadata endpoint provided by AWS. The application responded with 2XX success code and also gave out sensitive AWS information in response.
Server Side Request Forgery (SSRF)
How this template works
The template uses API selection filters to specify the criteria for selecting APIs to test. In this case, the filters are based on the response code, where the code should be between 200 and 204 (inclusive), and the request payload or query parameter should contain the string "http".
The template defines a single request to be executed. It modifies the query parameter and body parameter of the request by replacing the URL key with the metadata endpoint provided by AWS (http://169.254.169.254/latest/meta-data/local-ipv4).
The template specifies the validation criteria for the response. It checks that the response code is between 200 and 299 (inclusive) and that the response payload contains either "ami-id", "ami-launch-index", "ami-manifest-path", "block-device-mapping", or "instance-action". If the validation criteria are met, the SSRF vulnerability is considered to be present.
Frequently asked questions
What is the purpose of the SSRF_ON_AWS_META_ENDPOINT array in this test
How does the test identify if the endpoint is vulnerable to SSRF
What is the impact of successfully exploiting this vulnerability
What are the selection filters used to determine if the test should be executed
How does the test modify the request parameters
What are the validation criteria for a successful test execution