# CVE-2016-9964: bottle.py vulnerable to CRLF Injection

Source: https://junglewise.ai/threats/cve-2016-9964-bottle-py-vulnerable-to-crlf-injection  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2016-12-16  
License: CC BY 4.0 with a link back

CVE-2016-9964 · Severity: low · CVSS 3 · Published 2016-12-16

redirect() in bottle.py in bottle 0.12.10 doesn't filter a "\r\n" sequence, which leads to a CRLF attack, as demonstrated by a redirect("233\r\nSet-Cookie: name=salt") call.

Technologies: [bottle (PyPI)](https://junglewise.ai/threats/technologies/bottle). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2016-9964 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2016-9964 being exploited in the wild.

**How severe is CVE-2016-9964?** Low severity, with a CVSS score of 3, published 16 December 2016.

**Which products and versions are affected?** bottle (PyPI) ECOSYSTEM:introduced=0.10.1,fixed=0.12.11, GIT:introduced=0,fixed=6d7e13da0f998820800ecb3fe9ccee4189aefb54|ECOSYSTEM:introduced=0.10.1,fixed=0.12.11.

**Is there a fix for CVE-2016-9964?** Yes. bottle (PyPI): upgrade to 0.12.11 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**Am I affected by CVE-2016-9964?** Check whether you run bottle (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- bottle (PyPI): upgrade to 0.12.11 or later

  ```sh
  pip install "bottle>=0.12.11"
  ```


## Affected products

- bottle (PyPI) ECOSYSTEM:introduced=0.10.1,fixed=0.12.11, GIT:introduced=0,fixed=6d7e13da0f998820800ecb3fe9ccee4189aefb54|ECOSYSTEM:introduced=0.10.1,fixed=0.12.11

## Identifiers

- CVE-2016-9964
- GHSA-j6f7-hghw-g437
- PYSEC-2016-24

## Related threats

- [PYSEC-2022-227 - Bottle before 0.12.20 mishandles errors during early request binding.](https://junglewise.ai/threats/cve-2022-31799-denial-of-service-in-bottle)
- [bottle HTTP Request smuggling](https://junglewise.ai/threats/cve-2020-28473-bottle-http-request-smuggling)
- [Bottle does not properly limit content-types](https://junglewise.ai/threats/cve-2014-3137-bottle-does-not-properly-limit-content-types)
