Potential URI resolution path traversal in the AWS SDK for PHP
Impact
Within the scope of requests to S3 object keys and/or prefixes containing a Unix double-dot, a URI path traversal is possible. The issue exists in thebuildEndpoint method in the RestSerializer component of the AWS SDK for PHP v3 prior to 3.288.1. The buildEndpoint method relies on the Guzzle Psr7 UriResolver utility, which strips dot segments from the request path in accordance with RFC 3986. Under certain conditions, this could lead to an arbitrary object being accessed.
Versions of the AWS SDK for PHP v3 before 3.288.1 are affected by this issue.
Patches
Upgrade to the AWS SDK for PHP >= 3.288.1, if you are on version < 3.288.1.
References
RFC 3986 - [https://datatracker.ietf.org/doc/html/rfc3986](https://datatracker.ietf.org/doc/html/rfc3986#section-5.2.4)
For more information
If you have any questions or comments about this advisory, please contact [AWS's Security team](mailto:aws-security@amazon.com).
Affected versions
| Package | Affected | Fixed in |
|---|---|---|
| aws/aws-sdk-php Product | < 3.288.1 | 3.288.1 |
Details and references
- CVSS 3.1
- CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N
- Severity from
- GitHub (reviewed advisory)
- Weakness
- CWE-22