Description
Umbraco is an ASP.NET CMS. In versions 13.0.0 through 13.9.2, 15.0.0 through 15.4.1 and 16.0.0 through 16.1.0, the content delivery API can be restricted from public access where an API key must be provided in a header to authorize the request. It's also possible to configure output caching, such that the delivery API outputs will be cached for a period of time, improving performance. There's an issue when these two things are used together, where caching doesn't vary by the header that contains the API key. As such, it's possible for a user without a valid API key to retrieve a response for a given path and query if it has recently been requested and cached by request with a valid key. This is fixed in versions 13.9.3, 15.4.4 and 16.1.1.
Problem types
CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
Product status
>= 15.0.0, < 15.4.4
>= 16.0.0, < 16.1.1
References
github.com/...co-CMS/security/advisories/GHSA-75vq-qvhr-7ffr
github.com/...ommit/7e82c258eebaa595eadc9b000461e27d02bc030e
github.com/...ommit/9f37db18d11c8ba4e3ecdeb35291af30ebee7cd0
github.com/...ommit/da43086017e1e318f6b5373391d78421efebce3a
docs.umbraco.com/umbraco-cms/reference/content-delivery-api