The package bottle from 0 and before 0.12.19 are vulnerable to Web Cache Poisoning by using a vector called parameter cloaking. When the attacker can separate query parameters using a semicolon (;), they can cause a difference in the interpretation of the request between the proxy (running with default configuration) and the server. This can result in malicious requests being cached as completely safe ones, as the proxy would usually not see the semicolon as a separator, and therefore would not include it in a cache key of an unkeyed parameter.
The product acts as an intermediary HTTP agent (such as a proxy or firewall) in the data flow between two entities such as a client and server, but it does not interpret malformed HTTP requests or responses in ways that are consistent with how the messages will be processed by those entities that are at the ultimate destination.
Link | Tags |
---|---|
https://snyk.io/vuln/SNYK-PYTHON-BOTTLE-1017108 | third party advisory exploit |
https://github.com/bottlepy/bottle | product third party advisory |
https://snyk.io/blog/cache-poisoning-in-popular-open-source-packages/ | third party advisory |
https://lists.debian.org/debian-lts-announce/2021/01/msg00019.html | third party advisory mailing list |