Skip to content
Heist/ feed
Back to feed
Medium

Security advisory

Type: advisorySources: OSVCVE: CVE-2020-7695

Uvicorn before 0.11.7 is vulnerable to HTTP response splitting. CRLF sequences are not escaped in the value of HTTP headers. Attackers can exploit this to add arbitrary headers to HTTP responses, or even return an arbitrary response body, whenever crafted input is used to construct HTTP headers.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2020-7695
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 11:32 UTC · Revision 1

Source evidence

CVE-2020-7695

core-osv · Original source

Published 27 Jul 2020, 12:15 UTC

Uvicorn before 0.11.7 is vulnerable to HTTP response splitting. CRLF sequences are not escaped in the value of HTTP headers. Attackers can exploit this to add arbitrary headers to HTTP responses, or even return an arbitrary response body, whenever crafted input is used to construct HTTP headers.

osv:CVE-2020-7695
Complete source record
{
  "id": "1a13ded7a87ddf90103ab2f650b381616d4ac4b24214a6f76ca27486cd56a42f",
  "url": "https://osv.dev/vulnerability/CVE-2020-7695",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2020-7695",
    "summary": "Uvicorn before 0.11.7 is vulnerable to HTTP response splitting. CRLF sequences are not escaped in the value of HTTP headers. Attackers can exploit this to add arbitrary headers to HTTP responses, or even return an arbitrary response body, whenever crafted input is used to construct HTTP headers.",
    "evidence": "osv:CVE-2020-7695",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2020-7695",
      "aliases": [
        "CVE-2020-7695",
        "GHSA-f97h-2pfx-f59f",
        "PYSEC-2020-151",
        "SNYK-PYTHON-UVICORN-570471"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/Kludex/uvicorn",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "178bee6ef51c79b296ca70a467f00da20dfae712"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:encode:uvicorn:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "0.11.7"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "0.11.6",
            "0.11.5",
            "0.11.4",
            "0.11.3",
            "0.11.2",
            "0.11.1",
            "0.11.0",
            "0.10.8",
            "0.10.7",
            "0.10.6",
            "0.10.5",
            "0.10.4",
            "0.10.3",
            "0.10.2",
            "0.10.1",
            "0.10.0",
            "0.9.1",
            "0.9.0",
            "0.8.6",
            "0.8.4",
            "0.8.3",
            "0.8.2",
            "0.7.2",
            "0.7.1",
            "0.7.0",
            "0.7.0.b2",
            "0.7.0.b1",
            "0.6.1",
            "0.6.0",
            "0.5.2",
            "0.5.1",
            "0.5.0",
            "0.4.6",
            "0.4.5",
            "0.4.4",
            "0.4.3",
            "0.4.2",
            "0.4.1",
            "0.4.0",
            "0.3.32",
            "0.3.31",
            "0.3.30",
            "0.3.29",
            "0.3.28",
            "0.3.27",
            "0.3.26",
            "0.3.25",
            "0.3.24",
            "0.3.23",
            "0.3.22",
            "0.3.21",
            "0.3.20",
            "0.3.19",
            "0.3.18",
            "0.3.17",
            "0.3.16",
            "0.3.15",
            "0.3.14",
            "0.3.13",
            "0.3.12",
            "0.3.11",
            "0.3.10",
            "0.3.9",
            "0.3.8",
            "0.3.7",
            "0.3.6",
            "0.3.5",
            "0.3.4",
            "0.3.3",
            "0.3.2",
            "0.3.1",
            "0.3.0",
            "0.2.22",
            "0.2.21",
            "0.2.20",
            "0.2.19",
            "0.2.18",
            "0.2.17",
            "0.2.16",
            "0.2.15",
            "0.2.14",
            "0.2.13",
            "0.2.12",
            "0.2.11",
            "0.2.10",
            "0.2.9",
            "0.2.8",
            "0.2.6",
            "0.2.5",
            "0.2.4",
            "0.2.3",
            "0.2.2",
            "0.2.1",
            "0.2.0",
            "0.1.1",
            "0.1.0",
            "0.0.15",
            "0.0.10",
            "0.0.14",
            "0.0.13",
            "0.0.12",
            "0.0.11",
            "0.0.9",
            "0.0.8",
            "0.0.7",
            "0.0.6",
            "0.0.5",
            "0.0.4",
            "0.0.3",
            "0.0.2",
            "0.0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-7695.json"
          }
        }
      ],
      "modified": "2026-10-20T10:54:28.861539512Z",
      "provider": "osv",
      "references": [
        "https://github.com/encode/uvicorn",
        "https://snyk.io/vuln/SNYK-PYTHON-UVICORN-570471"
      ],
      "provider_metadata": {}
    },
    "related_cves": [
      {
        "value": "CVE-2020-7695",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 385436,
  "published_at": "2020-07-27T12:15:11.993+00:00"
}